パスワードを忘れた? アカウント作成
37391 journal

Ab.の日記: ESXi で CIM ってみました 4

日記 by Ab.
まず VMware から VMware CIM SMASH/Server Management API をダウンロード。
中には C++, Java, Python のサンプルがあったので一番動かすのが簡単そうな Python で試してみました。
他に必要な PyWBEM を拾ってきて展開して、host の指定の仕方が良く分からなかったりしたのでソース見たりしながらちょっと試行錯誤。

cim_sdk_27701\python>python listVMs.py https://esxi.xxx.xxx:5989 root "xxx"
VM Details:
  ElementName "FreeBSD7"
  Name "32"
  Powere state - powered off

仮想マシンの列挙とその状態は取れるようです。
でも他のサンプルはエラーになりました。

cim_sdk_27701\python>python listPools.py https://esxi.xxx.xxx:5989 root "xxx"
Traceback (most recent call last):
  File "listPools.py", line 22, in <module>
    pools = client.EnumerateInstances('CIM_StoragePool', LocalNamespacePath = NS
)
  File "/cygdrive/d/Usr/SRC/VMWare-CIM-SDK/cim_sdk_27701/python/pywbem/cim_operations.py", line 392, in EnumerateInstances
    **params)
  File "/cygdrive/d/Usr/SRC/VMWare-CIM-SDK/cim_sdk_27701/python/pywbem/cim_operations.py", line 215, in imethodcall
    raise CIMError(code, tt[1]['DESCRIPTION'])
pywbem.cim_operations.CIMError: (1, u'invalid imethodcall XML')

cim_sdk_27701\python>python listFCHBAs.py https://esxi.xxx.xxx:5989 root "xxx"
Traceback (most recent call last):
  File "listFCHBAs.py", line 22, in <module>
    ports = client.EnumerateInstances('CIM_FCPort', LocalNamespacePath = NS)
  File "/cygdrive/d/Usr/SRC/VMWare-CIM-SDK/cim_sdk_27701/python/pywbem/cim_operations.py", line 392, in EnumerateInstances
    **params)
  File "/cygdrive/d/Usr/SRC/VMWare-CIM-SDK/cim_sdk_27701/python/pywbem/cim_operations.py", line 215, in imethodcall
    raise CIMError(code, tt[1]['DESCRIPTION'])
pywbem.cim_operations.CIMError: (1, u'invalid imethodcall XML')

また、付いてきたSDKのドキュメント読んでも S.M.A.R.T. 的なステータスが取れるところは無かったようなので、ESXi はこれでひとまず終了、かな。
ESX にしたら host の Linux から smartmontools で取れるのかもしれないけど値段的に無理でやんす。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • ESXiもsshで入れますよ
    http://www.vm-help.com/esx/esx3i/ESXi_enable_SSH.php [vm-help.com]

    まぁ、ipmitool入ってませんけどね
    • どうもです。
      実は日記には書いてませんが、ssh の enable は一番最初にやってしまっています。
      S.M.A.R.T. 方面は smartctl をバイナリで持ち込んで試してみてもいいのかもしれませんが、 ESXi は /dev も /proc もスカスカで実行ファイルは busybox で、確かカーネルは Linux ではないって言ってるしで、他所からバイナリを持ち込んでも動きそうにない気がして試してません。

      ハードウェアモニタ系で ipmi っていうのもあるんですね。
      これも面白そうです。
      FreeBSD にも ipmi.ko ってあったし、後で触ってみよう。
      親コメント
  • 今 ESX 2.5 で運用してて、そろそろ次を考えなきゃならないんで
    興味津々で読んでます。人柱?ありがとう!って書くと怒られるか・・・

    個人的には PyWBEM の存在を知ったのがありがたい。
    SNMP 一辺倒だったので WBEM はWindows(WMI)くらいしか
    身近になく、そんなの関係ねぇって思ってたんですが、
    Python で WBEM が覗けるとなるとツール作ってみたくなるなぁ。

    VMware と関係のない話題になってしまってスマソ
    --
    屍体メモ [windy.cx]
    • 自分も今回 CIM って初めて知ったクチですが、モニタリングマニア? には美味しい所ですね。
      ESXi も HDD/USB の無理矢理ブートになった時点で結構諦め気味ですし、自分でも色々実験のつもりでやってるので、人柱ちっくなのは重々承知です。
      まさか datastore が消え失せるとは思いませんでしたが…
      親コメント
typodupeerror

海軍に入るくらいなら海賊になった方がいい -- Steven Paul Jobs

読み込み中...