blogPHPでWEB+DBシステムの開発をやっています。Services(AWS)をはじめてみませんか。AWS盛り上がっていますね。2011年3月に東京リージョンができたことで、そろそろ触ってみようかなというPHPユーザの方も多いかと思います。そんなあなたへ、AWSをはじめる際に役立つ情報をご紹介です。AWSアカウントを新規作成して、EC2の利用申し込みを行うまずAWSのアカウントを作成して、EC2の利用申し込みを行います。さんが書かれた以下の資料が参考になります。このとおりに進めていけば、おおよそ問題無いと思います。ハイフンが必要なので入力するようにして下さい。書式は日本国内のもの、郵便番号8ケタ(ハイフン入り)、電話番号は12〜13ケタ(ハイフン入り)で大丈夫です。電話にびびらないEC2の利用申し込みでAmazonから電話がかかってくる場面があります。実は、はじめてアカウントを作成して利用しようとした時は申込画面も英語版しか無かったので、英語な人から電話がかかってくるのかと思って、それはそれはびびっていました。気持ちの整理を付けるために2,3日かかった記憶があります:Dまあ冷静に考えてみれば分かりますが、人がかけてくるわけではなく、機械がかけてきます。電話を取るとアナウンスが流れるので、あとは画面に表示された暗証番号をプッシュで入力すればokです。(人がかけてくる場面を想像すると面白いですが:-p)暗証番号を入力するとすぐに次の画面に遷移するので、これはこれで近未来な感じがして感動しました。クレジットカードが必要アカウント作成、EC2の利用申し込みは無料ですし、サービスを利用(EC2インスタンスを起動など)しない限りは費用は発生しませんが、クレジットカードの登録は必須となります。ConsoleへアクセスしてEC2インスタンスを起動してみましょう。さんが書かれた資料が参考になります。Services補足としては以下の点あります。Linuxを利用する場合は「ec2-user」ユーザでSSHログインして下さい。他のOSで起動した際は、rootユーザでログインする場合もあるので間違えないようにご注意を。SSHコマンドでログインSSHでログインするツールは、sshコマンドでも何でも良いです。long」というエラーが発生します。DNSからIPを引いて、IP直で指定すればログインできます。(ただしIP変更が起こる場合があるので、可能ならFQDNでログインした方が良いです。LinuxでPHPを利用するには、yumでインストールするだけです。LinuxでインストールされるPHPのバージョンは、5.3.6です。Technologiesあとは必要に応じて、yumコマンドやpear、peclコマンドで追加していきましょう。PHPまずAWSを利用する準備が整いました。AWSはクラウド環境として多種多様なサービスを展開しているのですが、そういったサービスをAPIで操作することができます。EC2インスタンスの起動、停止といった作業がどこからでもAPIで操作できるわけです。Consoleでは操作できない)なサービスがあるくらいです。このAPIを活用すれば、独自の管理コンソールを構築することも可能で、実際そういったサービスも外部ベンダーから提供されています。そんな便利なAPIなのですが、このAPIをPHPから簡単に操作できるようにSDKが提供されています。PHPは以下の環境で動作します。PHPのバージョンさえクリアしておけば、あと必要なのはcURLくらいでしょうか。Linux環境のPHPでは、下記条件は全て満たされていました。PHPはPHPソースで書かれたライブラリです。ダウンロードするだけで利用できますので、お好みの方法でインストールして下さい。ダウンロードgitsubversionpearここではgitでインストールしています。lsAWSSDKforPHP要件やインストール方法はドキュメントがあるのでこちらを参考にして下さい。PHPを実際に利用する際はAWSアカウントの認証情報が必要となります。認証情報はAWSのWebサイトで取得できます。グローバルナビの「アカウント」をクリックします。クリックするとアカウントのメニューが表示されるので下図のように「セキュリティ証明書」をクリックします。セキュリティ証明書ページが表示されたら(もしログイン画面が表示されたらログインして下さい)、下図の「アクセス証明書」を表示します。ここにある「アクセスキーID」「シークレットアクセスキー」が認証情報となります。PHP(以下、SDK)を使ってサンプルを作ってみます。ここでは全リージョンのEC2インスタンスを取得して表示してみましょう。サンプルファイルはSDKが入っているAWSSDKforPHPディレクトリと同じ階層に設置します。sample.phpサンプルソースは以下です。SDKを読み込みます(1)。これはどのサービスに対する処理を書く時も同じです。次は、処理対象のリージョンを連想配列に格納しています(2)。SDKで処理を行う際は対象のリージョンをセットする必要があります。今回のサンプルでは全リージョンに対して処理を行うので、連想配列に格納しておきます。次に、EC2へ処理を行うAmazonEC2クラスをインスタンス化します(3)。コンストラクタにて3-3で確認した認証情報をセットしています。第1引数が「アクセスキーID」、第2引数が「シークレットアクセスキー」となっています。書籍のサンプルなどを見ると認証情報はSDK用の設定ファイルである「config.inc.php」に記載する例が多いのですが、個人的には認証情報は自分で管理したいのでコンストラクタで渡す方法がやりやすいです。ここからAmazonEC2インスタンスに対して処理を行います。set_region()で処理対象のリージョンを設定します(4)。describe_instances()で対象リージョンのEC2インスタンス情報を取得して(5)、リージョン名とインスタンスIDをprintf()で出力しています。この処理を各リージョン毎に行います。実行ではサンプルソースを実行してみましょう。下記結果から、us-westリージョンで1つ、ap-northeast(東京)リージョンで2つのEC2インスタンスが存在していることが分かります。PHPを利用すると簡単な記述でAPIを実行して、AWSを操作することができます。参考書籍Webに様々な情報があるとはいえ、これからはじめるなら、やはり書籍などまとまった情報をじっくり学びたいところです。そこでAWSをこれからはじめるPHPerにおすすめな本をあげてみました。2011クラウド関連の情報が掲載されているムックです。PHPの記事が掲載されています。Tools」を活用したサーバ構築を自動化する記事が参考になりました。ServicesガイドブックAWSを活用するPHPerにはおすすめの定番本です。PHP」を利用したものになっています。PHPガイドブック」にしても良いんじゃないかと思うくらいPHP満載のAWS本です。内容も単に機能紹介を並べているのではなく、実際のWebサイトなどの構築を通じてAWSの各サービスを活用するアイデアが書かれています。PHP」のドキュメントが公開されています。導入方法にTips、そしてリファレンスが揃っており、SDKを活用していくには必須の内容となっています。PHPAWSを触ってみましょういよいよクラウドの本格利用がはじまる今だからこそ、多種多様なクラウドサービスを個人で利用できるAWSを通じてクラウド利用の勘所を掴んでおくというのが大切だと思います。PHP」の存在により、PHPコードで手軽にそういったサービスをプログラムで操作することができます。無料利用枠も提供されていますので、まだの人はぜひ一度AWSを使って、「プログラマブルデータセンター」と呼ばれるクラウド環境を体感してみてください。Tools」を活用したサーバ構築を自動化する記事が参考になりました。該当の記事を執筆した者です。参考になったようでよかったです。8:51katsujiさん:コメントありがとうございます!実際の運用に即した内容がとても参考になりました。あまりに入門すぎるけど、指導用にはちょうどいいかな。それにしても、Cinema4dは日本語情報があまりに少ない。Serviceを利用して書籍検索するプログラムをつくる。API認証のためのシグネチャを作る部分がキーとなる。