G-Eclipse/AWS Cloud Getting Started
Here you find the meta data about the AMI Images in order to run the examples. These data are updated frequently by the g-Eclipse team.
|Instance Type||>= m1.small (32 bit)|
- If you are using Cloud Computing services provided by Amazon, you need to get an account there. The account itself is free of charge, but you have to pay with your credit card for the services that you are using. You can sign up for an account on this web portal: aws.amazon.com
- In order to use your account for a certain service (e.g. the storage service S3, or the computing service EC2) you have enable your account for each particular service and activate it in the portal above.
- For authentication and authorization against the AWS web services, g-Eclipse uses the Access Key ID and the Secret Access Key. Both can be obtained from the portal above in the Access Identifiers section.
And how do I start?
- Any Eclipse 3.4 will do as a starting point. If you want to start with the bare minimum, download an Eclipse Platform archive from download.eclipse.org/eclipse/downloads
- Use p2 to install the g-Eclipse features by adding http://download.eclipse.org/technology/geclipse/updates/1.0/ as repository URL
- g-Eclipse (Incubation) - this is the main feature and always required
- g-Eclipse Amazon Webservice Integration - this feature contains the connection layer that is required to access AWS plus some additional components
- Re-start Eclipse and switch to the g-Eclipse (User) perspective (important!)
Create a new Grid project
- Select New > Grid Project
- In the wizard, enter the name of the project, e.g. 'AWS Project'
- On the next wizard page you need to create a VO. The concept of a Virtual Organization (VO) is one of the central pieces in g-Eclipse. Creating a VO is pretty straightforward: Click on 'Edit VOs...', choose 'add', select 'AWS VO' (obviously this is the type of VO that we want to use), give it a name (e.g. ('My AWS VO') and enter your AWS Access ID (see Prerequisites above).
- Now you can press Finish and let the wizard create your Grid project.
After the initial setup and the Grid project creation you can start browsing your newly created project. In the Grid Projects View on the left you will find some directories that the wizard created for you, plus an additional virtual folder that represents your VO. Depending on your Grid middleware (in our case it is the AWS Cloud), you will find different nodes within this folder. In any case, you will find
- Computing - that lists the currently running virtual computers, i.e. EC2 instances
- Services - a list of additional services, such as Images that represent AMI's (comparable to a raw disk image with some meta data that can be instantiated), Elastic IPs, Keypairs that are used to access a newly started image by SSH, Security Groups that act as a simple firewall.
- Storage - with a subfolder S3 that gives you access to the storage service and lets you mount and create S3 buckets
The first time that you are opening the subfolders in the VO-tree, you will be asked to authorize yourself and to create an authentication token. g-Eclipse automates this process and asks you for your Secret Access Key.
...work in progress
Install and Run an OSGi Example
- create keypair
- create some additional security groups that allow connections to other ports than 22/SSH (required: 80 for the tomcat, and 8021 for telnetting to the OSGi console of the image below - possible security hole!)
- start an image (AMI ID: ami-ff46a796 - 32bit Linux image, >= Small (m1.small) )
- create launch configuration
- use keypair
- add security groups
- add private key to SSH configuration!
- use g-Eclipse SSH Terminal and login as root
- the Tomcat
- is listending on port 8180 but gets redirected to port 80 via iptables
- /var/lib/tomcat5.5 is the directory to go
- in /var/lib/tomcat5.5/webapps/ROOT/WEB-INF/... lives the Equinox Servlet Bridge
- serves the p2 repository for the RAP demonstration application as well
- the OSGi console
- can be accessed with "telnet localhost 8021"
- you can use the standard commands including p2 specific commands to hot-deploy new applications
- provlr, provlar, provlp, provlg are quite handy
With these commands you can add the p2 repositories for the demo application
provaddrepo http://localhost/clouddemo provaddartifactrepo http://localhost/clouddemo provaddrepo http://download.eclipse.org/eclipse/updates/3.5/R-3.5.1-200909170800 provaddartifactrepo http://download.eclipse.org/eclipse/updates/3.5/R-3.5.1-200909170800
What can be installed?
Into which profile
Now: hot deploy something!
provinstall eu.geclipse.clouddemo.feature.group 126.96.36.199910112132 profile confapply
Unfortunately there is currently a problem with this demo application that requires a restart of the Tomcat before it can be accessed.
Now you can access the new running Equinox application by using your webbrowser: