vCenterに登録しているESXiと仮想マシンの情報を取得してExcel(xlsx)ファイルに出力するツールを作ってみました。
vmware-InvEx
https://github.com/sky-joker/vmware-InvEx
モジュールはpyvmomiとopenpyxlを使っています。
作った理由
- openpyxlを使ってExcelファイルを作ってみようと思って勉強がてらに
- Excelで作れば棚卸し系で使えるかもと(Excel台帳!!)
取得できる情報
ESXi
項目 | 説明 |
---|---|
HostName | ESXiのホスト名 |
Vendor | サーバのベンダー |
Model | サーバのモデル |
uuid | vCenterが識別で使用しているESXiのuuid |
BIOS Version | BISOバージョン |
CPU Hz | CPUの周波数 |
CPU Socket | CPUのソケット数 |
CPU Core | CPUのコア数 |
CPU Thread | CPUのスレッド数 |
CPU HyperThread | ハイパースレッドの有無(有効:TRUE/無効:False) |
Memory Size | サーバのメモリー容量 |
ESXi Version | ESXiのバージョン |
ESXi Build Version | ESXiのビルドバージョン |
ESXi Cluster | ESXiが所属してるクラスタ名 |
ESXi Datastore | ESXiがマウントしているデータストア(カンマ区切りで出力) |
ESXi VM | ESXi上に存在するVM数 |
ESXi ManageIP | ESXi管理IP |
ESXi SubnetMask | ESXi管理IPのサブネットマスク |
ESXi MacAddress | ESXi管理IPが設定されているNICのMacAddress |
ESXi ManagePG | ESXi管理IPのポートグループ |
ESXi DefaultGW | ESXi管理IPのデフォルトゲートウェイ |
ESXi DNS | ESXiに設定されているDNS |
VirtualMachine
項目 | 説明 |
---|---|
HostName | 仮想マシンの仮想マシン名 |
InstanceUuid | vCenterが識別で使用している仮想マシンのInstanceUuid |
ResourcePool | 仮想マシンが所属しているクラスタ or ESXiホスト |
VMwareTools Status | VMwareToolsのステータス |
VMwareTools Version | VMwareToolsのバージョン |
OS | 仮想マシンのOSタイプ |
CPU Socket | CPUのソケット数 |
CPU Core | CPUのコア数 |
CPU Reservation | CPUの予約 |
CPU Limit | CPUの制限 |
Memory Size | 仮想マシンのメモリー容量 |
Memory Reservation | Memoryの予約 |
Memory Limit | Memoryの制限 |
CDROM | CD/DVDのマウント情報(存在しない場合は空) |
Floppy | Floppyのマウント情報(存在しない場合は空) |
USB | USBのマウント情報(存在しない場合は空) |
Disk Total Size | 仮想マシンのvmdk合計容量 |
IPAddress | 仮想マシンに設定されているIPアドレス(VMwareToolsから取得) |
Network Adapter N PG | 仮想マシンのネットワークアダプターの接続先ポートグループ情報(最大10) |
使い方
(1) 引数にvCenterを指定します。
1 2 3 |
$ ./vmware-InvEx.py -vc vcenter.local $ ls output.xlsx |
(2) 出力するファイル名を変更します。
1 2 |
$ ./vmware-InvEx.py -vc vcenter.local --output hoge.xlsx |