ヘルプ 管理 監視の追加 WindowsサーバーのWMI設定

WindowsサーバーのWMI設定

Windows管理インストルメンテーション (WMI)はWindowsベースのオペレーティングシステム (OS)の機器やアプリケーションを管理するしくみです。
WMIにより、ローカルやリモートシステムのステータスを把握します。

WindowsサーバーのWMI設定を行って、Site24x7を用いた監視を行います。
設定手順は次のとおりです。

WMIサービスが稼働しているかの確認

  1. Windowsマシンで、[services.msc]を開きます。
  2. [Windows Management Instrumentation]サービスを検索します。
  3. ステータスが実行中かを確認します。実行中でない場合、サービスを開始します。

リモート監視のWMI有効化

  1. [コントロールパネル]→[管理ツール]→[コンピューターの管理]の順にアクセスします。
  2. コンピューター管理画面で、[サービスとアプリケーション]をクリックします。
  3. [WMIコントロール]を右クリックして、[プロパティ]をクリックします。
  4. WMIコントロールプロパティ画面で、[セキュリティ]タブに移動します。
  5. [セキュリティ]ボタンをクリックします。
  6. グループやユーザー名で、WMIデータをリクエストするユーザーを選択し、[追加]をクリックします。
  7. 管理者権限で、リモート有効化が[許可]になっているかを確認します。

ファイアウォール許可

全ユーザーがローカルマシンでWMIデータのクエリや読み取りが行えます。リモートサーバーのWMIデータを読み取るには、次の設定を行いファイアウォールを許可します。
管理者権限でコマンドプロンプトを開いて、次のコマンドを実行します。

Windows XP、Windows Vista、Windows 7の場合
netsh firewall set service RemoteAdmin enable
Windows 8、Windows 8.1、Windows 10の場合
netsh advfirewall firewall set rule group="Windows Remote Management" new enable=yes
netsh advfirewall firewall set rule group="windows management instrumentation (wmi)" new enable=yes

WMIリモート監視の確認と接続

PowerShellを用いたWMIリモート接続

Get-WmiObjectなど、多くのWMIコマンドレットで共通の-ComputerNameパラメーターを使用します。

$strComputer = "Computer_B"
$colSettings = Get-WmiObject Win32_OperatingSystem -ComputerName $strComputer
VBScriptを用いたWMIリモート接続

GetObjectへの要求で、リモートシステムの名前を含む監視を使用します。

strComputer = "Computer_B"
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colSettings = objWMIService.ExecQuery("Select * from Win32_OperatingSystem")

詳細はMicrosoftドキュメントを参照してください。