mirror of
				https://github.com/apache/cloudstack.git
				synced 2025-11-04 00:02:37 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			110 lines
		
	
	
		
			6.1 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
			
		
		
	
	
			110 lines
		
	
	
		
			6.1 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
<?xml version='1.0' encoding='utf-8' ?>
 | 
						|
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
 | 
						|
<!ENTITY % BOOK_ENTITIES SYSTEM "cloudstack.ent">
 | 
						|
%BOOK_ENTITIES;
 | 
						|
]>
 | 
						|
 | 
						|
<!-- Licensed to the Apache Software Foundation (ASF) under one
 | 
						|
 or more contributor license agreements.  See the NOTICE file
 | 
						|
 distributed with this work for additional information
 | 
						|
 regarding copyright ownership.  The ASF licenses this file
 | 
						|
 to you under the Apache License, Version 2.0 (the
 | 
						|
 "License"); you may not use this file except in compliance
 | 
						|
 with the License.  You may obtain a copy of the License at
 | 
						|
 
 | 
						|
   http://www.apache.org/licenses/LICENSE-2.0
 | 
						|
 
 | 
						|
 Unless required by applicable law or agreed to in writing,
 | 
						|
 software distributed under the License is distributed on an
 | 
						|
 "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 | 
						|
 KIND, either express or implied.  See the License for the
 | 
						|
 specific language governing permissions and limitations
 | 
						|
 under the License.
 | 
						|
-->
 | 
						|
 | 
						|
<section id="aws-ec2-configuration">
 | 
						|
    <title>Enabling the EC2 and S3 Compatible Interface</title>
 | 
						|
 | 
						|
    <para>The software that provides AWS API compatibility is installed along with &PRODUCT;. You must enable the services and perform some setup steps prior to using it.
 | 
						|
    </para>
 | 
						|
    <orderedlist>
 | 
						|
        <listitem id="set-global-config"><para>Set the global configuration parameters for each service to true. 
 | 
						|
                  See <xref linkend="global-config" />.</para></listitem>
 | 
						|
        <listitem><para>Create a set of &PRODUCT; service offerings with names that match the Amazon service offerings.
 | 
						|
                  You can do this through the &PRODUCT; UI as described in the Administration Guide.</para>
 | 
						|
                  <warning><para>Be sure you have included the Amazon default service offering, m1.small. As well as any EC2 instance types that you will use.</para></warning>
 | 
						|
        </listitem>
 | 
						|
        <listitem><para>If you did not already do so when you set the configuration parameter in step <xref linkend="set-global-config"/>, restart the Management Server.</para>
 | 
						|
                  <programlisting># service cloudstack-management restart</programlisting>
 | 
						|
        </listitem>
 | 
						|
    </orderedlist>
 | 
						|
    <para>The following sections provides details to perform these steps</para>
 | 
						|
 | 
						|
    <section id="aws-api-settings">
 | 
						|
        <title>Enabling the Services</title>
 | 
						|
        <para>To enable the EC2 and S3 compatible services you need to set the configuration variables <emphasis>enable.ec2.api</emphasis>
 | 
						|
        and <emphasis>enable.s3.api</emphasis> to true. You do not have to enable both at the same time. Enable the ones you need.
 | 
						|
        This can be done via the &PRODUCT; GUI by going in <emphasis>Global Settings</emphasis> or via the API.</para>
 | 
						|
        <para>The snapshot below shows you how to use the GUI to enable these services</para>
 | 
						|
 | 
						|
        <para>
 | 
						|
        <mediaobject>
 | 
						|
            <imageobject>
 | 
						|
                <imagedata fileref="./images/ec2-s3-configuration.png"/>
 | 
						|
            </imageobject>
 | 
						|
            <textobject>
 | 
						|
                <phrase>Use the GUI to set the configuration variable to <emphasis>true</emphasis></phrase>
 | 
						|
            </textobject>
 | 
						|
        </mediaobject>
 | 
						|
        </para>
 | 
						|
 | 
						|
        <para>Using the &PRODUCT; API, the easiest is to use the so-called integration port on which you can make 
 | 
						|
        unauthenticated calls. In Global Settings set the port to 8096 and subsequently call the <emphasis>updateConfiguration</emphasis> method.
 | 
						|
        The following urls shows you how:</para>
 | 
						|
    
 | 
						|
        <para>
 | 
						|
            <programlisting>
 | 
						|
            http://localhost:8096/client/api?command=updateConfiguration&name=enable.ec2.api&value=true
 | 
						|
            http://localhost:8096/client/api?command=updateConfiguration&name=enable.ec2.api&value=true
 | 
						|
            </programlisting>
 | 
						|
        </para>
 | 
						|
 | 
						|
        <para>Once you have enabled the services, restart the server.</para>
 | 
						|
    </section>
 | 
						|
 | 
						|
    <section id="aws-ec2-service-offerings">
 | 
						|
        <title>Creating EC2 Compatible Service Offerings</title>
 | 
						|
        <para>You will also need to define compute service offerings with names compatible with the <ulink url="http://aws.amazon.com/ec2/instance-types/">
 | 
						|
              Amazon EC2 instance types</ulink> API names (e.g m1.small,m1.large). This can be done via the &PRODUCT; GUI.
 | 
						|
              Go under <emphasis>Service Offerings</emphasis> select <emphasis>Compute offering</emphasis> and either create
 | 
						|
              a new compute offering or modify an existing one, ensuring that the name matches an EC2 instance type API name. The snapshot below shows you how:</para>
 | 
						|
        <para>
 | 
						|
            <mediaobject>
 | 
						|
                <imageobject>
 | 
						|
                    <imagedata fileref="./images/compute-service-offerings.png"/>
 | 
						|
                </imageobject>
 | 
						|
                <textobject>
 | 
						|
                    <phrase>Use the GUI to set the name of a compute service offering to an EC2 instance
 | 
						|
                    type API name.</phrase>
 | 
						|
                </textobject>
 | 
						|
            </mediaobject>
 | 
						|
        </para>
 | 
						|
    </section>
 | 
						|
    <section id="aws-api-port-change">
 | 
						|
        <title>Modifying the AWS API Port</title>
 | 
						|
        <note>
 | 
						|
            <para>(Optional) The AWS API listens for requests on port 7080. If you prefer AWS API to listen on another port, you can change it as follows:</para>
 | 
						|
            <orderedlist numeration="loweralpha">
 | 
						|
                <listitem><para>Edit the files /etc/cloud/management/server.xml, /etc/cloud/management/server-nonssl.xml,
 | 
						|
                          and /etc/cloud/management/server-ssl.xml.</para></listitem>
 | 
						|
                <listitem><para>In each file, find the tag <Service name="Catalina7080">. Under this tag,
 | 
						|
                          locate <Connector executor="tomcatThreadPool-internal" port= ....<.</para></listitem>
 | 
						|
                <listitem><para>Change the port to whatever port you want to use, then save the files.</para></listitem>
 | 
						|
                <listitem><para>Restart the Management Server.</para></listitem>
 | 
						|
            </orderedlist>
 | 
						|
            <para>If you re-install &PRODUCT;, you will have to re-enable the services and if need be update the port.</para>
 | 
						|
        </note>
 | 
						|
    </section> 
 | 
						|
 | 
						|
 </section>
 |