Administración de instancias de Amazon EC2 con la versión 3 de AWS SDK for PHP - AWS SDK for PHP

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.

Administración de instancias de Amazon EC2 con la versión 3 de AWS SDK for PHP

Los siguientes ejemplos muestran cómo:

  • Describa las instancias de Amazon EC2 mediante. DescribeInstances

  • Habilite la supervisión detallada de una instancia en ejecución mediante MonitorInstances.

  • Inhabilite la supervisión de una instancia en ejecución mediante UnmonitorInstances.

  • Inicie una AMI respaldada por Amazon EBS-Bled que haya detenido anteriormente, utilizando. StartInstances

  • Detenga una instancia respaldada por Amazon EBS mediante. StopInstances

  • Solicite el reinicio de una o más instancias mediante. RebootInstances

Todo el código de ejemplo para el AWS SDK for PHP está disponible aquí en GitHub.

Credenciales

Antes de ejecutar el código de ejemplo, configure sus credenciales de AWS, como se indica en Credentials. A continuación, importe AWS SDK for PHP, como se indica en Uso básico.

Descripción de instancias

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"; } }

Habilitar y deshabilitar el monitoreo

Importaciones

require 'vendor/autoload.php';

Código de muestra

$ec2Client = new Aws\Ec2\Ec2Client([ 'region' => 'us-west-2', 'version' => '2016-11-15', 'profile' => 'default' ]); $instanceIds = ['InstanceID1', 'InstanceID2']; $monitorInstance = 'ON'; if ($monitorInstance == 'ON') { $result = $ec2Client->monitorInstances([ 'InstanceIds' => $instanceIds ]); } else { $result = $ec2Client->unmonitorInstances([ 'InstanceIds' => $instanceIds ]); } var_dump($result);

Iniciar y detener una instancia

Importaciones

require 'vendor/autoload.php';

Código de muestra

$ec2Client = new Aws\Ec2\Ec2Client([ 'region' => 'us-west-2', 'version' => '2016-11-15', 'profile' => 'default' ]); $action = 'START'; $instanceIds = ['InstanceID1', 'InstanceID2']; if ($action == 'START') { $result = $ec2Client->startInstances([ 'InstanceIds' => $instanceIds, ]); } else { $result = $ec2Client->stopInstances([ 'InstanceIds' => $instanceIds, ]); } var_dump($result);

Reinicio de una instancia

Importaciones

require 'vendor/autoload.php';

Código de muestra

$ec2Client = new Aws\Ec2\Ec2Client([ 'region' => 'us-west-2', 'version' => '2016-11-15', 'profile' => 'default' ]); $instanceIds = ['InstanceID1', 'InstanceID2']; $result = $ec2Client->rebootInstances([ 'InstanceIds' => $instanceIds ]); var_dump($result);