質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PowerShell

Windows PowerShellはコマンドラインインターフェースであり、システム管理を含むWindowsタスク自動化のためのスクリプト言語です。

Q&A

2回答

1644閲覧

powershellでvmのHDD使用率一覧を知りたい

shigoto

総合スコア30

PowerShell

Windows PowerShellはコマンドラインインターフェースであり、システム管理を含むWindowsタスク自動化のためのスクリプト言語です。

0グッド

1クリップ

投稿2017/11/08 01:56

powershellでhyper-vのゲストvmのHDD使用率一覧を知りたい
のですが、どうしたらいいのでしょうか。

例使用率60%以上のゲストvm一覧とか
だせますでしょうか。。

よろしくお願いします。

ホスト機:windows2012r2

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

こんにちは。
通常Hyper-VでホストからはゲストのVHD単位での割り当てサイズと使用サイズまでなら求めることができ、VHD全体での使用率なら算出可能です。

ざっくり以下の様な感じになります。

powershell

1Get-VM | ForEach-Object { 2 $VMName = $_.Name 3 Get-VHD -VMId $_.ID | ForEach-Object { 4 [PSCustomObject]@{ 5 VMName = $VMName; 6 VHDPath = $_.Path; 7 UsedGB = [Math]::Round($_.FileSize/1GB, 2); 8 AllocatedGB = [Math]::Round($_.Size/1GB, 2); 9 PCTUsed = [Math]::Round($_.FileSize / $_.Size, 4) * 100; 10 } 11 } 12}

ただ、おそらくshigotoさんが求めているのはゲストの各ドライブ毎の使用率かと思います。
残念ながらドライブ毎の使用率はホストから求めることはできません。

PowerShell Remotingなどで個々のゲストVMに接続してドライブ毎の使用率を求めてやる必要があります。
やり方はたくさんありますが簡単な一例を挙げておきます。

powershell

1$block = { 2 Get-PSDrive -PSProvider FileSystem ` 3 | Where-Object { $null -ne $_.Free } ` 4 | ForEach-Object { 5 [PSCustomObject]@{ 6 VMName = $env:COMPUTERNAME; 7 DriveName = $_.Name; 8 UsedGB = [Math]::Round($_.Used/1GB, 2); 9 AllocatedGB = [Math]::Round(($_.Used + $_.Free)/1GB, 2); 10 PCTUsed = [Math]::Round($_.Used / ($_.Used + $_.Free) * 100, 2) 11 } 12 } 13} 14Invoke-Command -ComputerName "VM名 or IP" -Credential "認証情報" -ScriptBlock $block

投稿2017/11/29 03:37

stknohg

総合スコア796

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

※要管理者権限

PowerShell

1Enable-VMResourceMetering -VMName * 2Get-VM | Measure-VM

で使用量の一覧なら出ますね。

使用率60%以上というと、こういうことでしょうか…?

PowerShell

1Enable-VMResourceMetering -VMName * 2Get-VM | Where-Object {(Measure-VM $_).TotalDisk * 1000000 -ge (Get-Volume -DriveLetter C).Size * 0.6}

投稿2017/11/08 08:59

de9

総合スコア312

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

shigoto

2017/11/09 07:04

有り難うございます。 Get-VM | Measure-VM だとTotalDisk(M)という合計サイズしか出ないかと思いまして、 使用diskもでるのでしょうか?
stknohg

2017/11/29 03:39

横から失礼します。 Measure-VMではVHDの割り当てサイズのみで使用サイズは取れません。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問