http://www.perlmonks.org?node_id=735895

Krambambuli has asked for the wisdom of the Perl Monks concerning the following question:

Dear monks,

searching for a good approach to get a start with Amazon EC2, I found so far Capistrano and Net::Amazon::EC2 - with Capistrano looking far better at first sight for getting things done.

The problem: Capistrano is much more Ruby than I'd want.

Question: are there any other, more Perlish approaches available ?

Many thanks in advance.

Krambambuli
---

Replies are listed 'Best First'.
Re: Grid computing & Amazon EC2
by marto (Cardinal) on Jan 13, 2009 at 13:22 UTC
Re: Grid computing & Amazon EC2
by kyle (Abbot) on Jan 13, 2009 at 13:37 UTC

    At YAPC::NA 2008, I attended a talk by Timothy Appnel where he discussed Amazon's cloud computing and the Perl support for it. That was last summer.

    My recollection is that there's support for the various Amazon offerings, but they all have their own interfaces, and they overlap in a few areas. What's needed is a unified module with a consistent interface for everything. Amazon-Bezos was supposed to be that, but I see it hasn't changed since summer, and it's still labeled a prototype. Still, it might be a good place to start looking.

    I recall the author saying that he could use some help with the project. If you have some spare time, you could make a name for yourself bringing the might of Amazon to Perl.

Re: Grid computing & Amazon EC2
by Anonymous Monk on Jan 13, 2009 at 13:11 UTC
    Check out puppet. Unfortunately it's also written in Ruby, but it's a more complete solution with many recipes available.
Re: Grid computing & Amazon EC2
by esh (Pilgrim) on Jan 14, 2009 at 06:22 UTC

    It might help if you explained more what you are trying to accomplish. Capistrano and Net::Amazon::EC2 don't do at all the same thing.

    Are you wanting to use Perl to start and stop Amazon EC2 instances? Then your options are to use Net::Amazon::EC2 or to run the EC2 API command line tools from inside a Perl program.

    If you're looking for ways to configure new Linux boxes using software based on Perl, then that has very little to do specifically with EC2. Since Amazon EC2 instances are running various Linux distros and you have root access, you can use any system configuration software which runs on Linux, including Capistrano.

    -- Eric Hammond

      I want to split the burden of processing a huge file of data over a number of instances. Basically, split the starting file in parts, give each instance a part to work upon, then collect and (re-)assemble the result data when it becomes available. The parts can be processed independently one of each other, it's basically a validation.

      I have something similar working fine with forks - but I'd want to check how it does when splitting the job over a number of different machines.

      The take-that/give me what you've done part is where I'm looking for solutions, as I'm unsure about how to communicate with the (remote) processes that do there work on the launched instances.

      Thanks.

      Krambambuli
      ---
        The take-that/give me what you've done part is where I'm looking for solutions, as I'm unsure about how to communicate with the (remote) processes that do there work on the launched instances.

        I've used Amazon's own messaging service for this with success - that's its intended use AFAIR.

        HTH!