PowerCLI 10.0 で、vRealize Operations Manager(vROps)から
vSAN ディスクグループのメトリック情報を取得してみます。
vROps は、vSAN にかかわる情報も収集していて、
たとえば下記のように vSAN ディスクグループの性能情報を確認することができます。
PowerCLI で vROps に接続することで、同様の情報をコマンド実行で取得することができます。
まず、vROps に接続しておきます。(前回の投稿より)
あわせて、vCenter Server (うちの vCenter アドレスは vc-sv01.go-lab.jp)にも接続しておきます。
PowerCLI> Connect-VIServer vc-sv01.go-lab.jp -Force
今回は、vSAN ディスクグループの情報を取得してみます。
vSAN クラスタのホストから・・・
PowerCLI> Get-Cluster vsan-cluster-01 | Get-VMHost | Sort-Object Name | select Name
Name
----
hv-i21.go-lab.jp
hv-i22.go-lab.jp
hv-i23.go-lab.jp
hv-i24.go-lab.jp
hv-i25.go-lab.jp
hv-i26.go-lab.jp
1台の vSAN ディスクグループを選んで見ます。
PowerCLI> Get-VMHost hv-i21.go-lab.jp | Get-VsanDiskGroup | fl Name,DiskGroupType
Name : Disk group (0100000000424631335f303036315f434233385f323530300053414d53554e)
DiskGroupType : AllFlash
ディスクグループのリソース情報が収集できています。
PowerCLI> Get-OMResource -ResourceKind VirtualSANDiskGroup -Name $dg.Name
Name Health ResourceKind Description
---- ------ ------------ -----------
Disk group (0100000000424... Green VirtualSANDi...
PowerCLI> Get-OMResource -ResourceKind VirtualSANDiskGroup -Name $dg.Name | select Name,AdapterKind,ResourceKind,Status,Health,HealthValue
Name : Disk group (0100000000424631335F303036315F434233385F323530300053414D53554E)
AdapterKind : VirtualAndPhysicalSANAdapter
ResourceKind : VirtualSANDiskGroup
Status : DataReceiving
Health : Green
HealthValue : 100
vSAN ディスクグループでは、下記のような情報を取得されていることがわかります。
PowerCLI> Get-OMResource -ResourceKind VirtualSANDiskGroup -Name $dg.Name | Get-OMStat | select key -Unique | Sort-Object key
Key
---
badge|anomaly
badge|capacityRemaining
badge|compliance
badge|efficiency
badge|efficiency_classic
badge|efficiency_state
badge|fault
badge|health
badge|health_classic
badge|health_state
badge|risk
badge|risk_classic
badge|risk_state
badge|timeRemaining
badge|timeRemaining_whatif
badge|workload
Congestion|compCongestion
Congestion|iopsCongestion
Congestion|logCongestion
Congestion|memCongestion
Congestion|slabCongestion
Congestion|ssdCongestion
DiskI/O|busResets
DiskI/O|commandsAborted
DiskI/O|deviceLatency
DiskI/O|deviceReadLatency
DiskI/O|deviceWriteLatency
DiskI/O|errors
DiskI/O|iopsRead
DiskI/O|iopsWrite
DiskI/O|latencyAvgRead
DiskI/O|latencyAvgWrite
DiskI/O|maxIopsRead
DiskI/O|maxIopsWrite
DiskI/O|readCount
DiskI/O|throughputRead
DiskI/O|throughputWrite
DiskI/O|writeCount
DiskSpace|actual.capacity
DiskSpace|actual.capacity.normalized
DiskSpace|base.demand
diskspace|capacity
diskspace|capacityRemaining
diskspace|capacityRemaining_min
DiskSpace|capacityRemainingValue
DiskSpace|capacityUsage
DiskSpace|capacityUsed
DiskSpace|idletimepercent
DiskSpace|object.capacity
DiskSpace|object.capacity.not.normalized
DiskSpace|object.capacity.with.ha
DiskSpace|object.demand
DiskSpace|object.demand.percent
DiskSpace|object.demand.with.size.recommendation
DiskSpace|object.demand.without.size.recommendation
DiskSpace|oversized
DiskSpace|size.recommendation
diskspace|timeRemaining
diskspace|timeRemaining_whatif
DiskSpace|underusedpercent
diskspace|workload
ReadCache|rateCapacity
ReadCacheRate|actual.capacity
ReadCacheRate|actual.capacity.normalized
ReadCacheRate|object.capacity
ReadCacheRate|object.capacity.not.normalized
ReadCacheRate|object.capacity.with.ha
summary|capacityRemaining_min
summary|idle
summary|poweredOff
summary|poweredOffTimePercent
summary|timeRemaining
summary|timeRemaining_whatif
summary|utilization.range
System Attributes|active_alarms
System Attributes|active_ki_alarms
System Attributes|alert_count_critical
System Attributes|alert_count_immediate
System Attributes|alert_count_info
System Attributes|alert_count_warning
System Attributes|all_metrics
System Attributes|availability
System Attributes|change_index
System Attributes|child_active_alarms
System Attributes|child_active_ki_alarms
System Attributes|child_all_metrics
System Attributes|child_ki_metrics
System Attributes|child_new_alarms
System Attributes|health
System Attributes|ki_metrics
System Attributes|new_alarms
System Attributes|self_alert_count
System Attributes|total_alarms
System Attributes|total_alert_count
WriteBuffer|actual.capacity
WriteBuffer|actual.capacity.normalized
WriteBuffer|base.demand
WriteBuffer|capacityRemaining
WriteBuffer|capacityRemaining_min
WriteBuffer|capacityRemainingValue
WriteBuffer|idletimepercent
WriteBuffer|ioCountWbRead
WriteBuffer|ioCountWbWrite
WriteBuffer|iopsWbRead
WriteBuffer|iopsWbWrite
WriteBuffer|latencyWbRead
WriteBuffer|latencyWbWrite
WriteBuffer|object.capacity
WriteBuffer|object.capacity.not.normalized
WriteBuffer|object.capacity.with.ha
WriteBuffer|object.demand
WriteBuffer|object.demand.percent
WriteBuffer|object.demand.with.size.recommendation
WriteBuffer|object.demand.without.size.recommendation
WriteBuffer|oversized
WriteBuffer|size.recommendation
WriteBuffer|timeRemaining
WriteBuffer|timeRemaining_whatif
WriteBuffer|underusedpercent
WriteBuffer|Usage
WriteBuffer|Used
WriteBuffer|wbFreePct
WriteBuffer|wbSize
WriteBuffer|workload
たとえば、下記のように 書き込みバッファ容量の推奨値を取得したりできます。
PowerCLI> Get-OMResource -ResourceKind VirtualSANDiskGroup -Name $dg.Name | Get-OMStat -Key "WriteBuffer|size.recommendation" | Sort-Object Time -Descending | select Key,Time,Value -First 10
Key Time Value
--- ---- -----
WriteBuffer|size.recommendation 2018/04/04 21:02:05 17542670336
WriteBuffer|size.recommendation 2018/04/03 21:04:27 18549729280
WriteBuffer|size.recommendation 2018/04/02 21:02:11 18654631936
WriteBuffer|size.recommendation 2018/04/01 21:04:56 19039205376
WriteBuffer|size.recommendation 2018/03/31 21:01:43 18871312384
WriteBuffer|size.recommendation 2018/03/30 21:04:43 17880637440
WriteBuffer|size.recommendation 2018/03/29 21:02:42 17377789952
WriteBuffer|size.recommendation 2018/03/28 21:05:27 17070935040
WriteBuffer|size.recommendation 2018/03/27 21:02:16 17010818048
WriteBuffer|size.recommendation 2018/03/26 21:00:16 16274199552
この情報は、取得期間を絞ったりすることもできます。
PowerCLI> Get-OMResource -ResourceKind VirtualSANDiskGroup -Name $dg.Name | Get-OMStat -Key "WriteBuffer|size.recommendation" -Start "2018/03/01" -To "2018/03/31" | select Time,Value
Time Value
---- -----
2018/03/01 21:02:09 19482898432
2018/03/02 21:03:40 18346463232
2018/03/03 21:05:10 16553049088
2018/03/04 21:02:39 15175520256
2018/03/05 21:04:25 16046277632
2018/03/06 21:01:25 16615967744
2018/03/07 21:03:26 16375300096
2018/03/08 21:00:15 15958652928
2018/03/09 21:04:59 15831619584
2018/03/10 21:01:44 16785255424
2018/03/11 21:03:59 17555458048
2018/03/12 21:00:44 17643444224
2018/03/13 21:03:15 17892603904
2018/03/14 21:00:30 17919207424
2018/03/15 21:02:00 18216976384
2018/03/16 21:03:30 18676643840
2018/03/17 21:05:01 18532560896
2018/03/18 21:01:47 17640730624
2018/03/19 21:03:32 15869313024
2018/03/20 21:00:48 16326699008
2018/03/21 21:00:45 16425305088
2018/03/22 21:02:45 16436318208
2018/03/23 21:04:45 15822150656
2018/03/24 21:01:46 15301784576
2018/03/25 21:03:31 15560028160
2018/03/26 21:00:16 16274199552
2018/03/27 21:02:16 17010818048
2018/03/28 21:05:27 17070935040
2018/03/29 21:02:42 17377789952
2018/03/30 21:04:43 17880637440
このように情報取得することで、vROps で確認できる性能情報を
PowerShell で集計できるようになります。
定期的な性能レポート作成などでも活用できそうな気がします。
以上、vROps から PowerCLI で情報取得してみる話でした。
つづくかもしれない。