Chapter 1. Amazon EC2 Tutorial
Abstract
This tutorial explains how to get started in the cloud using Amazon's Elastic Compute Cloud (EC2) and FuseSource's Fabric technology. Fuse Fabric makes it possible to provision containers in the cloud rapidly and easily.
1.1. Overview of the Tutorial
Basic technologies
This Amazon EC2 tutorial is based on the following technology stack:
- Amazon Web Services (AWS) EC2—Amazon's Elastic Compute Cloud provides puts a variety of hardware and operating systems at your disposal, including Red Hat, Ubuntu, SUSE, and Windows. Operating systems are made available as Amazon Machine Images (AMIs).
- Red Hat Enterprise Linux O/S—we use a RHEL 6.0 AMI for this tutorial, which is available in Amazon's free usage tier.
- JDK 1.6—the Java software is automatically installed by Fuse Fabric, after a compute instance is created.
- Red Hat JBoss Fuse OSGi container—the container runtime is automatically installed by Fuse Fabric.
- Fuse Fabric—provides the infrastructure for creating, configuring, and administering a collection of containers in the cloud.
- Profiles—a Fuse profile is the natural way to package your applications in the context of Fuse Fabric. A profile consists of a collection of OSGi bundles and Karaf features. When a profile is deployed, the specified components are downloaded from Maven repositories and installed into the container.
JClouds library
JClouds is an open-source library that enables you to administer cloud providers remotely. It provides modules for communicating with a great variety of cloud providers. FuseSource supports only the Amazon and Rackspace providers, however, which can be accessed by installing the following JClouds features in your container:
jclouds-aws-ec2 jclouds-cloudservers-us jclouds-cloudservers-uk
Fabric commands
The Fabric commands provide another layer on top of the JClouds library, providing commands that integrate container administration and cloud administration. You can get access to the Fabric commands by installing the following Karaf features into your container:
fabric-jclouds fabric-commands
Tutorial steps
To get started with provisioning containers in Amazon EC2, perform the following steps: