blob: 7cdbcad8095ac9fd1418e0bf7c92b12076ab3421 [file] [log] [blame]
<?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-supported-commands">
<title>Supported AWS API Calls</title>
<para>The following Amazon EC2 commands are supported by &PRODUCT; when the AWS API compatible interface is enabled.
For a few commands, there are differences between the &PRODUCT; and Amazon EC2 versions, and these differences are noted. The underlying SOAP call for each command is also given, for those who have built tools using those calls.
</para>
<table frame='all'>
<title>Elastic IP API mapping</title>
<tgroup cols='3' align='left' colsep='1' rowsep='1'>
<!--<colspec colname='c1'tcolwidth="1*"/>
<colspec colname='c2'tcolwidth="1*"/>-->
<thead>
<row>
<entry>EC2 command</entry>
<entry>SOAP call</entry>
<entry>&PRODUCT; API call</entry>
</row>
</thead>
<tbody>
<row>
<entry>ec2-allocate-address</entry>
<entry>AllocateAddress</entry>
<entry>associateIpAddress</entry>
</row>
<row>
<entry>ec2-associate-address</entry>
<entry>AssociateAddress</entry>
<entry>enableStaticNat</entry>
</row>
<row>
<entry>ec2-describe-addresses</entry>
<entry>DescribeAddresses</entry>
<entry>listPublicIpAddresses</entry>
</row>
<row>
<entry>ec2-diassociate-address</entry>
<entry>DisassociateAddress</entry>
<entry>disableStaticNat</entry>
</row>
<row>
<entry>ec2-release-address</entry>
<entry>ReleaseAddress</entry>
<entry>disassociateIpAddress</entry>
</row>
</tbody>
</tgroup>
</table>
<table frame='all'>
<title>Availability Zone API mapping</title>
<tgroup cols='3' align='left' colsep='1' rowsep='1'>
<!--<colspec colname='c1'tcolwidth="1*"/>
<colspec colname='c2'tcolwidth="1*"/>-->
<thead>
<row>
<entry>EC2 command</entry>
<entry>SOAP call</entry>
<entry>&PRODUCT; API call</entry>
</row>
</thead>
<tbody>
<row>
<entry>ec2-describe-availability-zones</entry>
<entry>DescribeAvailabilityZones</entry>
<entry>listZones</entry>
</row>
</tbody>
</tgroup>
</table>
<table frame='all'>
<title>Images API mapping</title>
<tgroup cols='3' align='left' colsep='1' rowsep='1'>
<!--<colspec colname='c1'tcolwidth="1*"/>
<colspec colname='c2'tcolwidth="1*"/>-->
<thead>
<row>
<entry>EC2 command</entry>
<entry>SOAP call</entry>
<entry>&PRODUCT; API call</entry>
</row>
</thead>
<tbody>
<row>
<entry>ec2-create-image</entry>
<entry>CreateImage</entry>
<entry>createTemplate</entry>
</row>
<row>
<entry>ec2-deregister</entry>
<entry>DeregisterImage</entry>
<entry>DeleteTemplate</entry>
</row>
<row>
<entry>ec2-describe-images</entry>
<entry>DescribeImages</entry>
<entry>listTemplates</entry>
</row>
<row>
<entry>ec2-register</entry>
<entry>RegisterImage</entry>
<entry>registerTemplate</entry>
</row>
</tbody>
</tgroup>
</table>
<table frame='all'>
<title>Image Attributes API mapping</title>
<tgroup cols='3' align='left' colsep='1' rowsep='1'>
<!--<colspec colname='c1'tcolwidth="1*"/>
<colspec colname='c2'tcolwidth="1*"/>-->
<thead>
<row>
<entry>EC2 command</entry>
<entry>SOAP call</entry>
<entry>&PRODUCT; API call</entry>
</row>
</thead>
<tbody>
<row>
<entry>ec2-describe-image-attribute</entry>
<entry>DescribeImageAttribute</entry>
<entry>listTemplatePermissions</entry>
</row>
<row>
<entry>ec2-modify-image-attribute</entry>
<entry>ModifyImageAttribute</entry>
<entry>updateTemplatePermissions</entry>
</row>
<row>
<entry>ec2-reset-image-attribute</entry>
<entry>ResetImageAttribute</entry>
<entry>updateTemplatePermissions</entry>
</row>
</tbody>
</tgroup>
</table>
<table frame='all'>
<title>Instances API mapping</title>
<tgroup cols='3' align='left' colsep='1' rowsep='1'>
<!--<colspec colname='c1'tcolwidth="1*"/>
<colspec colname='c2'tcolwidth="1*"/>-->
<thead>
<row>
<entry>EC2 command</entry>
<entry>SOAP call</entry>
<entry>&PRODUCT; API call</entry>
</row>
</thead>
<tbody>
<row>
<entry>ec2-describe-instances</entry>
<entry>DescribeInstances</entry>
<entry>listVirtualMachines</entry>
</row>
<row>
<entry>ec2-run-instances</entry>
<entry>RunInstances</entry>
<entry>deployVirtualMachine</entry>
</row>
<row>
<entry>ec2-reboot-instances</entry>
<entry>RebootInstances</entry>
<entry>rebootVirtualMachine</entry>
</row>
<row>
<entry>ec2-start-instances</entry>
<entry>StartInstances</entry>
<entry>startVirtualMachine</entry>
</row>
<row>
<entry>ec2-stop-instances</entry>
<entry>StopInstances</entry>
<entry>stopVirtualMachine</entry>
</row>
<row>
<entry>ec2-terminate-instances</entry>
<entry>TerminateInstances</entry>
<entry>destroyVirtualMachine</entry>
</row>
</tbody>
</tgroup>
</table>
<table frame='all'>
<title>Instance Attributes Mapping</title>
<tgroup cols='3' align='left' colsep='1' rowsep='1'>
<!--<colspec colname='c1'tcolwidth="1*"/>
<colspec colname='c2'tcolwidth="1*"/>-->
<thead>
<row>
<entry>EC2 command</entry>
<entry>SOAP call</entry>
<entry>&PRODUCT; API call</entry>
</row>
</thead>
<tbody>
<row>
<entry>ec2-describe-instance-attribute</entry>
<entry>DescribeInstanceAttribute</entry>
<entry>listVirtualMachines</entry>
</row>
</tbody>
</tgroup>
</table>
<table frame='all'>
<title>Keys Pairs Mapping</title>
<tgroup cols='3' align='left' colsep='1' rowsep='1'>
<!--<colspec colname='c1'tcolwidth="1*"/>
<colspec colname='c2'tcolwidth="1*"/>-->
<thead>
<row>
<entry>EC2 command</entry>
<entry>SOAP call</entry>
<entry>&PRODUCT; API call</entry>
</row>
</thead>
<tbody>
<row>
<entry>ec2-add-keypair</entry>
<entry>CreateKeyPair</entry>
<entry>createSSHKeyPair</entry>
</row>
<row>
<entry>ec2-delete-keypair</entry>
<entry>DeleteKeyPair</entry>
<entry>deleteSSHKeyPair</entry>
</row>
<row>
<entry>ec2-describe-keypairs</entry>
<entry>DescribeKeyPairs</entry>
<entry>listSSHKeyPairs</entry>
</row>
<row>
<entry>ec2-import-keypair</entry>
<entry>ImportKeyPair</entry>
<entry>registerSSHKeyPair</entry>
</row>
</tbody>
</tgroup>
</table>
<table frame='all'>
<title>Passwords API Mapping</title>
<tgroup cols='3' align='left' colsep='1' rowsep='1'>
<!--<colspec colname='c1'tcolwidth="1*"/>
<colspec colname='c2'tcolwidth="1*"/>-->
<thead>
<row>
<entry>EC2 command</entry>
<entry>SOAP call</entry>
<entry>&PRODUCT; API call</entry>
</row>
</thead>
<tbody>
<row>
<entry>ec2-get-password</entry>
<entry>GetPasswordData</entry>
<entry>getVMPassword</entry>
</row>
</tbody>
</tgroup>
</table>
<table frame='all'>
<title>Security Groups API Mapping</title>
<tgroup cols='3' align='left' colsep='1' rowsep='1'>
<!--<colspec colname='c1'tcolwidth="1*"/>
<colspec colname='c2'tcolwidth="1*"/>-->
<thead>
<row>
<entry>EC2 command</entry>
<entry>SOAP call</entry>
<entry>&PRODUCT; API call</entry>
</row>
</thead>
<tbody>
<row>
<entry>ec2-authorize</entry>
<entry>AuthorizeSecurityGroupIngress</entry>
<entry>authorizeSecurityGroupIngress</entry>
</row>
<row>
<entry>ec2-add-group</entry>
<entry>CreateSecurityGroup</entry>
<entry>createSecurityGroup</entry>
</row>
<row>
<entry>ec2-delete-group</entry>
<entry>DeleteSecurityGroup</entry>
<entry>deleteSecurityGroup</entry>
</row>
<row>
<entry>ec2-describe-group</entry>
<entry>DescribeSecurityGroups</entry>
<entry>listSecurityGroups</entry>
</row>
<row>
<entry>ec2-revoke</entry>
<entry>RevokeSecurityGroupIngress</entry>
<entry>revokeSecurityGroupIngress</entry>
</row>
</tbody>
</tgroup>
</table>
<table frame='all'>
<title>Snapshots API Mapping</title>
<tgroup cols='3' align='left' colsep='1' rowsep='1'>
<!--<colspec colname='c1'tcolwidth="1*"/>
<colspec colname='c2'tcolwidth="1*"/>-->
<thead>
<row>
<entry>EC2 command</entry>
<entry>SOAP call</entry>
<entry>&PRODUCT; API call</entry>
</row>
</thead>
<tbody>
<row>
<entry>ec2-create-snapshot</entry>
<entry>CreateSnapshot</entry>
<entry>createSnapshot</entry>
</row>
<row>
<entry>ec2-delete-snapshot</entry>
<entry>DeleteSnapshot</entry>
<entry>deleteSnapshot</entry>
</row>
<row>
<entry>ec2-describe-snapshots</entry>
<entry>DescribeSnapshots</entry>
<entry>listSnapshots</entry>
</row>
</tbody>
</tgroup>
</table>
<table frame='all'>
<title>Volumes API Mapping</title>
<tgroup cols='3' align='left' colsep='1' rowsep='1'>
<!--<colspec colname='c1'tcolwidth="1*"/>
<colspec colname='c2'tcolwidth="1*"/>-->
<thead>
<row>
<entry>EC2 command</entry>
<entry>SOAP call</entry>
<entry>&PRODUCT; API call</entry>
</row>
</thead>
<tbody>
<row>
<entry>ec2-attach-volume</entry>
<entry>AttachVolume</entry>
<entry>attachVolume</entry>
</row>
<row>
<entry>ec2-create-volume</entry>
<entry>CreateVolume</entry>
<entry>createVolume</entry>
</row>
<row>
<entry>ec2-delete-volume</entry>
<entry>DeleteVolume</entry>
<entry>deleteVolume</entry>
</row>
<row>
<entry>ec2-describe-volume</entry>
<entry>DescribeVolume</entry>
<entry>listVolumes</entry>
</row>
<row>
<entry>ec2-detach-volume</entry>
<entry>DetachVolume</entry>
<entry>detachVolume</entry>
</row>
</tbody>
</tgroup>
</table>
</section>