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 のインデックス スキップ スキャン
前面に書かれたWeibo コンポーネントは、サードパーティのアクセス ユーザーが開発を必要とせずに ...
目次1 はじめに2 前提条件2.1 データ型2.2 それが自身のプロパティであるかどうかを判断する ...
目次1. ストアドプロシージャ1.1. 基本構文1.2 実行権限を指定してストアドプロシージャを作成...
この記事では主に、Vue でシンプルな無限ループスクロールアニメーションを実装し、みんなで共有する例...
目次MySQL 5.6以前MySQL 5.6以降要約する知らせMySQL 5.6以前更新手順元のテー...
この記事の例では、カウントダウン効果を実現するためのJavaScriptの具体的なコードを参考までに...
目次SQL文を挿入する前にレコードが既に存在するかどうかを確認するSQL挿入時の判断の簡単なコレクシ...
この記事では、時間範囲効果を実現するためのJavaScriptの具体的なコードを参考までに紹介します...
コードをコピーコードは次のとおりです。 <iframe id="myFrameId&...
VMware で仮想マシンを作成し、Redhat Linux オペレーティング システムをインスト...
成果を達成する実装コードhtml <input type="radio" ...
<br />テーブルは XHTML では扱いにくいタグなので、このセクションで理解するだ...
序文この記事は私自身の製作過程の簡単な記録です。練習中に質問があれば、一緒に話し合うことができます。...
目次1 Dockerをインストールする2 国内ミラーソースの設定3 中国語環境基本版Centos7イ...
序文ターミナルを使用してデータベースまたはテーブルを作成するたびに、文字セットが latin1 であ...