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