○IDCFクラウドとAPIについて
IDCFクラウドとはIDCFrontierが提供しているクラウドインフラストラクチャーサービスです。
コンピューティング、オブジェクトストレージ、コンテンツキャッシュ、連携サービス、データ分析などのサービスを利用でき、”クラウドサービスを「最速」に提供する”をキーワードとしてシステムの設計が行われています。
IDCFクラウドでは仮想化基盤としてCloudStackを採用し、世界で広く利用されているオープンソースのCloudStack APIを無料で公開しています。
APIでは仮想マシンの作成/削除、スナップショットの取得やボリュームの追加、オートスケール (自動拡張・縮退)などが行えます。
○IDCFクラウドAPIの導入方法
公式ホームページにはMac OSXとUbuntu、CentOSへの導入方法しか載っていませんが、
実はWindowsにも導入することができます。
Windowsへの導入手順について説明していきます。
1.インストール
APIを使用するために必要なgitとpip、コマンドラインツールをインストールします。
まずはgitのダウンロード、インストールです。
参考サイトの「Downloading Git」にアクセスすると、自動的にgitの最新版がダウンロードされます。
ダウンロードが完了したら、インストールを行います。
以下インストール手順です。
インストール先は「C:\Program Files\Git」のままで、「Next」をクリックします。
「Use Git from the Windows Command Prompt」のままで「Next」をクリックします。
「Use OpenSSH」のままで「Next」をクリックします。
「Use the OpenSSL library」のままで「Next」をクリックします。
「Checkout as-is, commit as-is」を選択し「Next」をクリックします。
「Use Windows’ default console window」を選択し「Next」をクリックします。
インストール後、以下のコマンドをコマンドプロンプトで実行します。
正しくインストールされていればgitのバージョンが表示されます。
> git --version git version 2.12.2.windows.1
次にpipのダウンロード、インストールです。
pipはPythonのパッケージ管理ツールなので、Pythonをダウンロードしインストールします。
参考サイトの「python」にアクセスし、pythonのRelease versionから2.x.x系の最新版を探しクリックします。「Windows x86-64 MSI installer」または「Windows x86 MSI installer」をクリックしダウンロードします。
ダウンロードが完了したら、インストールを行います。
以下インストール手順です。
「Install just for me (not available on Windows Vista)」を選択し、「Next」ボタンをクリックします。
インストール先は「C:\Python27\」のままで、「Next」ボタンをクリックします。
「Add python.exe to Path」をクリックし「Will be installed on local hard drive」を選択し「Next」ボタンをクリックします。
インストール後、以下のコマンドをコマンドプロンプトで実行します。
正しくインストールされていればpythonとpipのバージョンが表示されます。
> python --version Python 2.7.13 > pip --version pip 9.0.1 from c:pyshon27\lib\site-packages (python 2.7)
最後に以下のコマンドをコマンドプロンプトで実行し
コマンドラインツール(CloudStack API)をインストールします。
正しくインストールされていればCloudStack APIのバージョンが表示されます。
> pip install git+https://github.com/idcf/cloudstack-api > cloudstack-api --version cloudstack-api v0.10.2
2.IDCFクラウドAPIの使い方
まずIDCFクラウドへログインしアカウントのAPIキー、シークレットキー、APIエンドポイントを確認しメモします。
Windowsのエクスプローラに「cmd.exe」と入力しコマンドプロンプトを起動させます。
以下のコマンド実行して、「C:\Users\ログインユーザ名」に、「.idcfrc」ファイルを作成します。
> copy null .idcfrc 1個のファイルをコピーしました。
メモ帳などで「.idcfrc」を開きアカウントのAPIキー、シークレットキー、APIエンドポイントを設定します。
[account] host=APIエンドポイント api_key=アカウントのAPIキー secret_key=シークレットキー
以下のコマンドをコマンドプロンプトで実行します。正常に設定されていれば以下のようなパラメータが表示されます。
> cloudstack-api listZones { "listzonesresponse": { "count": 1, "zone": [ { "allocationstate": "Enabled", "dhcpprovider": "VirtualRouter", "id": "aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa", "localstorageenabled": false, "name": "tesla", "networktype": "Advanced", "securitygroupsenabled": false, "tags": [], "zonetoken": "bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb" } ] } }
以上がWindowsへの導入手順です。
Windowsにも簡単にIDCFクラウドAPIを導入できることがわかって頂けたかと思います。
API Referencesの通りにコマンド実行すれば、
サーバの情報取得やサーバの起動・停止、スペック変更も簡単に行うことができます。
例えば、サーバの情報を取得するには、以下のコマンドを実行します。
実行すると、仮想マシンのIDと名前などを取得できます。
> cloudstack-api listVirtualMachines -t name,id +------------------+--------------------------------------+ | name | id | +------------------+--------------------------------------+ | aaaaaaaaaaaaaaa | bbbbbbbb-cccc-dddd-eeee-ffffffffffff | +------------------+--------------------------------------+
また以下のコマンドでサーバの情報をテキストに出力することもできます。
cd /d %~dp0 SET SERVER_ID=bbbbbbbb-cccc-dddd-eeee-ffffffffffff cloudstack-api listVirtualMachines --id %SERVER_ID% -t id,name,state,serviceofferingname,cpunumber,cpuspeed,memory > 対象サーバ情報.txtt
さらにAPIのコマンドは様々なアプリケーションに組み込めるメリットがあります。
IDCFクラウドのサーバをWindowsで管理したい方やアプリケーションで管理したい方は
この機会にIDCFクラウドAPIを導入してみてはいかがでしょうか。
<参考サイト>
・Downloading Git
・python
・IDCFrontier API References