そして、以前作成したCloudStack API用ライブラリがIDCFクラウド以外のサービスでも利用できるか確認してみます。
対象のクラウドサービスはこちらを参考に選んでみました。下記3つです。
Tata Communications
KT
logicworks
それでは、登録から始めます。
- Tata Communications
サービス名:InstaCompute
申込方法:上記URL先の上部に「Free Trial」があるので、こちらをクリック。名前などの情報を入力。しばらくすると(私の場合は翌日)、インドから電話がかかり、本人確認をされる。(mailなどいくつかの質問に回答)。その後、mailにてTrialCodeが送付され、登録するとサービス利用可能になる。
操作画面:下記はlogin後のコンパネ画面。いろいろとタブが並んでいます。 - KT
サービス名:uCloud
申込方法:上記URL先にいくとハングルの画面になりますので、右上の「English」で英語に切り替えます。左側の「Register」からまずは、メンバー登録を行います。メンバー登録はすんなり完了できたのですが、その後、個人情報を入力する際「SocialSecurityNumaber」を求められたので断念しました。ここまで。 - logicworks
サービス名:infiniCloud
申込方法;前回同様に、クレジットカード登録でエラーになったので今回も断念。
結局、ちゃんと登録できたのはTataだけでした。。。
引き続き、TataにてCloudStack APIを試します。手順は下記の通り。
- コンパネのAccount Administration > My Accountより、Cloud API KeyとCloud Secretを確認
- 次に、Support > Developer APIより、API操作に必要な情報(Base_URLとAPI Path)を確認
同じような情報は下記でも公開されています。
http://instacompute.com/service-details/api/
- 上記情報を参考にsignatureを作成。
(手順自体はCloudStack APIと同じ) - 最後にURL全体を構成しAPIサーバにアクセス。
(base_url,api_pathのクラウド情報、api key,secret keyのユーザ情報のみ変更。このコマンドでは、第1引数でサービス名を指定することで、対象サービスを切り替えることができるようにしています)
もちろん、他の言語でも作成可能です。
listZonesの場合、下記のようなresponseを得られました。
listVirtualMachinesなども正常にresponseを得ることができましたが、ここでは割愛します。
以上より、CloudStack APIを利用して、IDCFクラウド以外の(CloudStackを使用している)クラウドサービスを操作できることを確認できました。
listVirtualMachinesなども正常にresponseを得ることができましたが、ここでは割愛します。
$ ./cs-api.pl tata listZones
{
"listzonesresponse" : {
"zone" : [
{
"name" : "India-South-01",
"id" : "1"
}
]
}
}
以上より、CloudStack APIを利用して、IDCFクラウド以外の(CloudStackを使用している)クラウドサービスを操作できることを確認できました。