<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<body link="#355491" alink="#4262a1" vlink="#355491" style="background: #e2e2e2; margin: 0; padding: 20px;">

<div>
        <table cellpadding="0" bgcolor="#FFFFFF" border="0" cellspacing="0" style="border: 1px solid #dadada; margin-bottom: 30px; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                <tbody>
                        <tr>

                                <td>

                                        <table border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" style="border: solid 2px #ccc; background: #dadada; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                                                <tbody>
                                                        <tr>
                                                                <td bgcolor="#000000" valign="middle" height="58px" style="border-bottom: 1px solid #ccc; padding: 20px; -moz-border-radius-topleft: 3px; -moz-border-radius-topright: 3px; -webkit-border-top-right-radius: 5px; -webkit-border-top-left-radius: 5px;">
                                                                        <h1 style="color: #333333; font: bold 22px Arial, Helvetica, sans-serif; margin: 0; display: block !important;">
                                                                        <!-- To have a header image/logo replace the name below with your img tag -->
                                                                        <!-- Email clients will render the images when the message is read so any image -->
                                                                        <!-- must be made available on a public server, so that all recipients can load the image. -->
                                                                        <a href="http://community.jboss.org/index.jspa" style="text-decoration: none; color: #E1E1E1">JBoss Community</a></h1>
                                                                </td>

                                                        </tr>
                                                        <tr>
                                                                <td bgcolor="#FFFFFF" style="font: normal 12px Arial, Helvetica, sans-serif; color:#333333; padding: 20px;  -moz-border-radius-bottomleft: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 5px; -webkit-border-bottom-left-radius: 5px;"><h3 style="margin: 10px 0 5px; font-size: 17px; font-weight: normal;">
    Deploy web apps to the cloud using JBoss Deltacloud tools
</h3>
<span style="margin-bottom: 10px;">
    modified by <a href="http://community.jboss.org/people/adietish">Andre Dietisheim</a> in <i>JBoss Tools</i> - <a href="http://community.jboss.org/docs/DOC-16520">View the full document</a>
</span>
<hr style="margin: 20px 0; border: none; background-color: #dadada; height: 1px;">

<div class="jive-rendered-content"><h1>Deploy to any cloud by using Deltacloud Tools</h1><p>If you want to deploy webapps to the cloud you'd actually have to choose what cloud you want to use in a first step. By chance there's Deltacloud that offers a unique common interface to the different cloud providers. With JBoss Deltacloud tools, you'll now even be able to stick to your eclipse and deploy as if your cloud instance was a standard WTP server.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><h1>Preface</h1><p>The current cloud landscape is partitioned amond partitioned among a large amount of different solution providers. All of them offer different features and tools to work with. Deltacloud offers a common interface to a large amount of cloud providers and helps to avoid vendor lock in. Deltacloud, a server application, offers a REST interface and a nice web UI to work with.</p><p>Until now, no Eclipse based tools were available for Deltacloud and you had to switch between your Eclipse and your browser when deploying webapps to a Deltacloud server.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><h1>Solution</h1><p>JBoss Deltacloud tools now offer you Eclipse based tooling that allow you to stick to your favorite IDE while developing and deploying to the cloud. JBoss Deltacloud tools allow you to start and stop instances at will, access them with a terminal and deploy to it as if it was a standard application server running in the wild. The JBoss WTP Server adapter now allows remote deployments to Deltacloud instances in a way you alreday know from legacy deployments.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><h2>Create an account at Amazon EC2</h2><p>We use the Deltacloud server at <a class="jive-link-external-small" href="http://try.steamcannon.org/deltacloud">http://try.steamcannon.org/deltacloud</a>. This deltacloud server runs on EC2 drivers and provides an API to work against EC2 resources. To be able to create instances you'll need a valid EC2 account. </p><p>If you don't have an account so far, you may sign up here:</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><blockquote class="jive-quote"><a class="jive-link-external-small" href="http://aws.amazon.com/" target="_blank">http://aws.amazon.com/</a></blockquote><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><h2>Install JBoss Deltacloud Tools</h2><p>Add the following update site to your software sites:</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><blockquote class="jive-quote"><a class="jive-link-external-small" href="http://download.jboss.org/jbosstools/updates/JBossTools-3.2.0.GA/" target="_blank">http://download.jboss.org/jbosstools/updates/JBossTools-3.2.0.GA/</a></blockquote><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>And install the <strong>Deltacloud Development Tools</strong> that you find in the Cloud cathegory.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p><a href="http://community.jboss.org/servlet/JiveServlet/showImage/11455/update-site.png"><span> http://community.jboss.org/servlet/JiveServlet/downloadImage/11455/update-site.png </span></a></p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><h2>Create a Dynamic Web Project</h2><p>At JBoss we believe in community based approaches. We stick to the Eclipse WTP standard and provide tools that will allow you to deploy <strong>Dynamic Web Project</strong>. Make sure you have such a project ready or create a new one. </p><p>The screencast uses a gwt project that was created with our GWT integration facet. If you want to check it out, you'll have to install it. You may check all details about it on <a class="jive-link-wiki-small" href="http://community.jboss.org/docs/DOC-15794">http://community.jboss.org/wiki/CreateGWTProjectswithJBossToolsandEclipseWTP</a></p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><h2>Create a connection to a Deltacloud server</h2><p>Switch to the Deltacloud perspective and create a new cloud connection. </p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p><a href="http://community.jboss.org/servlet/JiveServlet/showImage/11456/new-connection.png"><span> http://community.jboss.org/servlet/JiveServlet/downloadImage/11456/new-connection.png </span></a></p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>There's a public available deltacloud server that is run by the steamcannon project. You may reach it at </p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><blockquote class="jive-quote"><a class="jive-link-external-small" href="http://try.steamcannon.org/deltacloud">http://try.steamcannon.org/deltacloud</a><br/></blockquote><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>This Deltacloud server runs on ec2 drivers. It offers an interface to interact with amazon EC2. You'll therefore have to provide your EC2 credentials. You may look them up by clicking on both links that are shown below the appropriate fields in the wizard.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p><a href="http://community.jboss.org/servlet/JiveServlet/showImage/11457/ec2-credentials.png"><span> http://community.jboss.org/servlet/JiveServlet/downloadImage/11457/ec2-credentials.png </span></a></p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>You may test your credentials by hitting the test button. </p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p><a href="http://community.jboss.org/servlet/JiveServlet/showImage/11458/connection-test-successful.png"><span> http://community.jboss.org/servlet/JiveServlet/downloadImage/11458/connection-test-successful.png </span></a></p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>The wizard will then inform you if they're fine. </p><p>As soon as you hit finish, you'll get a new connection in your cloud viewer. It will allow you to check the images you may choose and will let you list the instances that you may be already running on EC2.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p><a href="http://community.jboss.org/servlet/JiveServlet/showImage/11459/new-cloud.png"><span> http://community.jboss.org/servlet/JiveServlet/downloadImage/11459/new-cloud.png </span></a></p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><h2>Launch a new instance</h2><p>Now that you have a connection to the Deltacloud server you may launch a new instance on it. You'll find an appropriate entry in the context menu of your cloud.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><h3>Choose an image</h3><p>Give your new instance a name and choose an image to launch. You may choose among the ones that are listed. We used a custom image that was created by the steamcannon project for us. It already has JBoss AS 6 installed to it so that you will be ready to deply web applications to it. Since this custom image is not listed (there's a <a class="jive-link-external-small" href="https://issues.apache.org/jira/browse/DTACLOUD-16">bug</a> in the current Deltacloud server that prevents all images from being listed) you'll have to type it in directly into the appropriate field:</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><blockquote class="jive-quote"><p>ami-ca51a1a3 (32-bit)</p><p>ami-a651a1cf (64-bit)</p></blockquote><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>You'll then have to provide a geographic location to your instance. The so called realm matches the datacenter that will run your instance. There are 4 different locations in the US available to choose among. </p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><h3>Choose a key</h3><p>You'll furthermore have&#160; let you provide a key to interact with amazon ec2. You may create a new one if you hit <strong>Manage</strong> and hit <strong>New</strong> in the upcoming dialog.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p><a href="http://community.jboss.org/servlet/JiveServlet/showImage/11460/manage-keys-1.png"><span> http://community.jboss.org/servlet/JiveServlet/downloadImage/11460/manage-keys-1.png </span></a>$</p><p><a href="http://community.jboss.org/servlet/JiveServlet/showImage/11461/manage-keys-2.png"><span> http://community.jboss.org/servlet/JiveServlet/downloadImage/11461/manage-keys-2.png </span></a></p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>The <strong>SSH</strong> daemon that is installed to the image we use is configured in a way that spares you from creating keys for ssh-connections. It will look up the key you used to launch your instance and authenticate/authorize you on behalf of this key. You'll therefore have to indicate a location to store the key locally. This location should match the directory that is used in the <strong>SSH2 preferences</strong> in Eclipse. Our wizard will store the public part of the key locally and add it to the <strong>SSH private keys</strong>.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p><a href="http://community.jboss.org/servlet/JiveServlet/showImage/102-16520-2-11463/ssh2-preferences.png"><span> http://community.jboss.org/servlet/JiveServlet/downloadImage/102-16520-2-11463/450-177/ssh2-preferences.png </span></a></p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>The ssh subsystem in the <strong>RSE</strong> (Eclipse Remote System Explorer) will then be able to pick it and use it when connecting to your instance with the <strong>SSH shell</strong> that is build in.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>You may of course also create your key manually in the <strong>aws console</strong>. You will then have to download your key. You'll then have to add it to your <strong>Private keys</strong> manually.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><h3>Select a hardware profile</h3><p>The last step in configuring your instance involves choosing a hardware profile. The profiles differ in the hardware equipment that you'll get for your instance. The smallest one - <strong>t1.micro</strong> - is available free of charge. It wont cost you a single penny to run a micro instance on ec2. If unfortunately has not enough memory to <strong>run JBoss AS smoothly</strong>. Choose at least <strong>t1.small</strong> which has a fair amount of 1.7 GB memory.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p><a href="http://community.jboss.org/servlet/JiveServlet/showImage/102-16520-2-11464/launch-instance-1.png"><span> http://community.jboss.org/servlet/JiveServlet/downloadImage/102-16520-2-11464/450-423/launch-instance-1.png </span></a></p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><div class="mcePaste" id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;"><span></span></div></div>

<div style="background-color: #f4f4f4; padding: 10px; margin-top: 20px;">
    <p style="margin: 0;">Comment by <a href="http://community.jboss.org/docs/DOC-16520">going to Community</a></p>

        <p style="margin: 0;">Create a new document in JBoss Tools at <a href="http://community.jboss.org/choose-container!input.jspa?contentType=102&containerType=14&container=2128">Community</a></p>
</div></td>
                        </tr>
                    </tbody>
                </table>


                </td>
            </tr>
        </tbody>
    </table>

</div>

</body>
</html>