IDCFクラウドAPIがWindowsで使える!

投稿者: | 2017年4月14日

○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の最新版がダウンロードされます。
ダウンロードが完了したら、インストールを行います。
以下インストール手順です。

規約を読み「Next」をクリックします。
idcf-api1

インストール先は「C:\Program Files\Git」のままで、「Next」をクリックします。
idcf-api2

そのままの設定で「Next」をクリックします。
idcf-api3

そのままの設定で「Next」をクリックします。
idcf-api4

「Use Git from the Windows Command Prompt」のままで「Next」をクリックします。
idcf-api5

「Use OpenSSH」のままで「Next」をクリックします。
idcf-api6

「Use the OpenSSL library」のままで「Next」をクリックします。
idcf-api7

「Checkout as-is, commit as-is」を選択し「Next」をクリックします。
idcf-api8

「Use Windows’ default console window」を選択し「Next」をクリックします。
idcf-api9

「Install」をクリックしインストール完了です。
idcf-api10

インストール後、以下のコマンドをコマンドプロンプトで実行します。
正しくインストールされていれば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」ボタンをクリックします。
idcf-api11

インストール先は「C:\Python27\」のままで、「Next」ボタンをクリックします。
idcf-api12

「Add python.exe to Path」をクリックし「Will be installed on local hard drive」を選択し「Next」ボタンをクリックします。
idcf-api13

「Finish」ボタンをクリックしインストール完了です。
idcf-api14

インストール後、以下のコマンドをコマンドプロンプトで実行します。
正しくインストールされていれば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