システム情報の取得

機能

指定した仮想ホストのシステム情報を取得します。

取得する項目を次の表に示します。

項目説明
リソースIDシステムで自動的に割り振られたリソースID。仮想ホストを一意に表す。
リソース名仮想ホストのリソース名。
リソース管理画面のリソース一覧エリアに表示される[リソース名]と同じリソース名を出力する。
ホスト名仮想ホストのホスト名。
[リソース編集]画面の[ホスト名]と同じホスト名を出力する。
電源状態※1仮想ホストの電源状態。
仮想ホストの状態によって,次の文字列を出力する。
  • ON
    ・仮想ホストの電源が入っていて,電源を操作中ではない。
    ・仮想ホストが仮想化ソフトウェアのCPUまたはメモリを使用している。
    ・仮想ホストの停止,または強制停止が完了していない。
  • OFF
    ・仮想ホストの電源が切れている。
    ・仮想ホストが起動する途中である。
  • ERROR
    ・仮想ホストに障害が発生している。
  • UNKNOWN
    ・ON,OFF,ERRORに当てはまらない。
    ・電源状態が不明である。
    ・電源状態を取得できなかった。
OS仮想ホスト上のOSの名称(ゲストOSが認識しているOSの名称)。
リソース管理画面のリソース一覧エリアに表示される[OS]と同じOS名を出力する。
プロセッサ名ゲストOSが認識している仮想ホストのプロセッサ名。
リソース管理画面の[システム]タブにある[プロセッサ]に表示されるプロセッサ名と同じプロセッサ名を出力する。
CPUコア数ゲストOSが認識している仮想ホストのCPUコア数。
リソース管理画面の[システム]タブにある[プロセッサ]に表示されるCPUコア数と同じCPUコア数を出力する。
CPUクロック数ゲストOSが認識している仮想ホストのCPUクロック数(単位:メガヘルツ)。
リソース管理画面の[システム]タブにある[プロセッサ]に表示されるCPUクロック数と同じCPUクロック数を出力する。
メモリ容量ゲストOSが認識している仮想ホストのメモリ容量(単位:キロバイト)。
リソース管理画面の[システム]タブに表示される[メモリ]と同じメモリ容量を出力する。
割り当てられているCPUコア数※2仮想化環境管理ソフトウェアまたは仮想化ソフトウェアから収集した仮想ホストのCPUコア数。
[サーバの設定変更]画面にある[CPU]に表示されるCPUコア数と同じCPUコア数を出力する。
割り当てられているCPUクロック数※2仮想化環境管理ソフトウェアまたは仮想化ソフトウェアから収集した仮想ホストのCPUクロック数(単位:メガヘルツ)。
[サーバの設定変更]画面にある[CPU]に表示されるCPUのクロック数と同じCPUクロック数を出力する。
割り当てられているCPUの占有種別※2仮想化環境管理ソフトウェアまたは仮想化ソフトウェアから収集した仮想ホストのCPUの占有種別。
[サーバの設定変更]画面にある[CPU占有種別]に表示されるCPUの占有種別に相当する次の文字列を出力する。
  • SHARED
    CPU占有種別が共有である。
  • OCCUPIED
    CPU占有種別が占有である。
割り当てられているメモリ容量※2仮想化環境管理ソフトウェアまたは仮想化ソフトウェアから収集した仮想ホストのメモリ容量(単位:キロバイト)。
[サーバの設定変更]画面にある[CPU]に表示されるメモリと同じメモリ容量を出力する。
IPアドレス仮想ホストのIPアドレス。
リソース管理画面の[システム]タブに表示される[IPネットワーク]の[IPアドレス]と同じIPアドレスを出力する。
注※1
仮想ホストの電源状態は,次の契機で更新されます。
・設定画面の[監視間隔設定]エリアで[状態監視]を指定して仮想ホストを管理する仮想化ソフトウェアから稼働情報を収集したとき。
・設定画面の[管理リソース一覧]エリアで仮想ホストを管理する仮想化ソフトウェアから構成情報を再収集したとき。
・仮想ホストを操作するタスクが完了したとき。
なお,仮想ホストを管理する仮想化ソフトウェアが,監視停止の状態となっている場合,およびJP1/ITRMから仮想化ソフトウェアに通信できない状態となっている場合は,電源状態は更新されません。
注※2
デプロイやサーバの設定変更機能でリソース割り当てを変更した場合,変更した結果を確認するには,割り当てられているCPUコア数,割り当てられているCPUクロック数,割り当てられているCPUの占有種別,および割り当てられているメモリ容量を確認してください。

APIのサポートバージョン

このAPIは,01.00以降で提供します。

HTTPリクエスト形式

システム情報を取得するAPIのHTTPリクエスト形式を次の表に示します。

項目
MethodGET
URI/jp1itrm/api/instances/リソースID
Query String
(凡例)
-:なし。
注※
リクエストに使用するURIおよびQuery Stringは,APIクライアントで生成するのではなく,仮想ホストの一覧の取得で返却される「システム情報へのリンク」を使用してリクエストしてください。

HTTPステータスコード

200 OK,またはエラーを示すステータスコードが出力されます。

詳細については,「API共通の仕様」の「HTTPステータスコード」を参照してください。

XMLのネームスペース

HTTPステータスコードが,200 OKの場合,http://www.hitachi.co.jp/soft/xml/jp1/itrm/api/instanceを使用します。

XMLのスキーマ

システム情報を格納するスキーマを次の表に示します。

エレメント説明type出現回数
階層1階層2階層3階層4最小最大
instance仮想ホスト。11
@hrefシステム情報を取得するAPIへのリンクアドレス。
1,024文字以内の文字列で表す。
xs:string11
@id仮想ホストID。
0以上の整数で表す。
xs:long11
nameリソース名。
128文字以内の文字列で表す。
xs:string11
hostname仮想ホストのホスト名。
1,024文字以内の文字列で表す。
xs:string11
state仮想ホストの電源状態。
次の種別を表す。
  • ON
    電源ON状態。
  • OFF
    電源OFF状態。
  • ERROR
    エラー状態。
  • UNKNOWN
    状態不明。
xs:string11
os仮想ホスト上のOSの名称。
255文字以内の文字列で表す。
xs:string11
cpuCPU情報。
仮想ホストの一覧の取得では,このエレメントは出力しない。
01
@nameプロセッサ名。
64文字以内の文字列で表す。
xs:string11
@num_of_coresCPUコア数。
1~4,096の数値で表す。
xs:long11
@unitCPUクロック数の単位を表すMHZという文字列。xs:string11
@valueCPUクロック数。
0以上の数値で表す。
xs:long11
memoryメモリ情報。
仮想ホストの一覧の取得では,このエレメントは出力しない。
01
@unitメモリ容量の単位を表すKBという文字列。xs:string11
@valueメモリ容量。
0以上の数値で表す。
xs:long11
allocated_cpu割り当てられているCPUの情報。
仮想ホストの一覧の取得では,このエレメントは出力しない。
01
@num_of_cores割り当てられているCPUコア数。
値が取得できなかった場合,-1となる。
xs:long11
@unit割り当てられているCPUクロック数の単位を表すMHZという文字列。xs:string11
@value割り当てられているCPUクロック数。
0以上の数値で表す。
xs:long11
@occupationType割り当てられているCPU占有種別。
次の種別を表す。
  • SHARED
    CPU占有種別が共有。
  • OCCUPIED
    CPU占有種別が占有。
  • UNKNOWN
    CPU占有種別が不明。
xs:string11
allocated_memory割り当てられているメモリの情報。
仮想ホストの一覧の取得では,このエレメントは出力しない。
01
@unit割り当てられているメモリ容量の単位を表すKBという文字列。xs:string11
@value仮想化ソフトウェアから割り当てられているメモリ容量。
値が取得できなかった場合,-1となる。
xs:long11
ethernet_adapterネットワークアダプタ。
IPアドレスが複数割り当てられている場合は,ethernet_adapterがIPアドレスの個数分,返却される。
仮想ホストの一覧の取得では,このエレメントは出力しない。
00以上の任意の数字
@ip_address仮想ホストのIPアドレス。
IPアドレスが割り振られていない,または取得できないネットワークアダプタの場合,「0.0.0.0」を返却する。
xs:string11
reservations予約情報の一覧。
システム情報の取得では,このエレメントおよび配下のエレメントを出力しない。
01
reservation予約情報。
個別予約期間の個数分,reservationを返却する。
00以上の任意の数字
@id予約ID。
同じ予約内に,同じITリソースで複数の個別予約期間がある場合,reservationごとに重複するIDとなる。
xs:long11
@name予約名。
設定されていない場合,空文字を出力する。
1,020文字以内の文字列で表す。
xs:string11
@realm_id業務グループID。xs:long11
@realm_name業務グループ名。
仮想ホストの一覧の取得の「Query String」で指定された業務グループIDに対応する業務グループ名を,フォルダ名を付けて出力する。
2,048文字以内の文字列で表す。
xs:string11
@commentコメント。
設定されていない場合,空文字を出力する。
1,024文字以内の文字列で表す。
xs:string11
@period_name個別予約期間名。
設定されていない場合,空文字を出力する。
1,024文字以内の文字列で表す。
xs:string11
@start_time個別予約開始日時。
ISO8601形式かつUTCで出力する。
xs:dateTime11
@end_time個別予約終了日時。
ISO8601形式かつUTCで出力する。
xs:dateTime11
performanceパフォーマンス情報。
仮想ホストの一覧の取得の場合に,出力する。
01
@hrefパフォーマンス情報へのリンク。
1,024文字以内の文字列で表す。
xs:string11
storage_volumeドライブ情報。
仮想ホストの一覧の取得の場合に,出力する。
01
@hrefドライブ情報へのリンク。
1,024文字以内の文字列で表す。
xs:string11
actions仮想ホストの操作。
仮想ホストの一覧の取得の場合に,出力する。
01
link仮想ホスト操作へのリンク。00以上の任意の数字
@rel仮想ホストの操作種別。
次の種別を表す。
  • start
    仮想ホスト起動。
  • stop
    仮想ホスト停止。
  • powerOff
    仮想ホスト強制停止。
  • reboot
    仮想ホストリブート。
  • reset
    仮想ホスト強制リブート。
xs:string11
@method操作を実行するときに指定するHTTPメソッドの種別。
次の種別を表す。
  • post
    HTTPのPOSTメソッド。
xs:string11
@href仮想ホストの操作へのリンクアドレス。
1,024文字以内の文字列で表す。
xs:string11
(凡例)
-:なし。
注※
リンクアドレス中のサーバを示す部分には,ユーザー設定プロパティファイル(jp1itrm.properties)のCO.ITRMServerURLキーで設定されたものが使用されます。詳細については,「ユーザー設定プロパティファイル(jp1itrm.properties)」(2. 定義ファイル)を参照してください。

使用例

認証情報にユーザー名「portal01」,パスワード「password」を指定して,リソースID「1」のシステム情報を取得する場合の使用例を示します。

GET△/jp1itrm/api/instances/1△HTTP/1.0
Authorization:△Basic△cG9ydGFsMDE6cGFzc3dvcmQwMQ==

(凡例) △:半角スペース

出力例

リソースID「1」のシステム情報を取得する場合の出力例を示します。

HTTP/1.1 200 OK
Content-Length: 509
Content-Type: application/xml

<?xml version="1.0" encoding="UTF-8" ?>
<instance href="http://localhost:23505/jp1itrm/api/instances/1" id="1"
xmlns="http://www.hitachi.co.jp/soft/xml/jp1/itrm/api/instance">
<name>VM001</name>
<hostname>HOST_01</hostname>
<state>ON</state>
<os>Microsoft Windows Server 2008 R2 Enterprise</os>
<cpu name="Intel(R) Pentium(R)" num_of_cores="2" unit="MHZ" value="2048" />
<memory unit="KB" value="1048576" />
<allocated_cpu num_of_cores="2" unit="MHZ" value="1024" occupationType="SHARED" />
<allocated_memory unit="KB" value="1048576" />
<ethernet_adapter ip_address="192.111.222.120" />
<ethernet_adapter ip_address="192.111.222.130" />
</instance>