SE の雑記

SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿

WSFC の状態を取得する PowerShell

without comments

Windows Server 2008 以降は PowerSell で WSFC の情報を取得することができます。
クラスター用のコマンドレットを使用することでフェールオーバークラスターマネージャーで表示されている情報をテキストで取得するといったことが可能です。
image

情報は以下のようなコマンドで取得することができます。

Import-Module FailoverClusters
$filename = "C:temp"
$filename += Get-Date -Format "yyyyMMdd_HHmmss"
$filename += ".txt"
$delimiter = "`t"

"[ClusterInfo]" | Out-File $filename -Encoding unicode -Append
Get-Cluster | Select-Object Name, Domain | ConvertTo-Csv -NoTypeInformation -Delimiter $delimiter | Out-File $filename -Encoding unicode -Append
"`n"  | Out-File $filename -Encoding unicode -Append

"[QuorumInfo]" | Out-File $filename -Encoding unicode -Append
Get-ClusterQuorum | ConvertTo-Csv -NoTypeInformation -Delimiter $delimiter | Out-File $filename -Append
"`n"  | Out-File $filename -Encoding unicode -Append

"[GroupInfo]" | Out-File $filename -Encoding unicode -Append
Get-ClusterGroup | Select-Object Name, State, OwnerNode, Priority, IsCoreGroup | ConvertTo-Csv -NoTypeInformation -Delimiter $delimiter | Out-File $filename -Append
"`n"  | Out-File $filename -Encoding unicode -Append

"[ResourceInfo]" | Out-File $filename -Encoding unicode -Append
Get-ClusterResource | Select-Object OwnerGroup,OwnerNode ,ResourceType, Name, State | Sort-Object OwnerGroup | ConvertTo-Csv -NoTypeInformation -Delimiter $delimiter | Out-File $filename -Append
"`n"  | Out-File $filename -Encoding unicode -Append

"[NodeInfo]" | Out-File $filename -Encoding unicode -Append
Get-ClusterNode | Select-Object Name, State | ConvertTo-Csv -NoTypeInformation -Delimiter $delimiter | Out-File $filename -Append
"`n"  | Out-File $filename -Encoding unicode -Append

"[DiskInfo]" | Out-File $filename -Encoding unicode -Append
Get-ClusterResource | Where-Object {$_.ResourceType -like "Physical Disk"} | Select-Object  Name, State, OwnerNode | ConvertTo-Csv -NoTypeInformation -Delimiter $delimiter | Out-File $filename -Append
"`n"  | Out-File $filename -Encoding unicode -Append

"[NetworkInfo]" | Out-File $filename -Encoding unicode -Append
Get-ClusterNetwork | Select-Object  Name, State | ConvertTo-Csv -NoTypeInformation -Delimiter $delimiter | Out-File $filename -Append
"`n"  | Out-File $filename -Encoding unicode -Append

"[NetworkInterfaceInfo]" | Out-File $filename -Encoding unicode -Append
Get-ClusterNetworkInterface | Select-Object  Network, Name, State, Node | ConvertTo-Csv -NoTypeInformation -Delimiter $delimiter | Out-File $filename -Append
"`n"  | Out-File $filename -Encoding unicode -Append

 

実行結果がこちら
image

GUI と合わせるのであれば、クラスターコアグループのリソースは独立させたほうが良いと思うのですが、その個所を分割している時間がなかったので通常のリソースの情報に合わせて出力しています。

この手の情報はパラメーターシートを作成する際にも必要になることがあるかと思いますので、取得するプロパティの情報を調整することで対応できるかと。

Written by Masayuki.Ozawa

9月 10th, 2012 at 8:06 am

Posted in MSCS/WSFC(MSFC)

Tagged with ,

Leave a Reply