Skip to main content
Jump to: navigation, search

EclipseRT for Amazon EC2

Revision as of 23:10, 16 March 2010 by (Talk | contribs) (Using the OSGi console)


The EclipseRT can be run as a lightweight application server on Amazon's EC2 service. Using the EclipseRT 3.6 development stream (currently on Milestone 5, with target release called Helios), an Amazon Image (AMI) was created using the most recently available build of the Equinox project, as well as Jetty 7.0.1 web server and the p2 provisioning platform.

Using the Amazon Image

This Amazon Image is a Community AMI, meaning that any EC2 user can retrieve/use this AMI to launch an EC2 instance.

AMI ID: ami-69d93600
Manifest: eclipsert/osgi_eclipsert36_20100311_jetty_linux_x86.manifest.xml

See the AWS management console to launch instances, and then within the Community AMI tab, simply search for 'osgi' and select the AMI ID: ami-69d93600.

Starting the Jetty Server

Once the instance has been created and is running (as indicated by the AWS console), ssh to your new EC2 instance as described by the EC2 management console documentation. Be sure to login as root.

Once in the unix shell, type the following:

cd /env/osgi_eclipsert36_sb_p2_jetty_7_0_1_linux_x86/jetty-distribution-7.0.1.v20091125

Once in this directory, to start the eclipsert server, simply type


to start the Jetty server. You will see output to the console something like this

2010-03-11 16:11:29.189:INFO::Logging to StdErrLog::DEBUG=false via org.eclipse.
2010-03-11 16:11:29.446:INFO::jetty-7.0.1.v20091125
2010-03-11 16:11:29.568:INFO::Deploy /env/osgi_eclipsert36_sb_p2_jetty_7_0_1_lin
ux_x86/jetty-distribution-7.0.1.v20091125/contexts/eclipsert36.xml -> WebAppCont
2010-03-11 16:11:29.628:INFO::Extract jar:file:/env/osgi_eclipsert36_sb_p2_jetty
k.x86.war!/ to /tmp/Jetty_0_0_0_0_8080_eclipsert36.linux.gtk.x86.war____hjvowd/w
2010-03-11 16:11:30.218:INFO::NO JSP Support for /, did not find org.apache.jasp


Note the OSGi console prompt. You may issue OSGi console commands into the running OSGi server via this prompt.

Included with this server is very simple example 'Hello World' application, and you can access this application on your EC2 instance by browsing to:

http://<your EC2 instance's public dns address>:8080/hello

For example, here is an EC2 instance running this application

This should result in an EclipseRT Hello World! page. On the page is some basic OSGi information about the Hello World application, along with a link to other EclipseRT pages, and a link to the source code for the Hello World application.

Using the OSGi console

By entering OSGi console commands into the osgi> prompt, you can examine and manipulate the state of the server as it is running. To get a listing of all of the supported console commands type:

osgi> help

Note that with the OSGi console, you may stop and start bundles. The Hello World application, for example reports it's Bundle Id on the output page, and so may be stopped and started from the OSGi console:

osgi> start <Bundle Id Value>


osgi> stop 41

If you then refresh the browser with this page, the page will no longer be available. But if you then start this application again:

osgi> start 41

and then refresh, the page will be accessible once again.

Back to the top