Zend_Service_Amazon_Ec2-Elasticip.xml 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 20818 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.service.amazon.ec2.elasticip">
  5. <title>Zend_Service_Amazon_Ec2: Elastische IP Adressen</title>
  6. <para>
  7. Standardmäßig werden allen Amazon EC2 Instanzen beim Starten zwei IP Adressen zugeordnet:
  8. eine private (RFC 1918) Adresse und eine öffentliche Adresse die über Network Address
  9. Translation (NAT) auf die private Adresse gemappt wird.
  10. </para>
  11. <para>
  12. Wenn man dynamische DNS verwendet um einen bestehenden DNS Namen zu einer öffentlichen IP
  13. Adresse einer neuen Instanz zu verknüpfen, kann es für die IP Adresse bis zu 24 Stunden
  14. dauern bis Sie über das Internet bekanntgegeben wurde. Als Ergebnis, können neue Instanzen
  15. keinen Verkehr empfangen weil beendete Instanzen weiterhin Anfragen bekommen.
  16. </para>
  17. <para>
  18. Um dieses Problem zu lösen, bietet Amazon EC2 elastische IP Adressen. Elastische IP
  19. Adressen sind statische IP Adressen die für Dynamisches Cloud Computing entwickelt wurden.
  20. elastische IP Adressen werden mit dem eigenen Account verknüpft, und nicht spezifischen
  21. Instanzen. Jede elastische IP Adresse die man mit dem eigenen Account assoziiert bleibt
  22. mit dem eigenen Account verknüpft bis man diese explizit freigibt. Anders als traditionelle
  23. IP Adressen erlauben es elastische IP Adressen Instanzen zu maskieren oder Zonen Fehler
  24. sichtbar zu machen indem die eigene öffentliche IP Adresse schnell auf jede Instanz im
  25. eigenen Account verknüpft werden kann.
  26. </para>
  27. <example id="zend.service.amazon.ec2.elasticip.allocate">
  28. <title>Eine neue Elastische IP allokieren</title>
  29. <para>
  30. <code>allocate</code> fügt dem eigenen Account eine neue Elastische IP Adresse hinzu.
  31. </para>
  32. <para>
  33. <code>allocate</code> gibt die neu verknüpfte IP zurück.
  34. </para>
  35. <programlisting language="php"><![CDATA[
  36. $ec2_eip = new Zend_Service_Amazon_Ec2_Elasticip('aws_key','aws_secret_key');
  37. $ip = $ec2_eip->allocate();
  38. // Gibt die neu verknüpfte elastische IP Adresse aus;
  39. print $ip;
  40. ]]></programlisting>
  41. </example>
  42. <example id="zend.service.amazon.ec2.elasticip.describe">
  43. <title>Beschreiben von Verknüpften elastischen IP Adressen</title>
  44. <para>
  45. <code>describe</code> hat einen optionalen Parameter um alle eigenen verknüpften
  46. elastischen IP Adressen zu beschreiben oder auch nur einige der eigenen verknüpften
  47. Adressen.
  48. </para>
  49. <para>
  50. <code>describe</code> gibt ein Array zurück das Informationen über jede elastische IP
  51. Adresse enthält welche wiederum publicIp und instanceId enthalten wenn diese
  52. assoziiert sind.
  53. </para>
  54. <programlisting language="php"><![CDATA[
  55. $ec2_eip = new Zend_Service_Amazon_Ec2_Elasticip('aws_key','aws_secret_key');
  56. // Beschreibe alle
  57. $ips = $ec2_eip->describe();
  58. // Beschreibe ein Subset
  59. $ips = $ec2_eip->describe(array('ip1', 'ip2', 'ip3'));
  60. // Beschreibe eine einzelne IP Adresse
  61. $ip = $ec2_eip->describe('ip1');
  62. ]]></programlisting>
  63. </example>
  64. <example id="zend.service.amazon.ec2.elasticip.release">
  65. <title>Freigeben einer elastischen IP</title>
  66. <para>
  67. <code>release</code> gibt eine elastische IP wieder für Amazon frei.
  68. </para>
  69. <para>
  70. Gibt ein boolsches <constant>TRUE</constant> oder <constant>FALSE</constant> zurück.
  71. </para>
  72. <programlisting language="php"><![CDATA[
  73. $ec2_eip = new Zend_Service_Amazon_Ec2_Elasticip('aws_key','aws_secret_key');
  74. $ec2_eip->release('ipaddress');
  75. ]]></programlisting>
  76. </example>
  77. <example id="zend.service.amazon.ec2.elasticip.associate">
  78. <title>Verknüpft eine elastische IP zu einer Instanz</title>
  79. <para>
  80. <code>associate</code> verknüpft eine elastische IP mit einer bereits laufenden
  81. Instanz.
  82. </para>
  83. <para>
  84. Gibt ein boolsches <constant>TRUE</constant> oder <constant>FALSE</constant> zurück.
  85. </para>
  86. <programlisting language="php"><![CDATA[
  87. $ec2_eip = new Zend_Service_Amazon_Ec2_Elasticip('aws_key','aws_secret_key');
  88. $ec2_eip->associate('instance_id', 'ipaddress');
  89. ]]></programlisting>
  90. </example>
  91. <example id="zend.service.amazon.ec2.elasticip.disassociate">
  92. <title>Entfernt die Verknüpfung einer elastischen IP von einer Instanz</title>
  93. <para>
  94. <code>disassocate</code> entfernt die Verknüpfung einer elastischen IP von einer
  95. Instanz. Wenn man eine Instanz beendet wird diese automatisch die elastischen IP
  96. Adressen wieder freigeben.
  97. </para>
  98. <para>
  99. Gibt ein boolsches <constant>TRUE</constant> oder <constant>FALSE</constant> zurück.
  100. </para>
  101. <programlisting language="php"><![CDATA[
  102. $ec2_eip = new Zend_Service_Amazon_Ec2_Elasticip('aws_key','aws_secret_key');
  103. $ec2_eip->disassociate('ipaddress');
  104. ]]></programlisting>
  105. </example>
  106. </sect1>