web-dev-qa-db-ja.com

VMwareESX監査

7台のESX3.5サーバー上にある会社の約140台のVMのそれぞれに関するさまざまな情報を含むExcelスプレッドシートを生成したいと考えています。具体的には、VMは次のとおりです。

  • 名前
  • 割り当てられたメモリ、プロセッサ、ハードドライブ
  • 特定の期間の平均メモリ、プロセッサ使用率
  • 特定の期間における最大メモリ、プロセッサ使用率

スプレッドシートに手動で入力できることはわかっていますが、スケジュールに基づいて実行して状況を監視できるスクリプト(おそらくPowerShell)を探しています。

ありがとう!

5
pezhore

本当に包括的なソリューションが必要な場合は、 VI Power Documenter を確認してください。しかし、それはあなたにとってやり過ぎかもしれません。

これは、探していた情報のほとんどを取得して、もちろんExcelで簡単に操作できるCSVにエクスポートするPowerShellスクリプトです。

param ( $Path )
Connect-VIServer -Server MyVIServer
$HDPrimarySize = @{
    Name = "Primary HD Size (GB)"
    Expression = { $_.HardDisks[0].CapacityKB / 1MB }
}
$AvgMemUsage = @{
    Name = "Mem Usage (Daily Avg %)"
    Expression = { ($_ | Get-Stat -Stat mem.usage.average -MaxSamples 1 -ErrorAction SilentlyContinue ).Value }
}
$vm = Get-VM
$output = $vm | Select-Object Name, MemoryMB, NumCpu, $HDPrimarySize, $AvgMemUsage 
$output | Export-Csv -NoTypeInformation -Path $Path
3
halr9000

VMwareは、おそらくチェックしたいと思うPowershellツールキットをリリースしました。

http://blogs.vmware.com/vipowershell/

そして、VMware管理者が使用すべきPowershellスクリプトトップ10のブログは次のとおりです。

http://vsphere-land.com/top-10-list/top-10-powershell-scripts-that-vmware-administrators-must-use.html

2
SQLChicken

もう1つの答え(SQLに傾倒していて退屈している場合)は、Excelを開き、SQLデータソースに接続し、Virtual CenterをホストしているSQLインスタンスに接続し、VirtualCenterが「裏で」使用するビューをクエリして独自のレポートソリューション。これの利点は、データがSQLからライブで提供され、Excel(または、高度な/退屈な場合はReporting Services)で快適に実行できる場合は完全にカスタマイズ可能であるため、常に最新の状態になることです。

2
SQLChicken

自動化された回答ではありませんが、私は仮想インフラストラクチャクライアントを使用しています。

データセンター、クラスター、またはサーバーレベルをクリックします。 [仮想マシン]タブの[ファイル]メニュー-[リストのエクスポート]を選択します。 Excel、csv、またはWebページにダンプし、マッサージをほとんど行わずに機能します。

また、サーバーの機能をメモフィールドに入力しました。

1
Brian

Get-VMStat は、PowerShellでこれを行う簡単な方法です。 PowerShellを初めて使用する場合のスクリプトの使用方法の概要を説明する ブログ投稿 があります。

1
andyhky