不完全な、参照用のみ
Zabbixの+のgrafana 展開を監視
基本的な環境
システム:CentOSのLinuxリリース1611年7月3日
ZABBIXサーバ:
Zabbix_agent:
nginxののバージョン番号:1.62
MySQLのバージョン:5.7.27
Zabbixのバージョン番号:4.0
Grafana バージョン番号:6.0
1:基本的な環境設定(ファイアウォールとSELinuxをオフにします)
systemctlストップfirewalld
systemctl無効にfirewalld
setenforce 0
など/ selinuxに/設定/ -i "S / SELINUX =施行/ SELINUX =無効/ gを" sedの
2:インストールZABBIX
2.1 展開するnginxのインストール
yumをgccのPCRE-develのopensslの-develのwgetコマンドをインストール-y
wgetのhttp://nginx.org/download/nginx-1.6.2.tar.gz
タール-xf nginxの-1.6.2.tar.gz
CDのnginxの-1.6.2 /
./configure --user = nginxの--group = nginxの--prefix =は/ opt / nginxの/ --with-FILE-AIO --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module - -with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-メール - -with-mail_ssl_module --with-CC-OPT = ' - O2 -g -pipe -Wall -Wp、-D_FORTIFY_SOURCE = 2 -fexceptions -fstackプロテクター強い--param = SSP-バッファサイズ= 4 -grecord- GCC-スイッチ-m64 -mtune =ジェネリック-fPIC」--with-LD-OPT = ' - W1を、-z、relro -Wl、-z、今-pie' --with-http_stub_status_module
作る&& make installを
useraddの-s / sbinに/ nologinにnginxの
LN -sは/ opt / nginxの/ sbinに/ nginxの/ binに
nginxの
vimの/opt/nginx/conf/nginx.conf
図3は、自動worker_processes。
13 worker_connections 30000。
index.htmlをindex.htmのindex.phpの45指数;
65場所〜\ phpの$ {
66ルートのhtml;
67 fastcgi_pass 127.0.0.1:9000。
68 fastcgi_indexのindex.phpを。
69#fastcgi_paramのSCRIPT_FILENAME /スクリプト$ fastcgi_script_name。
70はfastcgi.confが含まれます。
71}
nginxの-sリロード
2.2 MySQLをインストールし展開します
wgetの-i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yumをmysql57-コミュニティリリースel7-10.noarch.rpmをインストール-y
YUMのmysql-コミュニティサーバーをインストール-y
mysqldを開始systemctl、mysqldを有効systemctl
grepのパスワード/var/log/mysqld.log
mysqlの-uroot -p「」//初期パスワードのデータベースによると
MySQLの>セットグローバルvalidate_password_policy = 0;
MySQLの>セットグローバルvalidate_password_length = 5;
MySQLの> ALTERユーザーroot @ localhostので識別される '密码';
MySQLの>データベースZABBIXデフォルト・キャラクタ・セットUTF8を作成します。
'密码' でmysql_native_passwordで識別MySQLの>ユーザーを作成する 'ZABBIX' @ 'localhostの';
mysqlの>「密码」によってmysql_native_passwordで識別ユーザーzabbix'@'127.0.0.1」を作成します。
MySQLの>ユーザーを作成する 'ZABBIX' @ '密码' によってmysql_native_passwordで識別 '%';
MySQLの> ZABBIX上のすべての権限を付与* "ZABBIX" @ "localhost" をします。
MySQLの> ZABBIX上のすべての権限を付与*に。"ZABBIX" @ "127.0.0.1 "。
MySQLの> ZABBIX上のすべての権限を付与* "%" @ "ZABBIX" へ。
MySQLの>フラッシュ権限;
2.3 PHPをインストールし展開します
wgetのhttp://rpms.remirepo.net/enterprise/remi-release-7.rpm
yumを-yレミ・リリース7.rpmをインストール
yumをインストール-y php72-のphp-develのphp72-PHP-FPM php72-のphp-mbstringのphp72-のphp-memcacheのphp72-PHP-のRedis php72-PHP-mysqliのphp72-PHP-mysqlnd php72-PHP-PDOのphp72-PHP-bcmath php72 -php-DOM php72-PHP-GD php72-PHP-GMP php72-PHP-igbinary php72-PHP-imagick php72-PHP-mcryptのphp72-PHP-PDO_MYSQL php72-PHP-POSIX php72-PHP-SimpleXMLをphp72-PHP-opcache php72 -php-XSL php72-PHP-たXmlWriter php72-PHP-のXMLReader php72-PHP-XML php72-PHP-swoole php72-PHP-ジップphp72-PHP-のFileInfoのSystemC
vimの/etc/opt/remi/php72/php.ini
385 max_execution_timeに= 300
395 max_input_time = 300
674 post_max_sizeの= 16M
827をupload_max_filesize = 8M
904 date.timezoneで= "アジア/上海"
1326 always_populate_raw_post_data = -1
1583 mbstring.func_overloadの= 0
systemctl再起動php72-PHP-FPMは&& php72-PHP-FPMを有効systemctl
2.4 展開の取り付けZABBIXサーバ
CD /ルート/ && wgetのhttps://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/4.0.12/zabbix-4.0.12.tar.gz
YUM -y javaのインストール* mysqlの-develのNET-SNMP-develのlibevent-develのmysqlの-develのカール-develの
useraddのZABBIX
タール-xf ZABBIX-4.0.12.tar.gz
CD ZABBIX-4.0.12 /
./configure --prefix =は/ opt / ZABBIX --enable-サーバー--enable-エージェント--with-NET-SNMP --enable-javaの--with-libxml2の--with-libcurlの--with-libxml2の - -mysqlの=は/ usr / binに/ mysql_configを--enable-プロキシ
作る&& make installを
CDデータベース/ MySQLの/
mysqlの-uzabbix -p密码ZABBIX <schema.sql
mysqlの-uzabbix -p密码ZABBIX <images.sql
mysqlの-uzabbix -p密码ZABBIX <data.sqlに
CD && CP -r ZABBIX-4.0.12 /フロントエンド/ PHP / *は/ opt / nginxの/ HTML /
chmodの-R 777は/ opt / nginxの/ HTML / *
CPのZABBIX-4.0.12 / miscの/ init.dディレクトリ/フェドーラ/コア/ zabbix_agentd /etc/init.d/の
CPのZABBIX-4.0.12 / miscの/ init.dディレクトリ/フェドーラ/コア/ zabbix_server /etc/init.d/の
chmodの+ X /etc/init.d/zabbix_agentd
chmodの+ X /etc/init.d/zabbix_server
sedの-i "S /#PidFileオプション= \を/ tmp \ /zabbix_server.pid/PidFile = \を/ tmp \ /zabbix_server.pid/g" /opt/zabbix/etc/zabbix_server.conf
sedの-i "S /#DBHOST =ローカルホスト/ DBHOST =ローカルホスト/ G" /opt/zabbix/etc/zabbix_server.conf
sedの-i "S /#DBPASSWORD = / DBPASSWORD =密码/グラム" /opt/zabbix/etc/zabbix_server.conf
sedの-i "S /#DBSocket = / DBSocket = \の/ var \ / libに\ / mysqlの\ /mysql.sock/g" /opt/zabbix/etc/zabbix_server.conf
sedの-i "S /#JavaGateway = / JavaGateway = 127.0.0.1/g" /opt/zabbix/etc/zabbix_server.conf
-i "S /タイムアウト= 4 /タイムアウト= 30 / G" /opt/zabbix/etc/zabbix_server.confをセッド
-i "S / ^#AlertScriptsPath = / AlertScriptsPath = \は/ opt \ / ZABBIX \ /スクリプト" /opt/zabbix/etc/zabbix_server.confをセッド
ます。mkdir -pは/ opt / ZABBIX /スクリプト
CP /opt/nginx/html/conf/zabbix.conf.php.example /opt/nginx/html/zabbix.conf.php
vimの/opt/nginx/html/zabbix.conf.php
$ DB [ 'PASSWORD'] = 'パスワード';
-i "S / BASEDIR = \は/ usr \ /ローカル/ BASEDIR = \は/ opt \ / ZABBIX / gの" /etc/init.d/zabbix_serverをセッド
-i "S / BASEDIR = \は/ usr \ /ローカル/ BASEDIR = \は/ opt \ / ZABBIX / gの" /etc/init.d/zabbix_agentdをセッド
systemctlデーモンリロード
systemctlスタートzabbix_server
zabbix_agentd開始systemctl
netstatの-utnlp | grepをZABBIX
ヒント:1005010051個のポートを表示することができない場合は、猫の/tmp/zabbix_server.logとsystemctlステータスzabbix_serverでエラーメッセージを表示することができます。ここではZABBIXサーバが展開されています。
ケースは、中国が文字化けする場合のZABBIXサーバ、ファイルは/ opt / nginxの/ HTML /資産/ fontsディレクトリにドキュメントukai.ttfファイルを解きます
CDは/ opt / nginxの/ HTML /資産/フォント
vimの/opt/nginx/html/include/defines.inc.php
70( 'ZBX_GRAPH_FONT_NAME'、 '鵜飼')を定義します。//フォントファイル名
111( 'ZBX_FONT_NAME'、 '鵜飼')を定義します。
2.5 展開取付ZABBIX-agentd
ファイアウォール-CMD --zone =公共--add-ポート= 10050 / tcpの--permanent
ファイアウォール-cmdを--reload
yumはjavaのインストール-y *のmysql-develのNET-SNMP-develのlibevent-develのmysqlの-develのカール-develのgccのwgetの
wgetのhttps://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/4.0.12/zabbix-4.0.12.tar.gz
setenforce 0
useraddの-s / sbinに/ nologinにZABBIX
タール-xf ZABBIX-4.0.12.tar.gz
CD ZABBIX-4.0.12 /
./configureを--enable-エージェント--prefix =は/ opt / ZABBIX
作る&& make installを
ます。mkdir -pは/ opt / ZABBIX /ログ
chownコマンドZABBIXは/ opt / ZABBIX /ログ
SED -iさん#^ログファイル。* $#ログファイル=は/ opt / ZABBIX /ログ/ zabbix_agentd.log# '/opt/zabbix/etc/zabbix_agentd.conf
SED -iさん#^サーバ=。* $#サーバ= 127.0.0.1、サーバーのIP# '/opt/zabbix/etc/zabbix_agentd.conf
SED -iさん#^ ServerActive。* $#ServerActive =サーバーIP# '/opt/zabbix/etc/zabbix_agentd.conf
SED -i '103aListenPort = 10050' /opt/zabbix/etc/zabbix_agentd.conf
CP /root/zabbix-4.0.12/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/の
SED -iさん#BASEDIR =。* $#BASEDIR =は/ opt / ZABBIX# '/etc/init.d/zabbix_agentd
/etc/init.d/zabbix_agentd開始
systemctlデーモンリロード
zabbix_agentd開始systemctl
systemctl状態zabbix_agentd
3. インストールgrafana 6.0を展開します
wgetのhttps://dl.grafana.com/oss/release/grafana-6.0.0-1.x86_64.rpm
yumをgrafana-6.0.0-1.x86_64.rpmをインストール-y
インストールZABBIXとグラフィックスタイルのプラグイン
grafana-CLIプラグインはalexanderzobnin-ZABBIX-アプリをインストール
grafana-CLIプラグインはgrafanaクロック・パネルを取り付け
grafana-CLIプラグインはgrafana-円グラフパネルを取り付けます
systemctl galluogi grafanaサーバ
grafana-サーバを起動systemctl
vimの、/ etc / sysconfig / iptables内
-A INPUT -p tcpの-m状態--state NEW -m tcpの--dport 3000 -j ACCEPT
ログイン住所:HTTP://サーバーIP:3000 /ログイン ログインアカウント:管理者初期ログインパスワード:管理者パスワードの変更:
4 :設定ZABBIXのインターフェースとアラーム
4.1 初期ログイン設定
最初のログイン画面:HTTP://サーバーIP / index.phpを 、あなただけは、[次へ]をクリックすることができ、データベースのパスワードフィールドに優れたデータベースのパスワードを設定するために記入する必要があります。
初期ログインアカウント:管理者初期パスワードログイン:ZABBIX
1:インターフェース設定の表示中国
言語列の人々の画像の右上隅をクリックして、更新を保存するために「中国」をクリックして選択します。
2:無効にゲストユーザー
「ユーザー・グループ」---「ゲスト」---インターフェース「管理」をクリックしてください - 「無効にする」をチェックすると、クリックしてください
3:管理者パスワードを変更します。
アップデートを「---クリックして」「---「パスワード」パスワードを入力します---「管理者」」 - インタフェース「管理」---「ユーザー」をクリックしてください。
4:新しいユーザー、および管理者に設定されています
「ユーザー」---「ユーザーの作成」----グループ「のZabbix管理者」---「管理」インターフェースをクリック - 。パスワード「」---「追加」
インターフェース「管理」---「ユーザー」をクリックしてください---「許可」---ユーザータイプ「スーパー管理者」---「更新」
4.2 ホストグループ
---グループ名「PPOVD」---アドオンを「ホストグループの作成」---「設定」---「ホストグループ」をクリックします。
---「ユーザーグループ」---「のZabbix管理者」---権限を(読み書き)--- --- ---]をクリックし、ホストグループへのユーザー・グループの入力を選択し、「追加」、「管理」をクリックします。
4.3 ホストの追加
[追加] - 「設定」---「ホスト」---「ホストの作成」---ホスト名「PPOVD04」---グループ「PPOVD」--- IPアドレス「」をクリックします
ヒント:、直接、最初に作成されたホストの下で、ホストの同じタイプを追加し、「クローン」をクリックし、IPおよび名前を変更します。
4.4 プロジェクトの監視の追加
監視項目の選択に応じてタイプ「ZABBIXクライアント」---キー」 - 名前は「名前を入力し、」---「の監視項目を作成するには、」---「設定」---「ホスト」---「監視項目」をクリックします。 「---アドオン
テンプレート名「テンプレートを作成」---「設定」---「テンプレート」をクリックします--- ---グループは、「追加」---「選択」(営業入力テンプレート名に基づいて)
4.5 プロジェクトに応じてグラフィックやフリップフロップを追加
---「「---名前」ディスクは十分ではない「設定」---「ホスト」---「トリガー」---トリガーの作成」をクリックします。
4.6 カスタムマクロと監視警報
1 :以下20G以上に達する/ホームアラーム時に、ディスクサイズを監視
選択したホスト上でクリックして - - 「ホスト」 - ホストでは、マクロの必要なセットを監視する必要性を作成し、「設定」をクリックし、「マクロ」をクリックします -
{$ FS.FREE.HIGH} 20G
HOST.DIR $ {} /ホーム
2 :対応する監視項目を作成し、
「ホスト」---「監視項目」---「設定」をクリックして---名前({$ HOST.DIR}上の空きディスク領域)---
キー(vfs.fs.size [{$ HOST.DIR}、自由])--- [更新]をクリックします
3 :対応するアラームを作成します。
名前---表現「空きディスク容量が少ない{$ FS.FREE.HIGH}よりも上である」---「ホスト」---「トリガー」---「トリガーの作成」---「設定」をクリックします。式 "{PPOVD04:vfs.fs.size [{$ HOST.DIR}、フリー] .last(0)} <{$ FS.FREE.HIGH}"
4 :監視サービスは、サービスが正常に動作しているかどうかを決定するためにポートの有無を監視することにより、正しく機能しています。
クリック---ホスト---「監視項目」---「監視項目を作成するには、」---名「nginxの状態」---キー(net.tcp.listen [80])---「設定」をクリックします。 「更新」
「設定」をクリックして、トリガー--- --- --- ---ホスト「ダウンしているnginxの」名前「をトリガーの作成」--- ---式の重症度({PPOVD04:net.tcp.listen [ 80] .last()} = 0)----更新
4.7 アラームの監視を追加します
「管理」---「アラームメディアタイプ」メディアタイプ--- ---作成名「電報」---タイプ(スクリプト)---スクリプト名「telegram.py」---スクリプトパラメータ{ALERTをクリックします。 SENDTO} {ALERT.SUBJECT} {ALERT.MESSAGE} ----追加
--- ---「管理」「ユーザー」メディアは--- ---アラームタイプ「電報」---受信者「電報アカウント」をクリックして[更新]をクリックします
「名前」---新しいトリガ条件(重症以上のトリガ警告)---操作---デフォルトのタイトル---「アクションを作成します」---「設定」をクリックします( {}} {{{火災火災}}、{{火}} :アラームノード:{} TRIGGER.NAME )
--- メッセージの内容
問題の詳細:{ITEM.NAME}:{} ITEM.VALUE
アラームホスト:{} HOST.NAME
アラーム時間:{EVENT.DATE} {} EVENT.TIME
アラームレベル:{} TRIGGER.SEVERITY
アラーム:{} TRIGGER.NAME
アラームアイテム:{} TRIGGER.KEY1
現在のステータス:. {TRIGGER.STATUS} {} ITEM.VALUE
イベントID:{} EVENT.ID
zbxtg:グラフ
zbxtg:graphs_period = 10800
zbxtq:アイテムID:{} ITEM.ID1
zbxtg:タイトル:{HOST.HOST} - {TRIGGER.NAME}
--- クリック---(新しいユーザーグループに送信された管理者のZABBIXのユーザー(ハリー)---(電報)---動作条件にのみ送信に送ら---)((イベント)は未確認等しく認めました- -追加
--- デフォルトのタイトルを復元する---({{OK}}、{{ OK}}、{{OK}}: 修復ノード:{TRIGGER.NAME})---メッセージ内容
問題の詳細:{ITEM.NAME}:{} ITEM.VALUE
回復宿主:{} HOST.NAME
回復時間:{EVENT.DATE} {} EVENT.TIME
イベントクラス:{} TRIGGER.SEVERITY
修復プロジェクト:{} TRIGGER.KEY1
現在のステータス:. {TRIGGER.STATUS} {} ITEM.VALUE
イベントID:{} EVENT.ID
zbxtg:グラフ
zbxtg:graphs_period = 10800
zbxtq:アイテムID:{} ITEM.ID1
zbxtg:タイトル:{HOST.HOST} - {TRIGGER.NAME}
--- クリック---(新しいユーザーグループに送信された管理者のZABBIXのユーザー(ハリー)に送ら---)---(電報)---追加するのみ送信
--- アドオン
#Server構成スクリプトファイル、プラグインをインストール電報ZABBIXサーバー
wgetのhttps://bootstrap.pypa.io/get-pip.py
パイソンget-pip.py
ピップ電報をインストール
ピップのpython-電報ボットをインストール
ピップインストールpyTelegramBotAPI
#は/ opt /のZabbix /スクリプトでは、スクリプトファイルtelegram.pyを入れて、実行許可を与えます
CDは/ opt / ZABBIX /スクリプト/
#!USR / binに/ envをパイソン
#ピップインストールpyTelegramBotAPI
輸入SYS
輸入telebot
接点= sys.argvの[1]
被験者= sys.argvの[2]
コンテンツ= sys.argvの[3]
#件名=「テスト」
#コンテンツ=「テスト」
TEST = telebot.TeleBot(トークン= '811992293:AAEElXmUbdRpijLrPkLqN3sjetx-EDPrB9Y')
chat_id = INT(接触)
TEST.send_message(chat_id = chat_id、テキスト=主題+ '\ n' +コンテンツ)
#ファイルを高めるために実行許可を
chmodの+ X /opt/zabbix/scripts/telegram.py
chownコマンドzabbix.zabbix /opt/zabbix/scripts/telegram.py
#サーバー上のPythonのバージョンを確認しますが、ZABBIX 2.7と上記缶で、CentOSのは、デフォルトのバージョンを使用することができます
[ルート@ localhostのスクリプト]#パイソン
#情報を送信するためにスクリプトを使用して手動テストスクリプト、テスト例:
Pythonのtelegram.py "-355170319" 件名:テスト情報$ '最初の行\ nsecondライン\ nthirdライン'
注:テストグループは、スクリプト全体が正しい、およびその他のエラーならば、試してみるのがたくさんあることを示す、電報のアラームで見られた場合。
追加:ロボット用電報アラーム
1 :オープン電報ロボット
ステップ1:「@BotFather」オープンと公式電報ロボットダイアログ内の検索バー内の電報を入力します。
ステップ2:センド/スタート
第三段階:自身のロボットに名前(必須終了_bot、正面をカスタマイズすることができます)
ステップ4:私は、トークン正式て送信を受け取ります
ステップ5:グループを確立しながら、グループにロボットを追加し、メッセージを受信する個人アカウントが必要にロボット電報を追加します。
使用
マシンが個別に送信されている場合に使用が公式電報は、私にトークン対応chat_idを送信されます、それがデータの前に、グループに送信された場合、チャットは、純粋な数字の文字列であります -
https://api.telegram.org/bot811992293:AAEElXmUbdRpijLrPkLqN3sjetx-EDPrB9Y/getUpdates
(個人ID:865969417グループID:-355170319)
5 :設定表示ZABBIX grafana
5.1 :ダッシュボードの作成
2番目のグラフのインターフェースの右側をクリックしてダッシュボード--- ---保存名(ZABBIX)をクリックしてください----「保存」をクリックします。
コンフィギュレーション・インターフェースのプラグインをクリックして--- ---「ZABBIX」---「有効」をクリックします---
設定--- ZABBIXが完了したことを示す表示---任意の画面「追加データ・ソース」をクリックしてください---データソースをクリックしてください。
5.2 コンフィギュレーションgrafana表示データは、ZABBIX
---インターフェイス設定]をクリックします---「データソースを追加」をクリックしてください---「ZABBIX」をクリックしてください
URLを入力します(HTTP://サーバーIP / api_jsonrpc.php)---
でZABBIXバージョン4.xを選択
管理者を入力します------パスワード入力ZABBIXパスワードのユーザー名()---「セーブ&テスト」をクリック
5.3grafana グラフィックスを作成します
)「クエリを追加」をクリック---「作成」をクリックします---(ZABBIX)----グループ(ホストグループを入力してください)---ホスト(ホスト名)へのクエリは、---(-title「一般」をクリックしてください