mirror of
				https://github.com/apache/cloudstack.git
				synced 2025-10-26 08:42:29 +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>
 |