|
23 | 23 | --> |
24 | 24 |
|
25 | 25 | <section id="aws-ec2-configuration"> |
26 | | - <title>Enabling the AWS API Compatible Interface</title> |
27 | | - <para> |
28 | | - The software that provides AWS API compatibility is installed along with &PRODUCT;. However, you must enable the feature and perform some setup steps. |
29 | | - </para> |
30 | | - <orderedlist> |
31 | | - <listitem><para>Set the global configuration parameter enable.ec2.api to true. See <xref linkend="global-config" />.</para></listitem> |
32 | | - <listitem><para>Create a set of &PRODUCT; service offerings with names that match the Amazon service offerings. |
33 | | - You can do this through the &PRODUCT; UI as described in the Administration Guide.</para> |
34 | | - <warning><para>Be sure you have included the Amazon default service offering, m1.small.</para></warning></listitem> |
35 | | - <listitem><para>If you did not already do so when you set the configuration parameter in step 1, restart the Management Server.</para> |
36 | | - <programlisting># service cloud-management restart</programlisting></listitem> |
37 | | - <listitem><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> |
38 | | - <orderedlist numeration="loweralpha"> |
39 | | - <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> |
40 | | - <listitem><para>In each file, find the tag <Service name="Catalina7080">. Under this tag, locate <Connector executor="tomcatThreadPool-internal" port= ....<.</para></listitem> |
41 | | - <listitem><para>Change the port to whatever port you want to use, then save the files.</para></listitem> |
42 | | - <listitem><para>Restart the Management Server.</para> |
43 | | - <note><para>If you re-install CloudStack, you will have to make these changes again.</para></note> |
| 26 | + <title>Enabling the EC2 and S3 Compatible Interface</title> |
| 27 | + |
| 28 | + <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. |
| 29 | + </para> |
| 30 | + <orderedlist> |
| 31 | + <listitem><para>Set the global configuration parameters for each service to true. |
| 32 | + See <xref linkend="global-config" />.</para></listitem> |
| 33 | + <listitem><para>Create a set of &PRODUCT; service offerings with names that match the Amazon service offerings. |
| 34 | + You can do this through the &PRODUCT; UI as described in the Administration Guide.</para> |
| 35 | + <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> |
| 36 | + </listitem> |
| 37 | + <listitem><para>If you did not already do so when you set the configuration parameter in step 1, |
| 38 | + restart the Management Server.</para> |
| 39 | + <programlisting># service cloud-management restart</programlisting> |
44 | 40 | </listitem> |
45 | | - </orderedlist> |
46 | | - </listitem> |
47 | | - </orderedlist> |
| 41 | + </orderedlist> |
| 42 | + <para>The following sections provides details to perform these steps</para> |
| 43 | + |
| 44 | + <section id="aws-api-settings"> |
| 45 | + <title>Enabling the Services</title> |
| 46 | + <para>To enable the EC2 and S3 compatible services you need to set the configuration variables <emphasis>enable.ec2.api</emphasis> |
| 47 | + and <emphasis>enable.s3.api</emphasis> to true. You do not have to enable both at the same time. Enable the ones you need. |
| 48 | + This can be done via the &PRODUCT; GUI by going in <emphasis>Global Settings</emphasis> or via the API.</para> |
| 49 | + <para>The snapshot below shows you how to use the GUI to enable these services</para> |
| 50 | + |
| 51 | + <para> |
| 52 | + <mediaobject> |
| 53 | + <imageobject> |
| 54 | + <imagedata fileref="./images/ec2-s3-configuration.png"/> |
| 55 | + </imageobject> |
| 56 | + <textobject> |
| 57 | + <phrase>Use the GUI to set the configuration variable to <emphasis>true</emphasis></phrase> |
| 58 | + </textobject> |
| 59 | + </mediaobject> |
| 60 | + </para> |
| 61 | + |
| 62 | + <para>Using the &PRODUCT; API, the easiest is to use the so-called integration port on which you can make |
| 63 | + unauthenticated calls. In Global Settings set the port to 8096 and subsequently call the <emphasis>updateConfiguration</emphasis> method. |
| 64 | + The following urls shows you how:</para> |
| 65 | + |
| 66 | + <para> |
| 67 | + <programlisting> |
| 68 | + http://localhost:8096/client/api?command=updateConfiguration&name=enable.ec2.api&value=true |
| 69 | + http://localhost:8096/client/api?command=updateConfiguration&name=enable.ec2.api&value=true |
| 70 | + </programlisting> |
| 71 | + </para> |
| 72 | + |
| 73 | + <para>Once you have enabled the services, restart the server.</para> |
| 74 | + </section> |
| 75 | + |
| 76 | + <section id="aws-ec2-service-offerings"> |
| 77 | + <title>Creating EC2 Compatible Service Offerings</title> |
| 78 | + <para>You will also need to define compute service offerings with names compatible with the <ulink url="http://aws.amazon.com/ec2/instance-types/"> |
| 79 | + Amazon EC2 instance types</ulink> API names (e.g m1.small,m1.large). This can be done via the &PRODUCT; GUI. |
| 80 | + Go under <emphasis>Service Offerings</emphasis> select <emphasis>Compute offering</emphasis> and either create |
| 81 | + 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> |
| 82 | + <para> |
| 83 | + <mediaobject> |
| 84 | + <imageobject> |
| 85 | + <imagedata fileref="./images/compute-service-offerings.png"/> |
| 86 | + </imageobject> |
| 87 | + <textobject> |
| 88 | + <phrase>Use the GUI to set the name of a compute service offering to an EC2 instance |
| 89 | + type API name.</phrase> |
| 90 | + </textobject> |
| 91 | + </mediaobject> |
| 92 | + </para> |
| 93 | + </section> |
| 94 | + <section id="aws-api-port-change"> |
| 95 | + <title>Modifying the AWS API Port</title> |
| 96 | + <note> |
| 97 | + <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> |
| 98 | + <orderedlist numeration="loweralpha"> |
| 99 | + <listitem><para>Edit the files /etc/cloud/management/server.xml, /etc/cloud/management/server-nonssl.xml, |
| 100 | + and /etc/cloud/management/server-ssl.xml.</para></listitem> |
| 101 | + <listitem><para>In each file, find the tag <Service name="Catalina7080">. Under this tag, |
| 102 | + locate <Connector executor="tomcatThreadPool-internal" port= ....<.</para></listitem> |
| 103 | + <listitem><para>Change the port to whatever port you want to use, then save the files.</para></listitem> |
| 104 | + <listitem><para>Restart the Management Server.</para></listitem> |
| 105 | + </orderedlist> |
| 106 | + <para>If you re-install &PRODUCT;, you will have to re-enable the services and if need be update the port.</para> |
| 107 | + </note> |
| 108 | + </section> |
| 109 | + |
48 | 110 | </section> |
0 commit comments