0

powershell を使用して、クラスター化されたサーバーで SQL エージェント設定の powershell コマンドから値を評価しようとしています。私は Powershell を初めて使用しますが、モニターをセットアップして、すべての Windows Server 2008 r2 クラスターでこの設定が正しいことを確認したいと考えています。

PSプロンプトで次を使用して、問題の設定を見つけました...

cluster resource 'SQL Server Agent' /prop : RestartAction

問題は、次の出力の [値] 列の下に数値 (1 または 1(0x1) のいずれか) だけを返すことです。

Listing properties for 'SQL Server Agent':

T  Resource             Name                           Value
-- -------------------- ------------------------------ -----------------------
D  SQL Server Agent     RestartAction                  1 (0x1)

これはモニターになるため、Value が 1 かどうかを評価し、そうでない場合は報告できるようにする必要があります。PowerShell が単純な値を返すようにできれば、T-SQL でモニターを設定する残りの作業を行うことができます。

私は答えを見つけようとしてインターネットを精査してきましたが、すべてがコマンドレットと関数に関係しており、Windowsサーバーの値が返されることだけが必要です。それほど単純ではないかもしれませんが、長いスクリプト作成の冒険に出る前に確認したかったのです。

助けていただければ幸いです、ありがとう!!

4

2 に答える 2

0

FailoverClustersモジュールを使用できますか?

(Get-ClusterResource -Cluster Cluster1 -Name 'SQL Server Agent').RestartAction

そうでない場合は、文字列で解析します。

PS> $clus = cluster /cluster:cluster1 resource 'SQL Server Agent' /prop:RestartAction
PS> $clus[10]
D  SQL Server Agent     RestartAction                  1 (0x1)    

PS> $clus[10] -replace '^.+\((.+)\)$','$1'
0x1
于 2013-01-25T22:00:39.923 に答える
0

failoverclusters モジュールをロードできず、解析する必要がない場合は、WMI を使用できます。

gwmi -ComputerName cluster1 -Authentication PacketPrivacy -Namespace "root\mscluster" -Class MSCluster_Resource -Filter "name LIKE 'SQL Server Agent%'" |
select -ExpandProperty RestartAction
于 2013-01-27T17:28:00.293 に答える