Linux : RHEL7.4
Linuxだと 「ps -e 」すると同じ名前の複数プロセスが動いています。 Linuxにはプロセス監視のやり方教えていただけないでしょうか。
もう少し具体的に、どのように監視をしたいのかをお教えください。
複数動いているプロセスの数を数えたいのですか? 複数動いている中で、特定の引数で起動しているプロセスがあるか を確認したいのですか?
あと、質問される際には、使用されているZabbixの詳細なバージョ ンもお教えください。
Linux : RHEL7.4 Zabbix :3.4
監視したいプロセスは以下の通りです。 ・httpd プロセスが動ているかどうか? ・postgresql が開始されているか?
等 監視したいと思います。
Linuxでは「ps -e」の結果は以下の通りです。 1378 ? 00:01:49 java 1413 ? 00:00:00 uname 1414 ? 00:00:00 uname 2237 ? 00:00:00 httpd 2255 ? 00:00:00 systemd-tty-ask 3353 ? 00:00:00 httpd 3354 ? 00:00:00 httpd 3355 ? 00:00:00 httpd 3356 ? 00:00:00 httpd 3357 ? 00:00:00 httpd 3671 ? 00:00:00 uname 3672 ? 00:00:00 uname 4485 ? 00:00:00 uname
・httpd プロセスが動ているかどうか?
httpdプロセスが動いているかだけであれば、アイテムのキーとし て、
proc.num[httpd]
を使用してhttpdプロセスの数を取得し、そのアイテムの値に対し て0であったら障害とみなすようなトリガーを作成すればよいと思 います。
・postgresql が開始されているか?
PostgreSQLのバージョンの記載がありませんが、使用されているOS がRHEL 7.4とのことですので、RHEL 7.4の標準で使用できるバージ ョンであると仮定します。
そうであるならば、httpdと同様に、
proc.num[postgres]
でプロセス数を確認することができるので、トリガーも同様に設定 すればよいでしょう。
ただし、httpdも同様ですが、プロセスが起動していても正常に応 答が得られるかは、HTTP/HTTPSプロトコルで応答が得られるかとか、 SQLを実行して応答が得られるかというように、別途確認した方が 良いかもしれません。
ご説明、ありがとうございました。
Linuxでプロセス監視とサービス監視、何が違いますか? 上記のやり方は多分サービス監視の時使えるじゃないかな。。。
サービス監視したい場合はやり方が違う? 私の認識が間違えるかもしれません。 よろしくお願いいたします。
TNK様に回答して頂いている内容は、ご質問内容であるプロセス監視で相違ありません。 Linux的にサービスというのであれば、単一あるいは複数のプロセスが動作した結果、 提供される機能かと思います。 例えばhttpdというプロセスが動作した結果、Webサービスが提供されるといった流れです。 上記の例で例えれば、httpdが提供しているWebサービス(Webページ)を監視すれば、 httpdのサービス監視が出来ている…と言えるかもしれません。 一先ず、監視設計をするにあたり、何を監視するのかを明確にして頂いた方が良いと思います。
広瀬です
プロセス≒サービスと似たようなニュアンスで使われる場合もありますので、混同しがちです。 どちらかと言えば何かの要求を常に待ち受けているプロセスを、「サービス」と言われることも あります。 OS視点からすれば瞬間的に動くもの(psコマンドを実行した瞬間など)でも、Apacheのように 常時動いていてもプロセスはプロセスです<サービスなどとは言いません
kaeruさんが指摘されている通り、サービス自体の用語は提供しているシステム、仕組みそのも のを指す用語でもあります。 逆に聞きますが、Apache(プロセス)が動いているだけでサービスが提供されているとお考えですか? 最低限、Firewallの設定やネットワーク設定をしなければ外から見れません。 Webサービスとして対外的に正しく稼働している事を監視するならURL監視なども併用する必 要もあります。ポート監視などもそうですね。
ニュアンスや視点で用語は多種多様に変化しますんで、上記に書いた事が全てではありません し間違っているかもしれません。自分なりに整理されることおすすめします。
アカウント名 pramod1301
本名 プラモド
居住地 東京 日本
Zabbix関連
TNK - 投稿数: 4760
もう少し具体的に、どのように監視をしたいのかをお教えください。
複数動いているプロセスの数を数えたいのですか?
複数動いている中で、特定の引数で起動しているプロセスがあるか
を確認したいのですか?
あと、質問される際には、使用されているZabbixの詳細なバージョ
ンもお教えください。
pramod1301 - 投稿数: 24
Linux : RHEL7.4
Zabbix :3.4
監視したいプロセスは以下の通りです。
・httpd プロセスが動ているかどうか?
・postgresql が開始されているか?
等 監視したいと思います。
Linuxでは「ps -e」の結果は以下の通りです。
1378 ? 00:01:49 java
1413 ? 00:00:00 uname
1414 ? 00:00:00 uname
2237 ? 00:00:00 httpd
2255 ? 00:00:00 systemd-tty-ask
3353 ? 00:00:00 httpd
3354 ? 00:00:00 httpd
3355 ? 00:00:00 httpd
3356 ? 00:00:00 httpd
3357 ? 00:00:00 httpd
3671 ? 00:00:00 uname
3672 ? 00:00:00 uname
4485 ? 00:00:00 uname
TNK - 投稿数: 4760
httpdプロセスが動いているかだけであれば、アイテムのキーとし
て、
proc.num[httpd]
を使用してhttpdプロセスの数を取得し、そのアイテムの値に対し
て0であったら障害とみなすようなトリガーを作成すればよいと思
います。
PostgreSQLのバージョンの記載がありませんが、使用されているOS
がRHEL 7.4とのことですので、RHEL 7.4の標準で使用できるバージ
ョンであると仮定します。
そうであるならば、httpdと同様に、
proc.num[postgres]
でプロセス数を確認することができるので、トリガーも同様に設定
すればよいでしょう。
ただし、httpdも同様ですが、プロセスが起動していても正常に応
答が得られるかは、HTTP/HTTPSプロトコルで応答が得られるかとか、
SQLを実行して応答が得られるかというように、別途確認した方が
良いかもしれません。
pramod1301 - 投稿数: 24
ご説明、ありがとうございました。
Linuxでプロセス監視とサービス監視、何が違いますか?
上記のやり方は多分サービス監視の時使えるじゃないかな。。。
サービス監視したい場合はやり方が違う?
私の認識が間違えるかもしれません。
よろしくお願いいたします。
kaeru - 投稿数: 264
TNK様に回答して頂いている内容は、ご質問内容であるプロセス監視で相違ありません。
Linux的にサービスというのであれば、単一あるいは複数のプロセスが動作した結果、
提供される機能かと思います。
例えばhttpdというプロセスが動作した結果、Webサービスが提供されるといった流れです。
上記の例で例えれば、httpdが提供しているWebサービス(Webページ)を監視すれば、
httpdのサービス監視が出来ている…と言えるかもしれません。
一先ず、監視設計をするにあたり、何を監視するのかを明確にして頂いた方が良いと思います。
wakaba - 投稿数: 228
広瀬です
プロセス≒サービスと似たようなニュアンスで使われる場合もありますので、混同しがちです。
どちらかと言えば何かの要求を常に待ち受けているプロセスを、「サービス」と言われることも
あります。
OS視点からすれば瞬間的に動くもの(psコマンドを実行した瞬間など)でも、Apacheのように
常時動いていてもプロセスはプロセスです<サービスなどとは言いません
kaeruさんが指摘されている通り、サービス自体の用語は提供しているシステム、仕組みそのも
のを指す用語でもあります。
逆に聞きますが、Apache(プロセス)が動いているだけでサービスが提供されているとお考えですか?
最低限、Firewallの設定やネットワーク設定をしなければ外から見れません。
Webサービスとして対外的に正しく稼働している事を監視するならURL監視なども併用する必
要もあります。ポート監視などもそうですね。
ニュアンスや視点で用語は多種多様に変化しますんで、上記に書いた事が全てではありません
し間違っているかもしれません。自分なりに整理されることおすすめします。