API連携を試してみた【その1】PostmanでAPIコールの動作を検証
Sunbird dcTrackとは、データセンターインフラ管理(DCIM)システムであり、データセンターの主に物理インフラ(ラック・設備機器・IT機器など)のアセット情報をデータベースに格納し、管理します。また、dcTrackはREST APIをサポートしており、APIリクエストのソースコードは一般に公開されています。
最近、dcTrackを実際に導入している顧客で、外部システムとのデータ連携を行う要件が上がりました。実際にはパートナーの協力を得て連携システムの開発を進めようとしている段階ですが、我々もある程度理解しておく必要があると感じました。私自身はAPIに関して初心者ですが、いくつか試すことができ、実際にデータをうまく連携させることができましたので、その奮闘記録を数回のシリーズに分けて紹介します。
第1回目は、「Postman」というツールを使ってAPIの動作テストを行ったお話です。
「Postman」は、世界中で多くの開発者が利用している無料のAPI開発支援ツールで、日本語GUIへの切り替えも可能です。今回、APIの動作テストを行うのに、このPostmanを利用することにしました。
Postmanにはインストール不要のウェブ版もありますが、私はアプリ版をインストールしました。インストールから初期設定などのステップは他のサイトでも紹介されていますので、ここでは割愛します。
Postmanを起動して、まず「コレクション」メニューから新しいコレクションを作成しました。「認証」タブで、これからテストを行うサーバーへの認証方式や認証情報を登録しておくと便利です。次にコレクションを右クリックして「リクエストを追加」を選ぶと、「新規リクエスト」の項目が追加されます。簡単に説明すると、あとはそこに試したいAPIコールを入力・設定して実行するだけです。APIがうまく動作すれば、下段ペインにAPIレスポンスが返されます。
今回は、いろいろと試した中の一つである「新しいラックを追加」してみた検証についてご紹介します。
まず、テストをする前のdcTrackのフロアマップは以下のような状態です。今回はまだラックが立っていない「D10」のスペースにラックを追加したいと思います。
次に、SunbirdのAPIガイドページから試したいAPIコールをコピーし、Postmanにペーストします。今回使ったのは「[v2] Create a New Item」の「Create a Cabinet」です。
上部の入力欄に “https://(サーバーのIPアドレス)/api/v2/dcimoperations/items?returnDetails=true” を入力し、メソッドは「POST」を選びました。
ボディ欄では「Raw」を選択し、コピーしたサンプルコードをペーストしてから今回の内容に書き換えました。
ちなみに、我々のテスト用サーバーはSSL証明書を登録していないので、「設定」タブで「SSL証明書の検証を有効にする」をオフにしないとエラーが発生します。そこで設定を変更しました。
これで準備が整いましたので、送信ボタンをクリックします。すると、下段ペインにAPIレスポンスが返され、正常に動作したことが確認できました。
確認のためにdcTrackのGUIに戻り、先ほどのフロアマップを開いてみると、新しいラックが登録されていることが確認できました。
Postmanは最初はとっつきにくい印象がありましたが、実際に使ってみると意外に簡単に動作テストが行えることが分かりました。他にもGETリクエストでdcTrackからデータを取得するテストなど、いくつかのパターンを試してみました。
APIの動作の基本がわかったので、次回は実際に外部アプリケーションとのデータ連携を試してみた結果をご紹介したいと思います。具体的には、dcTrackからAPI経由で取得したデータをExcelのシート上に展開するというテストです。
今回、自分でAPI連携を試してみて、あらためてその大きな可能性を実感しました。データセンターでの日々の運用は非常に煩雑であり、運用担当者の共通の願いは、いかに運用を自動化し簡素化できるか、ということだと思います。
Sunbird DCIMはそれ自体でデータセンター運用を簡素化し、効率化するシステムですが、これにAPI連携を加えれば、運用にかかる工数をさらに削減できるのは間違いありませんね!