A Beginner's Guide to running a JumpBox on Amazon's EC2 service

Look at your watch.

Fifteen minutes from now you could be running any of the JumpBoxes that are now available as public beta AMI's on Amazon's EC2 service. As the least technical person in our office, I've known what EC2 is in the abstract sense for awhile now. Let me say it was extremely satisfying to finally fire up a JumpBox on EC2 and see how that service works first hand. I took screenshots of the entire process start to finish (which took just under 15min) in order to share here for anyone else who might be as daunted by EC2 as I was.

It should be noted that EC2 as a web hosting mechanism has some flaws (no persistent disk storage so if you're node dies you can lose data not to mention your app can come back up under another IP address and disappear from its domain- this is not a hosting substitute for critical apps at this point). But this is a very slick way to get a public instance of a JumpBox running quickly for a non-critical application. It's perfect for a scenario where you need to evaluate an application with a distributed team or proof a job for a remote client.

Here are the steps that I took to get the MarKamp.org wiki working yesterday:

  • First you'll need to setup an account on Amazon Webservices if you don't already have one. Go to aws.amazon.com, complete their application process and specify your payment details.


  • Next you have to enable the EC2 (Elastic Compute Cloud) and S3 (Simple Storage) services for your account.


  • Now you need to find out what your AWS credentials are.


  • Copy your Access Key ID and your Secret Access Key to some place where you can get them later.


  • I put mine in Textedit temporarily.


  • You'll need to install Firefox and launch it if you're not already using it. Go get the Elastic Fox extension from Amazon's site.


  • Once you have this extension installed go to the Tools menu and launch it.


  • This is the main dashboard that shows you what's available and which instances you have running. You'll need to tell it how to access your AWS account. Click the "Credentials" icon in the upper-left.


  • Pick a name to refer to this account in Elastic Fox and enter those credentials that you stored in your text editor.


  • Now when you go back to the dashboard and click the "refresh" icon in the AMI panel, you should see every public AMI that's available to you.


  • We're only concerned about JumpBoxes so let's filter this list by entering "jumpbox-amis" in the filter area. When you click refresh you should see the four JumpBoxes that we currently make available.


  • Now we need to setup a security policy that allows our JumpBox to communicate over the ports it needs. Navigate to the "Security Groups" tab. We could create a new group if we using this EC2 account for multiple projects and wanted to isolate the JumpBox-related stuff. For now we'll just configure the default group to do what we want- click the green checkmark to add a new rule.


  • The three ports we need to open up are 22 (for ssh), 80 (for web) and 3000 (for the administrator). Leave everything as the default and enter the port info. We'll need to do a rule for each port.


  • Go back to the "AMI's and Instances" tab and launch whichever JumpBox you want to use by highlighting it and clicking on the "power button" icon.


  • It will bring up this scary-looking dialogue. If you're using the default security group like we are you can ignore everything and click "Launch."


  • Refresh the "Your Instances" panel and you should see your running EC2 instance. Grab the right edge of the Status header and drag it to the right so you can read the status.


  • When it's finished booting it should turn green and switch to "Running." Right-click on it and copy it's public DNS name to your clipboard.


  • Now paste this into a web browser and you should get an SSL warning on first load- click OK.


  • This screen should look familiar if you've ever booted a JumpBox. Complete the configuration info as you normally would and click "Configure."


  • It will think for a minute and give you the success screen once it's finished. Click on the long address to access your application.


  • Your instance is running! It's perfectly acceptable to use the application at this point but you may want to run it under a more friendly URL. Go back to the admin.


  • Click on the "Network" icon.


  • The public address you see is the URL you're currently using to refer to your application. You'll notice that it's composed of four sets of numbers separated by dashes. Copy this segment of the sequence.


  • Paste it into your web browser, substitute dots for the dashes and you'll find that this happens to be the public IP address of your JumpBox. At this point you'll need to go to your domain registrar and change the "A Record" on the domain you wish to use to point to this IP address. If you need help with these steps search the help docs on your domain registrar for "DNS A Record." For GoDaddy you access this by clicking on "My Domains," choosing the domain in question and clicking "Total DNS Control."


  • Come back to the hostname panel in your admin and specify the domain you wish to use as the public address.


  • You may need to wait a bit for DNS to propagate but you should very soon after be able to access your JumpBox in a browser under this domain.
  • Congratulations! You now have a public instance of your JumpBox running on EC2 under your own domain. Two things to keep in mind:
    -You'll want to make sure you configure automatic backups to S3 if you're using it for any application where you care about the data.
    -Remember EC2 bills based on usage - don't leave town with an instance running that you forgot about or you will come back from vacation with an unpleasant bill from Amazon. It costs roughly $72/mo + minor bandwidth charges to host a site on EC2 24/7.

    At this point you can do various cool things like work offline on your laptop to to add data to your application and then use the backup/restore features to inject these changes into your public EC2 instance. We'll cover more of these techniques in future posts. For now, have fun tinkering with EC2!

    Welcome our newest team members: David and Tom

    Everyone give a big welcome to our two newest team members at JumpBox, David and Tom.

    Their trading cards read as follows:

    David is the reason you see so few bugs in our products. He's the Q & A master who puts each app through its paces to ensure it's squeaky clean and free of any annoyances. David's been working contract for us for a few months and just recently joined us full-time. David reads more books than most lawyers do and we're told the Library of Congress now pales in comparison to the shelves in his den alone. Read more from David on Twitter.

    Tom joins JumpBox today bringing a wealth of software engineering and architecture knowledge. In his former life, Tom had worked with Kimbro to write an entire native XML database engine from scratch (dbXML). Tom is the guy who will be responsible for advancing the capabilities of the JumpBox platform and performing (what will appear to the rest of the world as) software magic. Tom is an active local musician in Phoenix and plays in a local post-punk band called "Glamour Shot." Read more from Tom on his blog.

    We're looking forward to David's continued merciless bug squashing and Tom's software super powers to make the JumpBox experience even better for you, our users.

    Startup Weekend and Code Camp this weekend

    Just a headsup of two excellent events happening this weekend (we're fortunate to be a sponsor of both):

    1. If you happen to be in Memphis, check out Startup Weekend Memphis. These weekends are whirlwind rides where you meet a ton of people from your industry, break into functional teams and deliver working projects by the end of the weekend essentially condensing the first year of a startup into a single weekend. We sponsored the Portland event last weekend and it sounds like they had a blast and created some interesting stuff. We'll be watching their blog and be interested to see what the Memphis folks come up with.
    2. The other one we're sponsoring this weekend is Desert Code Camp in Phoenix, AZ. If you're anywhere in Phoenix Metro tomorrow and you write code, you'd be silly to miss this free event. It's an all-day affair packed with multiple tracks of informative sessions on programming languages, language=agnostic phenomena and general tactics that make life better for people that write software. I'll be facilitating a round table on (of course) tactics for using virtualization as a developer and specifically using virtual appliances to setup instant open source dev infrastructure.

    Having attended both events in the past I can vouch that they're worth the time for the social component of connecting with people in your industry. Plus you'll walk away with a ton of actionable things you can apply the next day to improve your skillset. We're proud to be affiliated with both of these and have a small role in helping make them possible.

    Nagios & MySQL Betas available and Proving Grounds now public

    We have two new beta JumpBoxes available in the Proving Grounds:

    Nagios is a network monitoring system that watches your network and notifies you of any problems. The JumpBox makes it really easy to get it running. Due to the nature of Nagios, configuration still requires additional work, but the JumpBox gives you a good jump start on the process.
    MySQL is the worlds most popular Open Source database. It's a core component of many systems and the JumpBox for MySQL provides a very quick way to get a MySQL instance complete with PHPMyAdmin running.

    Both are based on the JumpBox platform 1.1 Beta and include all the great new enhancements described here.

    The other exciting news is that we've opened the Proving Grounds up to the public. You'll notice there's now a link at the upper right corner of this site which takes you to our testing community. The Proving Grounds is the place where we make pre-release JumpBoxes available for testing before moving them to production status. We've got a ton of interesting candidates in the pipeline so be sure to check out the Proving Grounds for the latest and greatest.

    Introducing JumpBox Open

    We have some exciting news today- you can now get a license for every JumpBox currently in our Open Source collection for just $199.99. With twenty applications in the collection today, this is a toolkit of incredible value. But this is also a gift that keeps on giving. JumpBox Open entitles you to a license for every new JumpBox we add to the collection over the next year. And we're adding some great applications soon: Nagios, Moodle, Redmine, MySQL and a Ruby on Rails deployment JumpBox are all in the pipeline.

    Think of it like this: if your time is worth $50/hr, a single JumpBox that saves you four hours today pays for the entire subscription. Then you have (Jeff Spicoli voice) "an ultimate set of tools" for the next year. Have a particular application you'd like to see added? Suggest it in the forums or via our contact form. We're committed to making great Open Source applications more accessible and the debut of JumpBox Open should be a great step towards that goal. Keep in mind that the $199.99 pricing is introductory though so take advantage of it while it lasts.

    Archive of the webinar with Virtual Iron

    If you missed the webinar we did with Virtual Iron earlier this week, there's an archived version available here. It's a 30min webex presentation with the first half explaining the virtualization piece (specifically Virtual Iron in this case) and the second half talking about the JumpBox piece with a full walk-through of the process setting up the Alfresco JumpBox start to finish. Big thanks to Chris Barclay and the folks at Virtual Iron for inviting us to participate.

    4 new production JumpBoxes, 7 new betas


    We have our first graduates of the Proving Grounds:

    are all now battle-tested and available for production use and purchase. Thanks to all the Proving Grounds members who submitted feedback and helped us work out the kinks in these apps.

    We also have seven new applications that just entered the Proving Grounds:

    We've made some of the pre-release apps available to the public for download but to get beta keys to unlock the pre-release apps you'll need to belong to the Proving Grounds. And there will always be a few apps that we keep exclusive to PG members.

    We're also running a promotion right now - all JumpBox Basic Registrations are $24.99 until noon MST on December 14th, so if you were on the fence about registering yours, now's the time.

    Lastly, we're doing a webinar with the folks from Virtual Iron in an hour (11am PST today). The presentation will be captured and available online afterwards but if you'd like to participate and ask questions, tune in here.

    Trac Presentation from the San Diego Java Group

    Here's a video that may be of interest for anyone using the JumpBox for Trac. This is a presentation I did on Tuesday night for the San Diego Java User Group. We talk about what contributes to effective project management, the qualities of a good proj mgmt tool and then use Trac in a real scenario to demonstrate how it works. Big thanks to Paul Webber of the SDJUG for allowing me to speak to his group.

    JumpBox featured as "launch of the day" on Spigit

    We're on the homepage of Spigit today featured as their "launch of the day." Spigit is a veritable "fantasy league for startup ideas" and a neat way to test the waters for the general acceptance and interest around an idea. Special thanks to Joe for featuring us.

    Tour the JumpBox office

    The folks over at Office Snapshots just did a piece on us.

    Syndicate content