アマゾンのEC2を使う機会がありましたのでSDKを使ってみたメモを記述します。
セットアップ:
AWSサイトからPHP用のSDKをダウンロードします。
私の場合、バージョン1.4.7でした。
その他セットアップはAWSサイトを参照してください。
サンプル作成:
ダウンロードしたSDKのフォルダにある[config-sample.inc.php]を
名前変更し[config.inc.php]とします。
[config.inc.php]の中にある以下の部分を変更します。
define('AWS_KEY', '<自分のAWS_KEY>');
define('AWS_SECRET_KEY', '<自分のAWS_SECRET_KEY>');
(AWS_KEYとAWS_SECRET_KEYはAWSサイトから取得します)
以下、インスタンス起動のサンプルです。
<?php
require_once('sdk.class.php');
$ec2 = new AmazonEC2();
// リージョンは東京とする
// 「AmazonEC2::REGION_APAC_NE1」と指定すると、
// ホスト名が見つからないエラーが発生した。
// SDKのソースを調べると、ホスト名設定(ec2.class.php)は以下となっていた。
// $this--->set_hostname('http://ec2.'. $region .'.amazonaws.com');
// リージョン定数は「ec2.ap-northeast-1.amazonaws.com」
// なので、ホスト名が以下となってしまう。
// 「http://ec2.ec2.ap-northeast-1.amazonaws.com.amazonaws.com」
//$ec2->set_region(AmazonEC2::REGION_APAC_NE1);
$ec2->set_region("ap-northeast-1");
// インスタンス起動
$rc = $ec2->start_instances("<インスタンスID>");
if(!$rc->isOK()) var_dump($rc);
投稿者:島田