windowsプロセスの監視
Windowsのプロセス監視を
service_state
で行っておりますが特定のプロセスが『255』のステータスとなってしまいます。
■環境
・zabbix server
Ver:3.0
OS:CentOS7
・zabbix agent
Ver:3.0
OS:Windows2012R2
■確認対象プロセス名
・keyserver
・keyserver2
■問題
windowsのsc queryコマンドでプロセスの状態を確認すると
上記どちらのプロセスも稼働中のステータスですが、
zabbixでは一方のプロセスが255のステータスとなっており、
サービスが見つからない状況です。
■質問事項
①sc queryとzabbixのステータスの差異の原因が分かればご教示ください。
②実施すべき事項、確認すべき事項がございましたらご教示ください。
■確認実施項目
①サーバ側でのプロセス確認
サーバにて『sc query』コマンドを実行。
・keyserver
STATE:RUNNING
・keyserver2
STATE:RUNNING
②zabbixのアイテム『service_state』でのステータス
・keyserver
status:0
・keyserver2
status:255
③zabbixのアイテム『service.info』でのステータス
・keyserver
status:0
・keyserver2
status:255
④zabbixのアイテム『services』を使ったサービス一覧の取得
・keyserver
一覧にあり
・keyserver2
一覧になし
お手数ですが、お知恵いただければ幸いです。
よろしくお願いいたします。
TNK - 投稿数: 4753
sc queryで出力される
SERVICE_NAME
DISPLAY_NAME
どちらをアイテムの引数に指定していますか?
servicesで取得したサービスの一覧内に含まれていなかったとのこ
とですが、上記の項目のうち使用していなかった方のNAMEでも含ま
れていませんか?
ついでになってしまいますが、Zabbix 3.0を使用されているとのこ
とですので、service_stateは廃止予定のアイテムキーです。
service.infoを使用するようにしてください。
Putty - 投稿数: 7
TNK様
ご連絡いただきありがとうございます。
以下のとおりどちらも『SERVICE_NAME』にて
表示される名称を監視対象としております。
====以下sc queryの抜粋====
SERVICE_NAME: keyserver
DISPLAY_NAME: core-keyserver1
TYPE : 10 WIN32_OWN_PROCESS
STATE : 4 RUNNING
(STOPPABLE, NOT_PAUSABLE, ACCEPTS_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
SERVICE_NAME: keyserver2
DISPLAY_NAME: core-keyserver2
TYPE : 10 WIN32_OWN_PROCESS
STATE : 4 RUNNING
(STOPPABLE, NOT_PAUSABLE, ACCEPTS_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
======================
またサービス確認のアイテムでは『service.info』にて実施しておりますが、
keyserver:0
keyserver2:255
のステータスとなります。
何卒お知恵拝借いたしたくよろしくお願いいたします。
TNK - 投稿数: 4753
255が返却されるということは、その名前のサービスがあることを
認識できていないと思われます。
アイテムキーservicesでもリストに現れないのであれば、一度、
Zabbixエージェントのサービスを停止・開始してみてください。
Putty - 投稿数: 7
情報ありがとうございます。
zabbix-agentを再起動してみましたが、
状況変わらずでした。
servicesで表示されるサービスとsc queryで表示されるSERVICE_NAMEを比較してみましたが、
結構一致していないものが多く見受けられました。
総数は101個でした。
何かヒントになるようなことがあれば幸いです。
よろしくお願いいたします
TNK - 投稿数: 4753
手元のWindows環境で試してみました。
Zabbixエージェント経由で、servicesで取得したサービス数:148
Windows上でsc queryで取得したサービス数:54
sc queryで取得したサービスは、Zabbixエージェント経由で取得し
たサービスにすべて含まれていました。
sc queryで取得できてZabbixエージェント経由で取得できないので
あれば、sc queryコマンドを実行したWindows環境と、Zabbixエー
ジェントが起動しているサーバーが別のサーバーである可能性が高
いと思われます。
再度、どのサーバーのZabbixエージェントにアクセスしているのか
を確認してください。
Putty - 投稿数: 7
ご返信遅れて申し訳ありませんでした。
対象のサーバを確認いたしましたが、そもそも同じホストに設定している
アイテムですので、別のサーバのAgentを対象としてはおりませんでした。
解決しない様であれば、他の方法(SNMP等)でプロセス監視が可能か試してみます。
よろしくお願いいたします。
yk_taiko - 投稿数: 184
引数無しのアイテムキー"services" は 「sc query state=all」 で出力されるサービスが表示されるはずです。
「一致していない」の具体的な差異の内容がわかりませんが、
「sc query」のみですと active 状態のサービスしか拾ってこないので少なくなっているはずです。
(追記)
「sc query state=all」で確認できる内容がサービスの全項目です。該当のサービスがあるか確認してみてください。
Putty - 投稿数: 7
TNKさま、yk_taikoさま
色々ご指摘いただきありがとうございました。
問題事象は解決いたしました。
結果してIPの設定ミスでした。
TNK様からはご指摘いただいておりましたが、
sc queryを実施しているサーバとzabbixサーバに登録しているサーバが
同じIPであると思い込んでいた私の確認不足でした。
ありがとうございました。