zabbixはnginx、tomcat、mysqlを監視します

Zabbixモニターnginx

Zabbixクライアント

nginxのyumソースを構成する

yumウェアハウスを編集します。

vi /etc/yum.repos.d/nginx.repo

[nginx-stable]

name = nginx安定リポジトリ

baseurl = http://nginx.org/packages/centos/$releasever/$basearch/

gpgcheck = 1

enabled = 1

gpgkey = https://nginx.org/keys/nginx_signing.key

module_hotfixes = true

nginxをインストールします:yum install -y nginx

nginxステータス情報を構成し、構成のセクションを追加します

vi /etc/nginx/conf.d/default.conf

場所/ nginx_status

{

スタブステータスオン;

access_log off;

127.0.0.1を許可します。

すべてを拒否します。

}

nginxサービスを開始します:systemctl start nginx; ps aux | grep nginx

クライアントテスト:

[root @ localhost〜] #curl http://127.0.0.1/nginx_status

アクティブな接続:1

サーバーは処理されたリクエストを受け入れます

1 1 1

読み取り:0書き込み:1待機:0
パラメーターの意味の説明:

アクティブな接続:現在アクティブな接続の数。待機状態の接続も含まれます

受け入れる:受信した接続の数

処理済み:処理された接続の数。この数は通常、acceptsと同じです。一貫性がない場合は、Nginxがエラーを起こしたことを意味します。

リクエスト:処理されたリクエストの総数。接続には複数のリクエストが含まれる可能性があるため、値はaccpetsよりも大きくなります。

読み取り:要求ヘッダー情報を読み取っている接続の数

書き込み:応答メッセージを送信している接続の数

待機中:クライアントが要求を送信するのを待機している、アイドル状態にある接続の数

クライアントマシン上のスクリプト

vi /usr/local/sbin/ngx_status.sh

#内容は以下の通りです

#!/ bin / bash

url = " http://127.0.0.1/nginx_status "

curl = / usr / bin / curl

#nginxプロセスが存在するかどうかを検出します

関数ping {

/ sbin / pidof nginx | wc -l

}

#nginxのパフォーマンスを検出する

関数アクティブ{

$ curl $ url 2> / dev / null | grep 'アクティブ' | awk '{print $ NF}'

}

関数の読み取り{

$ curl $ url 2> / dev / null | grep '読み取り' | awk '{print $ 2}'

}

関数の書き込み{

$ curl $ url 2> / dev / null | grep '書き込み' | awk '{print $ 4}'

}

関数待機{

$ curl $ url 2> / dev / null | grep '待機中' | awk '{print $ 6}'

}

関数は{を受け入れます

$ curl $ url 2> / dev / null | awk NR == 3 | awk '{print $ 1}'

}

処理された関数{

$ curl $ url 2> / dev / null | awk NR == 3 | awk '{print $ 2}'

}

関数リクエスト{

$ curl $ url 2> / dev / null | awk NR == 3 | awk '{print $ 3}'

}

$ 1

スクリプトの権限を設定します。

chmod 755 /usr/local/sbin/ngx_status.sh

クライアントのzabbix_agent.conf構成を編集し、行を追加します

vi /etc/zabbix/zabbix_agentd.conf

#UserParameter =
UserParameter = nginx.status [*]、/ usr / local / sbin / ngx_status.sh $ 1

サービスを再起動します。

systemctl restart zabbix-agent

zabbix_getモニタリングスクリプトテスト:

実行
zabbix_get -s 192.168.19.128 -k'nginx.status [受け入れる]」サーバーzabbix_server上

Zabbix_server Web UIインターフェース操作:

構成---ホスト---インポート---ファイルのインポート(nginxテンプレートをダウンロードする必要があります)

img

nginxテンプレートをダウンロード

yum install -y git

git clone https://github.com/aminglinux/linux2019.git

sz /linux2019/zabbix_nginx_template/zbx_export_templates.xml

szコマンドを使用して、ディレクトリ内のテンプレートをPCにダウンロードします。次に、zabbixwebUIでインポートを使用します。

img

監視するnginxホストをテンプレートにリンクします。

構成-ホスト-選択したホスト名をクリック---テンプレート-リンクインジケーター-選択-グループの選択-テンプレートの選択---追加-更新---監視項目の表示(その他のnginx項目)

img

img

ZabbixモニターTomcat

監視プロセス:

zabbix_java_gatewayをインストールし、
zabbix_java_gateway構成ファイルとzabbix_server構成ファイルを構成し、リスニングポートを指定し、プロセス数を開始し
、Tomcat構成ファイルを編集して、JMXを有効にします。

次の操作は、zabbix WEB UIインターフェース
にホスト追加し、JMXインターフェース
リンクTOMCATテンプレートを指定します

Zabbix-サーバーサーバー:

zabbix_java_gatewayをインストールします

yum install -y zabbix-java-gateway

構成ファイルを変更する

vi /etc/zabbix/zabbix_java_gateway.conf#LISTEN_IP
= "0.0.0.0"改成LISTEN_IP = "0.0.0.0"

#LISTEN_PORT = 10052がLISTEN_PORT = 10052に変更されました
#START_POLLERS = 5がSTART_POLLERS = 5に変更されました

vi /etc/zabbix/zabbix_server.conf
は、JavaGatewayとJavaGatewayPortおよびStartJavaPollersを定義します

JavaGateway = 127.0.0.1 // Javaゲートウェイアドレス

JavaGatewayPort = 10052 // Javaゲートウェイのデフォルトポート

StartJavaPollers = 5 //開始プロセスのポーリング数

zabbix-java-gatewayサービスを開始します。

systemctl start zabbix-java-gateway
restart zabbix-server service:

systemctl restart zabbix-server

** JMXを開きます tomcat **を最初にインストールします):
Tomcat構成ファイルを編集してJMXを有効にします

vi /usr/local/tomcat/bin/catalina.sh

#!/ bin / sh
export CATALINA_OPTS = "$ CATALINA_OPTS -Dcom.sun.management.jmxremote //リモート監視jvmを有効にする

-Djava.rmi.server.hostname = 192.168.111.136 // TomcatホストのIPアドレス

-Dcom.sun.management.jmxremote.port = 9999 // jmxはリモートポートを開始します。zabbixは追加時に同じである必要があります

-Dcom.sun.management.jmxremote.ssl = false // Ssl暗号化送信が有効になっていません

-Dcom.sun.management.jmxremote.authenticate = false "//ユーザー名とパスワードの認証を開かない

注:上記のコンテンツが構成ファイルに追加された後、行を作成し、折り返さないでください。

エラーのため、Tomcatは起動できません。

Tomcatサービスを再起動します。

/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh

リンクTOMCATテンプレートホストリンクテンプレートを追加

構成-ホスト---ホストの作成---エージェントエージェントインターフェイス(削除)--- JMXインターフェイス(追加)--- IPアドレスで監視されるホスト---ポート(9999)

img

テンプレート-リンクインジケータ---追加---グループ---追加-更新

img

img

img

Zabbixはmysql / mariadbを監視します

監視ユーザーを承認します

mysql -uroot -padmin123

\>で使用、プロセス、レプリケーションクライアントを許可します'x2ay9xodTvyM'で識別される 'mon' @ 'localhost'へ;

表示編集構成ファイルの作成

vi /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf

HOME = / var / lib / zabbix

mkdir / var / lib / zabbix

vim /var/lib/zabbix/.my.cnf

[mysql]

host = localhost

user = mon

password = 'x2ay9xodTvyM'

ソケット= / tmp / mysql.sock

[mysqladmin]

host = localhost

user = mon

password = 'x2ay9xodTvyM'

ソケット= / tmp / mysql.sock

zabbix-agentサービスを再起動します

systemctl restart zabbix-agent

テスト

zabbix_get -s 127.0.0.1 -p 10050 -k mysql.ping

プロンプトが表示された場合:sh:mysqladmin:コマンドが見つかりません

需要:ln -s / usr / local / mysql / bin / mysqladmin / usr / bin /

ln -s / usr / local / mysql / bin / mysql / usr / bin / mysql

zabbix_get -s 127.0.0.1 -p 10050 -k mysql.version

zabbix_get -s 127.0.0.1 -p 10050 -k mysql.size

img

img

img

おすすめ

転載: blog.51cto.com/11451960/2640770