How to get list of EC2 instances with Amazon PHP SDK 2?

后端 未结 4 1298
萌比男神i
萌比男神i 2020-12-31 06:03

How to get list of Amazon EC2 instances matching some filters using AWS SDK for PHP 2?

4条回答
  •  梦谈多话
    2020-12-31 06:31

    With purpose to get list of PublicDnsName you can use this code:

    use Aws\Ec2\Ec2Client;
    
    $ec2 = Ec2Client::factory($config);
    $args = [
        'Filters' => [
            ['Name' => 'tag:Name', 'Values' => ['*{{your-tag}}*']],
        ]
    ];
    $data = $ec2->DescribeInstances($args)->toArray();
    $instances = [];
    array_walk_recursive($data, function ($value, $key) use (&$instances) {
        if ($key === 'PublicDnsName') {
            $instances[$value] = true;
        }
    });
    var_export($instances);
    

    You will receive something like this:

    array (
      'ec2-*-*-*-*.eu-west-1.compute.amazonaws.com' => true,
      'ec2-*-*-*-*.eu-west-1.compute.amazonaws.com' => true,
      'ec2-*-*-*-*.eu-west-1.compute.amazonaws.com' => true,
      'ec2-*-*-*-*.eu-west-1.compute.amazonaws.com' => true,
      'ec2-*-*-*-*.eu-west-1.compute.amazonaws.com' => true,
      'ec2-*-*-*-*.eu-west-1.compute.amazonaws.com' => true,
    )
    

提交回复
热议问题