展開は4.0 + grafanaをZABBIX

不完全な、参照用のみ

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「一般」をクリックしてください

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

おすすめ

転載: www.cnblogs.com/will--1213/p/11824550.html