Zend_Service_Amazon_Ec2-Image.xml 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 15157 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.service.amazon.ec2.images">
  5. <title>Zend_Service_Amazon_Ec2: Amazon Maschinen Images (AMI)</title>
  6. <para>
  7. Amazon Maschinen Images (AMIs) sind mit einer bereits wachsenden Listen von
  8. Betriebssystemen vorkonfiguriert. Wir arbeiten mit unseren Partnern und der Community um
  9. die best mögliche Auswahl zu bieten.
  10. </para>
  11. <sect2 id="zend.service.amazon.ec2.images.info">
  12. <title>AMI Informations Tools</title>
  13. <example id="zend.service.amazon.ec2.images.register">
  14. <title>Ein AMI mit EC2 registrieren</title>
  15. <para>
  16. <code>register</code> Jedes AMI ist mit einer eideutigen ID assoziiert welche
  17. vom Amazon EC2 Service über die RegisterImage Operation zur Verfügung gestellt
  18. wird. Wärend der Registrierung empfängt Amazon EC2 das spezifizierte Manifest des
  19. Images von Amazon S3 und überprüft das das Image dem Benutzer gehört der das Image
  20. registriert.
  21. </para>
  22. <para>
  23. <code>register</code> gibt die imageId für das registrierte Image zurück.
  24. </para>
  25. <programlisting role="php"><![CDATA[
  26. $ec2_img = new Zend_Service_Amazon_Ec2_Image('aws_key','aws_secret_key');
  27. $ip = $ec2_img->register('imageLocation');
  28. ]]></programlisting>
  29. </example>
  30. <example id="zend.service.amazon.ec2.images.deregister">
  31. <title>De-Registrieren einer AMI von EC2</title>
  32. <para>
  33. <code>deregister</code>, de-registriert ein AMI. Einmal de-registriert können
  34. Instanzen dieses AMI nicht mehr gestartet werden.
  35. </para>
  36. <para>
  37. <code>deregister</code> gibt ein boolsches true oder false zurück.
  38. </para>
  39. <programlisting role="php"><![CDATA[
  40. $ec2_img = new Zend_Service_Amazon_Ec2_Image('aws_key','aws_secret_key');
  41. $ip = $ec2_img->deregister($imageId);
  42. ]]></programlisting>
  43. </example>
  44. <example id="zend.service.amazon.ec2.images.describe">
  45. <title>Beschreiben einer AMI</title>
  46. <para>
  47. <code>describe</code> gibt Informationen über AMIs, AKIs und ARIs zurück die für
  48. den Benutzer verfügbar sind. Die zurückgegebenen Informationen enthalten den
  49. Imagetyp, Produktcodes, Architektur, Kernel und RAM Disk ISs. Images die für den
  50. Benutzer verfügbar sind, enthalten öffentliche Images die zum Starten für jeden
  51. Benutzer vorhanden sind, private Images die dem Benutzer gehören der die Anfrage
  52. stellt, und private Images die anderen Benutzern gehören welche dem Benutzer
  53. explizit die Rechte zum Starten gegeben haben.
  54. </para>
  55. <para>
  56. <table id="zend.service.amazon.ec2.images.describe-table">
  57. <title>Die Rechte für das Starten fallen in drei Kategorien</title>
  58. <tgroup cols="2">
  59. <thead>
  60. <row>
  61. <entry>Name</entry>
  62. <entry>Beschreibung</entry>
  63. </row>
  64. </thead>
  65. <tbody>
  66. <row>
  67. <entry><code>public</code></entry>
  68. <entry><para>
  69. Der Eigentümer des AMI gibt allen Gruppen das Recht das AMI zu
  70. starten. Alle Benutzer haben Startberechtigung für diese AMIs.
  71. </para></entry>
  72. </row>
  73. <row>
  74. <entry><code>explicit</code></entry>
  75. <entry><para>
  76. Der Eigentümer des AMI gibt einem spezifischen Benutzer die
  77. Startberechtigung.
  78. </para></entry>
  79. </row>
  80. <row>
  81. <entry><code>implicit</code></entry>
  82. <entry><para>
  83. Ein Benutzer hat implizit die Startberechtigung für alle AMIs die
  84. Ihm gehören.
  85. </para></entry>
  86. </row>
  87. </tbody>
  88. </tgroup>
  89. </table>
  90. </para>
  91. <para>
  92. Die Liste der zurückgegebenen AMIs kann durch die Spezifikation von AMI IDs, AMI
  93. Eigentümer oder Benutzern mit Starterechtigung, geändert werden. Wenn keine
  94. Option spezifiziert wird, gibt Amazon EC2 alle AMIs zurück für die der Benutzer
  95. eine Startberechtigung hat.
  96. </para>
  97. <para>
  98. Wenn eine oder mehrere AMI IDs spezifiziert werden, werden nur die AMIs
  99. zurückgegeben die die spezifizierten IDs besitzen. Wenn man eine ungültige AMI ID
  100. spezifiziert, wird ein Fehler zurückgegeben. Wenn man eine AMI ID spezifiziert
  101. für die man keinen Zugriff hat, wird diese nicht in den zurückgegebenen Ergebnissen
  102. enthalten sein.
  103. </para>
  104. <para>
  105. Wenn ein oder mehrere AMI Eigentümer spezifiziert werden, werden nur die AMIs der
  106. spezifizierten Eigentümer, für die man auch Zugriffsrechte hat, zurückgegeben.
  107. Die Ergebnisse können account für die Account IDs des spezifizierten Eigentümers
  108. enthalten, amazon für AMIs die Amazon selbst gehören oder self für AMIs die man
  109. selbst besitzt.
  110. </para>
  111. <para>
  112. Wenn man eine Liste von ausführbaren Benutzern spezifiziert, werden nur die
  113. Benutzer zurückgegeben die eine Startberechtigung für die AMIs haben. Man kann
  114. mit account, Account IDs spezifizieren (wenn man die AMIs besitzt), self für AMIs
  115. die man selbst besitzt oder explizite Zugriffsrechte hat, oder all für öffentliche
  116. AMIs.
  117. </para>
  118. <para>
  119. <code>describe</code> gibt ein Array für alle Images zurück die den übergebenen
  120. Kriterien entsprechen. Das Array enthält imageId, imageLocation, imageState,
  121. imageOwnerId, isPublic, architecture, imageType, kernedId, ramdiskId und platform.
  122. </para>
  123. <programlisting role="php"><![CDATA[
  124. $ec2_img = new Zend_Service_Amazon_Ec2_Image('aws_key','aws_secret_key');
  125. $ip = $ec2_img->allocate();
  126. ]]></programlisting>
  127. </example>
  128. </sect2>
  129. <sect2 id="zend.service.amazon.ec2.images.attribute">
  130. <title>Utilities für AMI Attribute</title>
  131. <example id="zend.service.amazon.ec2.images.attribute.modify">
  132. <title>Image Attribute verändern</title>
  133. <para>Ein Attribut eines AMI verändern</para>
  134. <para>
  135. <table id="zend.service.amazon.ec2.images.attribute.modify-table">
  136. <title>Gültige Attribute</title>
  137. <tgroup cols="2">
  138. <thead>
  139. <row>
  140. <entry>Name</entry>
  141. <entry>Beschreibung</entry>
  142. </row>
  143. </thead>
  144. <tbody>
  145. <row>
  146. <entry><code>launchPermission</code></entry>
  147. <entry><para>
  148. Kontrolliert wer die Berechtigung hat das AMI zu starten.
  149. Startberechtigung kann spezifischen Benutzern durch das
  150. hinzufügen von userIds gegeben werden.
  151. </para><para>Um das AMI öffentlich zu machen, sollte man die
  152. add Gruppe hinzufügen.</para></entry>
  153. </row>
  154. <row>
  155. <entry><code>productCodes</code></entry>
  156. <entry><para>
  157. Assoziiert einen Produktcode mit AMIs. Das erlaubt es Entwicklern
  158. Benutzer für die Verwendung von AMIs zu benennen. Der Benutzer
  159. muß für das Produkt angemeldet sein bevor er das AMI starten kann.
  160. <emphasis>Das ist ein Write-Once Attribut; nachdem es gesetzt wurde
  161. kann es nicht mehr geändert oder gelöscht werden.</emphasis>
  162. </para></entry>
  163. </row>
  164. </tbody>
  165. </tgroup>
  166. </table>
  167. </para>
  168. <para>
  169. <code>modifyAttribute</code> gibt ein boolsches true oder false zurück.
  170. </para>
  171. <programlisting role="php"><![CDATA[
  172. $ec2_img = new Zend_Service_Amazon_Ec2_Image('aws_key','aws_secret_key');
  173. // Ändert die Startberechtigung (launchPermission) eines AMI
  174. $return = $ec2_img->modifyAttribute('imageId',
  175. 'launchPermission',
  176. 'add',
  177. 'userId',
  178. 'userGroup');
  179. // Setzt den Produktcode des AMI.
  180. $return = $ec2_img->modifyAttribute('imageId',
  181. 'productCodes',
  182. 'add',
  183. null,
  184. null,
  185. 'productCode');
  186. ]]></programlisting>
  187. </example>
  188. <example id="zend.service.amazon.ec2.images.attribute.reset">
  189. <title>Resetieren eines AMI Attributes</title>
  190. <para>
  191. <code>resetAttribute</code> resetiert die Attribute eines AMI zu dessen
  192. Standardwerten.
  193. <emphasis>Das productCodes Attribut kann nicht resetiert werden.</emphasis>
  194. </para>
  195. <programlisting role="php"><![CDATA[
  196. $ec2_img = new Zend_Service_Amazon_Ec2_Image('aws_key','aws_secret_key');
  197. $return = $ec2_img->resetAttribute('imageId', 'launchPermission');
  198. ]]></programlisting>
  199. </example>
  200. <example id="zend.service.amazon.ec2.images.attribute.describe">
  201. <title>AMI Attribute beschreiben</title>
  202. <para>
  203. <code>describeAttribute</code> gibt Informationen über ein Attribut eines AMI
  204. zurück. Pro Aufruf kann nur ein Attribut spezifiziert werden. Aktuell werden
  205. nur launchPermission und productCodes unterstützt.
  206. </para>
  207. <para>
  208. <code>describeAttribute</code> gibt ein Array mit dem Wert des Attributes zurück
  209. das angefragt wurde.
  210. </para>
  211. <programlisting role="php"><![CDATA[
  212. $ec2_img = new Zend_Service_Amazon_Ec2_Image('aws_key','aws_secret_key');
  213. $return = $ec2_img->describeAttribute('imageId', 'launchPermission');
  214. ]]></programlisting>
  215. </example>
  216. </sect2>
  217. </sect1>