本文へジャンプします。

ニフティクラウド API REST、SDK for Java、CLI の提供を開始しました

本日、ニフティクラウド API のアップデートを行い、以下の機能が利用できるようになりました。

REST API

SOAP API と合わせて REST API も利用できるようになりました。
今後の機能バージョンアップは SOAP/REST ともに対応していく予定です。

SDK for Java

REST API を使用した Java 用のライブラリを提供いたします。
Eclipse 等、お使いの IDE からニフティクラウドのプログラムが可能になります!

CLI

SDK for Java をラッピングしたシェル(Linux 用)、バッチ(Windows用)を提供いたします。
コマンドラインからニフティクラウドの操作が可能となり、コーディングの知識が無くてもリソースの自動運用が実現できます!

機能追加

サーバーのコピー、イメージ化、ロードバランサーの操作に対応しました。
SOAP/REST/SDK/CLI のすべてで利用可能です。

今回は、この中から CLI の利用方法について具体的にご紹介したいとおもいます。
CLI の詳しい使い方は以下から。

CLI を使ってみる

今回リリースされた CLI を使ってサーバーの作成、停止、起動をやってみたいと思います。
簡単な操作ですが、cron やタスクスケジューラ等に組み込むことで定時にサーバーを上げ下げしたり、バッチ処理でサーバーを増やしたり、といった事が自動でできるようになります。

CLI のダウンロード

以下からダウンロードして、お好みの場所に展開してください。
http://cloud.nifty.com/api/sdk/NIFTY_Cloud_api-tools.zip

AccessKey/SecretAccessKey の取得

CLI は、サーバーとの通信にREST API を使っているので、AccessKey/SecretAccessKey の取得が必要になります。
AccessKey/SecretAccessKey はコントロールパネルから取得できます。

1.コントロールパネルから「API認証」をクリックします。

001_2

2.認証キーの「新規作成」ボタンをクリックします。

002

3.確認ダイアログが出ますのでOKボタンをクリックします。

003

4.SecretAccessKeyが表示されるので、コピーして保存しておきます。

004

 【ご注意】
SecretAccessKey が外部に漏れると、第三者から API が実行される可能性があります。外部に漏れないよう、SecretAccessKey の取り扱いには十分ご注意ください。

5.ダイアログを閉じると、認証キー欄にAccessKeyが表示されているので、こちらもコピーして保存しておきます。

005

Java 実行環境

CLI は SDK for Java をラッピングしていますので、Java 実行環境が必要になります。
Java SE 6 Update7 以降に対応していますので、インストールされていない場合は、以下からダウンロードしてインストールしてください。
http://www.java.com/ja/download/

環境変数の設定

以下の環境変数をセットします。
※以下は Windows の場合の例です。

NIFTY_CLOUD_HOME CLI の zip を展開したパス
NIFTY_ACCESS_KEY_ID コントロールパネルから取得した AccessKey
NIFTY_SECRET_KEY コントロールパネルから取得した SecretAccessKey
PATH %NIFTY_CLOUD_HOME%\bin
動作確認

nifty-describe-images コマンドを実行してみます。

> nifty-describe-images

以下のような結果が返って来れば成功です。
エラーになる場合は、AccessKey/SecretAccessKey、環境変数などを見直してみてください。

IMAGE  1   CentOS 5.3 32bit Plain                available  public    i386    machine      centos   disk
IMAGE  2   CentOS 5.3 64bit Plain                available  public    x86_64  machine      centos   disk
IMAGE  3   Red Hat Enterprise Linux 5.3 32bit    available  public    i386    machine      redhat   disk
IMAGE  4   Red Hat Enterprise Linux 5.3 64bit    available  public    x86_64  machine      redhat   disk
IMAGE  6   CentOS 5.3 32bit Server               available  public    i386    machine      centos   disk
IMAGE  7   CentOS 5.3 64bit Server               available  public    x86_64  machine      centos   disk
IMAGE  12  Microsoft Windows Server 2008 R2      available  public    x86_64  machine      windows  disk
サーバーの作成

サーバーの作成は nifty-run-instances コマンドを実行します。
最低限必要なオプションは以下の通りです。

–accounting-type 料金プラン 1:月額課金 2:従量課金(指定しない場合は従量課金になります)
–instance-type タイプ(mini~large16までを指定します)
–instance-id サーバー名(指定しない場合は自動的に名前が付与されます)
–key SSHキー名(サーバーにログインするためのSSHキーを指定します)
–password root のパスワード(Windows の場合は –admin も指定します)
OSイメージID nifty-describe-images コマンドで表示されるイメージIDを指定します。

ここでは、以下のサーバーを作って見たいと思います。
・料金プラン:月額(1)
・タイプ:mini
・サーバー名:api001
・OSイメージ:CentOS 5.3 64bit Server (7)

> nifty-run-instances --accounting-type 1 --instance-type mini --instance-id api001 --key key001 --password ****** 7

以下、結果が返ってくれば作成要求自体は成功です。

INSTANCE  api001  CentOS 5.3 64bit Server      pending  key001      mini  2011-03-23T10:49:01+09:00  ap-japan-1a      monitoring-disabled          disk    1

↑ただし、ステータスが「pending」となっているので、まだ作成処理中になります。

サーバーの状態確認

上記で作成したサーバーの状態を確認するためには nifty-describe-instances コマンドを実行します。
オプションにはサーバー名を指定しますが、指定しない場合はすべてのサーバーの情報を取得できます。

今回は一台だけしか作成していないのでオプション無しで実行してみます。

> nifty-describe-instances
INSTANCE  api001  7      pending  key001      mini  2011-03-23T10:49:01+09:00  ap-japan-1a      disabled          disk  1

先ほど作成したサーバー情報が取得できましたが、まだ「pending」の状態ですので処理中になります。
しばらく待ってから再度実行してみます。

> nifty-describe-instances
INSTANCE  api001  7  111.*.*.*  10.*.*.*  running  key001      mini  2011-03-23T10:49:01+09:00  ap-japan-1a      disabled  111.*.*.*  10.*.*.*  disk  1

ステータスが「running」となり IP アドレスも取得できている事が確認できます。

コントロールパネルでもサーバーが作成されている事を確認してみましょう。

006
↑めでたく作成されました。

サーバーの停止

サーバーの停止は nifty-stop-instances を実行します。
オプションにはサーバー名を指定します。

先ほど作成したサーバーを停止してみます。

> nifty-stop-instances api001
INSTANCE  api001  running  pending

しばらく待ってから nifty-describe-instances を実行してみます。

> nifty-describe-instances
INSTANCE  api001  7      stopped  key001      mini  2011-03-23T10:49:01+09:00  ap-japan-1a      disabled          disk  1

ステータスが「stopped」になっている事が確認できます。

サーバーの起動

サーバーの起動は nifty-start-instances を実行します。
オプションにはサーバー名を指定しますが、タイプ、料金プランを指定して起動することもできます。

今回は、タイプを small にして起動してみます。

> nifty-start-instances "api001,instance-type=small"
INSTANCE  api001  stopped  pending

しばらく待ってから nifty-describe-instances を実行してみます。

> nifty-describe-instances
INSTANCE  api001  7  111.*.*.*  10.*.*.*  running  key001      small  2011-03-23T10:49:01+09:00  ap-japan-1a      disabled  111.*.*.*  10.*.*.*   disk  1

ステータスが「running」、タイプも「small」になっている事が確認できます。

REST API、SDK for Java について

今回、ご紹介しました CLI も含め、REST API、SDK for Java については、以下に詳しい説明がありますのでご参照ください。
http://cloud.nifty.com/api/

ニフティクラウド 導入相談窓口
ニフティクラウド 無料セミナー

閉じる

閉じる

クラウドブログ編集部

クラウドブログ編集部

ニフティクラウド ユーザーブログ編集部のアカウントです。 編集部からのお知らせや、レギュラーライター以外のゲストによる寄稿記事を掲載していきます。

浜中 慶

浜中 慶

1980年、神奈川県生まれ。2003年ニフティ入社。 ポータルサイト開発を中心に、音楽配信サービス、CGMサービスなど様々なプロジェクトに企画/デザイン/システム担当として参加。現在は@niftyのポータルサービス向けコンテンツ管理システムの企画/開発/運用を担当。

吉田 雄哉

吉田 雄哉

株式会社co-meetingの創業メンバー。「取締役&External- facing Technologist」と名乗り新しいIT技術を広く伝える活動とWebアプリケーション開発を行う毎日。パッケージベンダーでのSaaS立上げ・製造業の情報システム部門で企画やPM・受託開発と従事してきたため、ベンダーサイドとユーザサイド の両方の視点を持ち合わせる。

石田 健亮

石田 健亮

株式会社ドリーム・アーツで小売事業者向けSaaS「Shopらん」を企画、開発。メインの仕事はプログラマーだがサーバー管理や営業もこなすユーティリティプレイヤー。最近好きな事はパフォーマンスチューニング。特に並列化プログラミングがマイブーム。キライなことはデータセンターでの作業。騒音と乾燥が弱点。ニフティクラウドでデータセンターに行く必要が無くなったことが本当の利点だ と思っている。

五月女 雄一

五月女 雄一

ニフティでは「インフラを守る簡単な様で奥が深いお仕事」をしています。 夢はインフラの気持ちが読めるエンジニアになること。

わたなべ かずひろ

わたなべ かずひろ

専門学校卒業後、ソフトウェア開発会社で電力系統制御システムの開発に従事。その後、CD-ROM等マルチメディア系PCソフトの開発を経て、1998年フリーランスに。 2000年8月に株式会社イーツーの設立に参画。携帯を含む様々なWeb系のシステム開発に携わる。現在はiPhone/Androidアプリなどの開発も手がけている。

市角

市角

ニフティクラウドのコントロールパネル設計・開発をメインに、たまにインフラの運用やお手伝いもやっていたりします。コントロールパネルや新機能の活用方法、アイデアなどを中心に書いていく予定です。

仲山 昌宏

仲山 昌宏

歌って踊れるインフラエンジニア兼、PHPもRubyもJavaも書くPerl使い。 物理サーバの運用に飽きて、フルラックに格安サーバ詰めて自宅プライベートクラウドを構築中。 今年は個人的には分散処理を攻めていきます。

猪飼 賢広

猪飼 賢広

1984年、愛知県名古屋市生まれ。大学は福島県にある某大学。2008年ニフティに入社。 開発系部署に配属後、主に各種テーマサイト開発のシステム面調整、開発進行管理役などとして参加。 現在もPC・ガラケーサイトの開発まわりを担当。インフラまわりを触る案件にも携わっており、日々修行中。 好きな芸人はなかやまきんに君とレイザーラモンRG。

久江 裕之

久江 裕之

ニフティクラウドのインフラ運用、OS提供の仕事をしています。 新しいOSやイメージが出る時にこのブログでご紹介いたします。入社5年目。一流のインフラエンジニアを目指して日々勉強中。

竹内 豪

竹内 豪

ニフティクラウド エンジニア

山口

山口

ニフティクラウドの基盤設計、新サービス/アライアンス/インフラ企画、その他雑用全般を担当しています。 クラウドに欲しい機能や、こんなふうに使ってほしいという想いが共有できれば良いですね。

芳中 隆幸

芳中 隆幸

ニフティクラウドの開発、運用を担当しています。

酒井 浩平

酒井 浩平

ニフティクラウドの中にいます。 ネットワークまわりの運用・開発や自動化などに取り組んでいます。 すべてのエンジニアを幸せにすることを目指しています。

higebu

higebu

ニフティクラウド IaaSのエンジニアです。 ネットワーク、DRサービス with VMware vCloud® Air™ Technology辺りの担当をしています。

武田

武田

ニフティクラウドの開発・運用を担当しています。 各種機能の内容についてなどで執筆させていただく予定です。

福澤真

福澤真

ニフティクラウドのコンパネ開発、運用をしています。

森藤 大地

森藤 大地

データに関する仕事が好きです。

宮原徹

宮原徹

日本仮想化技術株式会社 代表取締役社長兼CEO。仮想化技術に関するコンサルタントとして長年活動しており、特にベンチマークテストによる性能評価を得意としている。

荒谷翔

荒谷翔

株式会社はてなでMackerelのセールスデベロッパーとして勤務しています

東條 望

東條 望

2014年にニフティへ中途入社。 入社後から現在まで、ニフティクラウドのサービス企画・開発を担当しています。 各サービスの紹介を執筆させていただく予定です。

世良迪夫

世良迪夫

ニフティクラウドのRDBなどを担当しています