Zend_Service_Amazon_Ec2-Image.xml 12 KB

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