AWS SDK for PHP バージョン 3 を使用した Amazon EC2 インスタンスの管理 - AWS SDK for PHP

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS SDK for PHP バージョン 3 を使用した Amazon EC2 インスタンスの管理

以下の例では、次の方法を示しています。

  • を使用して Amazon EC2 インスタンスを記述しますDescribeInstances

  • を使用して、実行中のインスタンスの詳細モニタリングを有効にしますMonitorInstances

  • を使用して、実行中のインスタンスのモニタリングを無効にしますUnmonitorInstances

  • を使用して、以前に停止した Amazon EBS-backed AMI を起動しますStartInstances

  • を使用して Amazon EBS-backed インスタンスを停止しますStopInstances

  • を使用して、1 つ以上のインスタンスの再起動をリクエストしますRebootInstances

のすべてのサンプルコードAWS SDK for PHPは、 にあります GitHub

認証情報

サンプルコードを実行する前に、AWS の認証情報を設定します (認証情報 を参照)。AWS SDK for PHP からのインポート (基本的な使用法 を参照)。

インスタンスの説明

インポート

require 'vendor/autoload.php'; use Aws\Ec2\Ec2Client;

サンプルコード

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

モニタリングを有効または無効にする

インポート

require 'vendor/autoload.php';

サンプルコード

$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);

インスタンスを起動または停止する

インポート

require 'vendor/autoload.php';

サンプルコード

$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);

インスタンスの再起動

インポート

require 'vendor/autoload.php';

サンプルコード

$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);