Zabbix 導入ドキュメント zabbix導入後 zabbixエージェントの操作 1. MySQLを監視するには、まずMySQLをインストールする必要があります [root@localhost ~]# yum -y mariadb mariadb-serverをインストールします 2. MySQL監視項目のスクリプトを書く まずzabbix-agentでユーザーを認証してください。そうしないと、テスト中に権限が与えられなくなります。 [root@localhost ~]# mysql MariaDB モニターへようこそ。コマンドは ; または \g で終わります。 MariaDB接続IDは33です サーバーバージョン: 5.5.65-MariaDB MariaDB サーバー Copyright (c) 2000、2018、Oracle、MariaDB Corporation Ab およびその他。 ヘルプを表示するには、「help;」または「\h」と入力します。現在の入力ステートメントをクリアするには、「\c」と入力します。 MariaDB [(なし)]> '123' で識別される 'check'@'localhost' に *.* 上のすべての権限を許可します。 クエリは正常、影響を受けた行は 0 行 (0.00 秒) MySQLモニタリングの主な内容は
[root@localhost ~]# mkdir /etc/zabbix/scipts [root@localhost ~]# cd /etc/zabbix/scipts/ [root@localhost スクリプト]# vim mysql.sh #!/bin/bash mysql="mysql -ucheck -p123" ケース$1 #mysql マスタースレーブステータス (slave_status) $mysql -e "スレーブステータスを表示\G" |grep "はい" |wc -l ;; # mysql トラフィックは Bytes_received を受け入れます) mysqladmin 拡張ステータス |grep "Bytes_received" |awk '{print $4}' ;; # mysql トラフィック (送信バイト数) mysqladmin 拡張ステータス |grep "Bytes_sent" |awk '{print $4}' ;; #MySQL の通常操作に Com_insert が追加されました) mysqladmin 拡張ステータス |grep -w "Com_insert" |awk '{print $4}' ;; #Com_delete (mysql ルーチン操作の削除) mysqladmin 拡張ステータス |grep -w "Com_delete" |awk '{print $4}' ;; # mysql ルーチン操作を Com_update に変更します) mysqladmin 拡張ステータス |grep -w "Com_update" |awk '{print $4}' ;; # mysql ルーチン操作チェック Com_select) mysqladmin 拡張ステータス |grep -w "Com_select" |awk '{print $4}' ;; #mysql tps tps) mysqladmin ステータス |awk '{print $6/$2}' ;; #mysql qps=(ロールバック+コミット)/アップタイム qps) ロールバック=$(mysqladmin 拡張ステータス |grep -w "Com_rollback" |awk '{print $4}') コミット=$(mysqladmin 拡張ステータス |grep -w "Com_commit" |awk '{print $4}') 稼働時間=$(mysqladmin ステータス |awk '{print $2}') カウント=$[$ロールバック+$コミット] echo "$count $uptime" > /tmp/a.txt cat /tmp/a.txt |awk '{print $1/$2}' ;; # データベースのサイズ MySQL データベースを例にとります (db) $mysql -e "table_schema='mysql' の information_schema.tables から sum(data_length) を選択" |sed -n '2p' ;; # テーブルサイズ MySQL のユーザーテーブルを例に挙げます (tb) $mysql -e "table_schema='mysql' かつ table_name='user' である information_schema.tables から sum(data_length) を選択" |sed -n '2p' ;; エサック 3. キー値をカスタマイズし、zabbix-agentを再起動する [root@localhost スクリプト]# cd /etc/zabbix/zabbix_agentd.d/ [root@localhost zabbix_agentd.d]# vim mysql.conf ユーザーパラメータ=mysql[*],/etc/zabbix/scipts/mysql.sh $1 [root@localhost zabbix_agentd.d]# systemctl zabbix-agentを再起動します 4. まずzabbix-serverテストにzabbix-getをインストールします [root@localhost ~]# yum -y zabbix-getをインストールします [root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[slave_status] 2 [root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[受信バイト数] 850970 [root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[送信バイト数] 224906 [root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[Com_insert] 3001 [root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[Com_delete] 135 [root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[Com_update] 128 [root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[Com_select] 19 [root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[qps] 0.864842 [root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[tps] 1.92936 [root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[db] 555118 [root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[tb] 420 エラー処理 [root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[slave_status] sh: /etc/zabbix/scipts/mysql.sh: 権限が不十分です。スクリプト実行権限が不十分です。zabbix-agent に移動して権限を追加してください [root@localhost zabbix_agentd.d]# chmod +x /etc/zabbix/scipts/mysql.sh [root@localhost ~]# zabbix_get -s 192.168.27.137 -k mysql[slave_status] 1 行目のエラー 1227 (42000): アクセスが拒否されました。この操作には、SUPER、REPLICATION CLIENT 権限 (少なくとも 1 つ) が必要です。 ユーザーにzabbix-agentを表示する権限がないため、スクリプトに[root@localhost ~]# mysqlを追加する権限をユーザーに付与します。 MariaDB モニターへようこそ。コマンドは ; または \g で終わります。 MariaDB接続IDは33です サーバーバージョン: 5.5.65-MariaDB MariaDB サーバー Copyright (c) 2000、2018、Oracle、MariaDB Corporation Ab およびその他。 ヘルプを表示するには、「help;」または「\h」と入力します。現在の入力ステートメントをクリアするには、「\c」と入力します。 MariaDB [(なし)]> '123' で識別される 'check'@'localhost' に *.* 上のすべての権限を許可します。 クエリは正常、影響を受けた行は 0 行 (0.00 秒) [root@localhost スクリプト]# vim mysql.sh #!/bin/bash mysql="mysql -ucheck -p123" ケース$1 #mysql マスタースレーブステータス (slave_status) $mysql -e "スレーブステータスを表示\G" |grep "はい" |wc -l ;; Zabbixページに監視項目とグラフを追加する MySQLトラフィックデータを表示する MySQL QPS TPS を表示 MySQL マスタースレーブステータスの表示 MySQLの一般的な操作を表示 MySQLデータベーステーブルのサイズを表示する mysql マスタースレーブ構成 1. Zabbix サーバー [root@localhost ~]# vim /etc/my.cnf [root@localhost ~]# systemctl mariadbを再起動します [root@localhost ~]# mysql MariaDB モニターへようこそ。コマンドは ; または \g で終わります。 MariaDB接続IDは7です サーバーバージョン: 5.5.65-MariaDB MariaDB サーバー Copyright (c) 2000、2018、Oracle、MariaDB Corporation Ab およびその他。 ヘルプを表示するには、「help;」または「\h」と入力します。現在の入力ステートメントをクリアするには、「\c」と入力します。 MariaDB [(なし)]> マスターステータスを表示します。 +------------------+----------+--------------+------------------+ | ファイル | 位置 | Binlog_Do_DB | Binlog_Ignore_DB | +------------------+----------+--------------+------------------+ | mysql-bin.000001 | 175170 | | | +------------------+----------+--------------+------------------+ セット内の 1 行 (0.00 秒) MariaDB [(なし)]> '123' で識別される 'tom'@'%' に *.* のすべての権限を許可します。 クエリは正常、影響を受けた行は 0 行 (0.00 秒) MariaDB [(なし)]> 権限をフラッシュします。 クエリは正常、影響を受けた行は 0 行 (0.00 秒) 2. Zabbixエージェント [root@localhost ~]# vim /etc/my.cnf [root@localhost ~]# systemctl mariadbを再起動します [root@localhost ~]# mysql MariaDB モニターへようこそ。コマンドは ; または \g で終わります。 MariaDB接続IDは2です サーバーバージョン: 5.5.65-MariaDB MariaDB サーバー Copyright (c) 2000、2018、Oracle、MariaDB Corporation Ab およびその他。 ヘルプを表示するには、「help;」または「\h」と入力します。現在の入力ステートメントをクリアするには、「\c」と入力します。 MariaDB [(なし)]> マスターを -> マスターホスト='192.168.27.136', -> マスターユーザー='tom'、 -> マスターパスワード='123', -> マスターログファイル='mysql-bin.000001', -> マスターログ位置 = 175170; クエリは正常、影響を受けた行は 0 行 (0.01 秒) MariaDB [(なし)]> スレーブを起動します。 クエリは正常、影響を受けた行は 0 行 (0.00 秒) MariaDB [(なし)]> スレーブステータスを表示します \G; ************************** 1. 行 **************************** Slave_IO_State: マスターがイベントを送信するのを待機中 マスターホスト: 192.168.27.136 マスターユーザー: tom マスターポート: 3306 接続再試行: 60 マスターログファイル:mysql-bin.000001 読み取りマスターログ位置: 175170 リレーログファイル:mysql-relay.000004 リレーログ位置: 529 リレーマスターログファイル: mysql-bin.000001 スレーブIO実行中: はい スレーブSQL実行中: いいえ レプリケート_Do_DB: レプリケート_無視_DB: テーブルの複製: 無視テーブルを複製: Replicate_Wild_Do_Table: Replicate_Wild_Ignore_Table: 最終エラー番号: 1146 Last_Error: クエリでエラー「テーブル 'zabbix.history_uint' が存在しません」が発生しました。デフォルト データベース: 'zabbix'。クエリ: 'insert into history_uint (itemid,clock,ns,value) values (23287,1602301747,810415730,1)' スキップカウンタ: 0 実行マスターログ位置: 173424 リレーログスペース: 2565 Until_Condition: なし ログファイルまで: ログ位置まで: 0 マスターSSL許可: いいえ マスターSSLCAファイル: マスターSSLCAパス: マスターSSL証明書: マスターSSL暗号: マスターSSLキー: マスターより遅れている秒数: NULL Master_SSL_Verify_Server_Cert: いいえ 最終IOエラー番号: 0 最後のIOエラー: 最終SQLエラー番号: 1146 Last_SQL_Error: クエリでエラー「テーブル 'zabbix.history_uint' が存在しません」が発生しました。デフォルト データベース: 'zabbix'。クエリ: 'insert into history_uint (itemid,clock,ns,value) values (23287,1602301747,810415730,1)' Replicate_Ignore_Server_Ids: マスターサーバーID: 1 セット内の 1 行 (0.00 秒) エラー: クエリが指定されていません エラー処理 [root@localhost ~]# vim /etc/my.cnf [root@localhost ~]# systemctl mariadbを再起動します [root@localhost ~]# mysql MariaDB モニターへようこそ。コマンドは ; または \g で終わります。 MariaDB接続IDは4です サーバーバージョン: 5.5.65-MariaDB MariaDB サーバー Copyright (c) 2000、2018、Oracle、MariaDB Corporation Ab およびその他。 ヘルプを表示するには、「help;」または「\h」と入力します。現在の入力ステートメントをクリアするには、「\c」と入力します。 MariaDB [(なし)]> スレーブステータスを表示します \G; ************************** 1. 行 **************************** Slave_IO_State: マスターがイベントを送信するのを待機中 マスターホスト: 192.168.27.136 マスターユーザー: tom マスターポート: 3306 接続再試行: 60 マスターログファイル:mysql-bin.000001 読み取りマスターログ位置: 199126 リレーログファイル:mysql-relay.000006 リレーログ位置: 3950 リレーマスターログファイル: mysql-bin.000001 スレーブIO実行中: はい スレーブSQL実行中: はい レプリケート_Do_DB: レプリケート_無視_DB: テーブルの複製: 無視テーブルを複製: Replicate_Wild_Do_Table: Replicate_Wild_Ignore_Table: 最終エラー番号: 0 最終エラー: スキップカウンタ: 0 実行マスターログポジション: 199126 リレーログスペース: 4240 Until_Condition: なし ログファイルまで: ログ位置まで: 0 マスターSSL許可: いいえ マスターSSLCAファイル: マスターSSLCAパス: マスターSSL証明書: マスターSSL暗号: マスターSSLキー: マスターより遅れている秒数: 0 Master_SSL_Verify_Server_Cert: いいえ 最終IOエラー番号: 0 最後のIOエラー: 最終SQLエラー番号: 0 最後のSQLエラー: Replicate_Ignore_Server_Ids: マスターサーバーID: 1 セット内の 1 行 (0.00 秒) Zabbix で MySQL を監視する方法についての記事はこれで終わりです。Zabbix で MySQL を監視する方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: Vueドロップダウンメニューのコンポーネント開発の詳細説明
>>: MySQL 8.0 のインデックス スキップ スキャン
Gtid + Mha + Binlog サーバー構成: 1: テスト環境OS: CentOS 6.5...
この記事では、参考までに、簡単な計算機能を実装するためのJavaScriptの具体的なコードを紹介し...
序文MySQL データベースでは、if else のような判断演算を使用することがあります。では、M...
目次序文LEDトリガー探索を始めるLEDデバイス登録LEDディレクトリ類推によって理解するクラスディ...
デフォルトでは、表のタイトルは水平方向に中央揃えされます。ALIGN 属性を使用して、タイトル テキ...
JSXとは何かJSX は Javascript の構文拡張であり、JSX = Javascript ...
序文:金額の保存など、小数点数を保存し、精度要件がある場合、通常は DECIMAL フィールド タイ...
一部の Web ページは大きく見えなくても開くのに非常に時間がかかる場合があります。一方、他の We...
セクションコース内容営業時間1 ウェブデザインの概要2 2 HTML 基本タグとフォーマットタグ 2...
この記事の例では、古典的なマインスイーパゲームを実装するためのjsの具体的なコードを参考までに共有し...
チームは新しいフレームを交換しました。すべての新しいビジネスでは、新しいフレームワークと新しいデータ...
プロジェクトのテーマがすべての人の美的感覚を満足できないこともあります。このとき、スキン変更機能は非...
ウェブサイトを作成するユーザーの多くが、このような問題に遭遇すると思います。Chrome のデフォル...
文字の位置を取得するための同様の方法について学習します。 charAt() 文字列内の指定された位置...
順序付きリストXML/HTML コードコンテンツをクリップボードにコピー<オルタイプ= &qu...