Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Uso de direcciones IP elásticas en Amazon EC2 con la versión 3 de AWS SDK para PHP
Una dirección IP elástica (EIP) es una dirección IP estática diseñada para la informática en la nube dinámica. Una dirección IP elástica se asocia a su Cuenta de AWS. Se trata de una dirección IP pública a la que se puede obtener acceso desde Internet. Si la instancia no tiene una dirección IP pública, puede asociar una dirección IP elástica (EIP) a la instancia para permitir la comunicación con Internet.
Los siguientes ejemplos muestran cómo:
-
Describir una o varias de las instancias utilizando DescribeInstances.
-
Adquirir una dirección IP elástica utilizando AllocateAddress.
-
Asociar una dirección IP elástica con una instancia utilizando AssociateAddress.
-
Liberar una dirección IP elástica utilizando ReleaseAddress.
Todo el código de ejemplo de AWS SDK para PHP está disponible aquí en GitHub
Credenciales
Antes de ejecutar el código de ejemplo, configure sus credenciales de AWS, como se indica en Autenticación AWS con la AWS SDK para PHP versión 3. A continuación, importe AWS SDK para PHP, como se indica en Instalación del AWS SDK para PHP versión 3.
Describir una instancia
Importaciones
require 'vendor/autoload.php'; use Aws\Ec2\Ec2Client;
Código de muestra
$ec2Client = new Aws\Ec2\Ec2Client([ 'region' => 'us-west-2', 'version' => '2016-11-15', 'profile' => 'default' ]); $result = $ec2Client->describeInstances(); echo "Instances: \n"; foreach ($result['Reservations'] as $reservation) { foreach ($reservation['Instances'] as $instance) { echo "InstanceId: {$instance['InstanceId']} - {$instance['State']['Name']} \n"; } }
Asignar y asociar una dirección
Importaciones
require 'vendor/autoload.php';
Código de muestra
$ec2Client = new Aws\Ec2\Ec2Client([ 'region' => 'us-west-2', 'version' => '2016-11-15', 'profile' => 'default' ]); $instanceId = 'InstanceID'; $allocation = $ec2Client->allocateAddress(array( 'DryRun' => false, 'Domain' => 'vpc', )); $result = $ec2Client->associateAddress(array( 'DryRun' => false, 'InstanceId' => $instanceId, 'AllocationId' => $allocation->get('AllocationId') )); var_dump($result);
Liberar una dirección
Importaciones
require 'vendor/autoload.php';
Código de muestra
$ec2Client = new Aws\Ec2\Ec2Client([ 'region' => 'us-west-2', 'version' => '2016-11-15', 'profile' => 'default' ]); $associationID = 'AssociationID'; $allocationID = 'AllocationID'; $result = $ec2Client->disassociateAddress([ 'AssociationId' => $associationID, ]); $result = $ec2Client->releaseAddress([ 'AllocationId' => $allocationID, ]); var_dump($result);