zbxtable的使用

實驗環境:前端

zabbix server 172.16.1.121mysql

mysql 172.16.1.121nginx

訪問端 172.16.1.122web

 

54.1 zbxtablesql

1 說明數據庫

ZbxTable使用Go語言編寫ZbxTable,可無縫對接已有的Zabbix系統,適配目前全部Zabbix版本,vim

可導出指標,對告警歷史、告警消息進行分析,同時支持GraphTree功能。服務器

 

參考文檔:架構

https://zbxtable.cactifans.com/2020/07/24/zbxtable-1.0/併發

https://zbxtable.cactifans.com/docs/install/rpm/

 

2 架構圖

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

 

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

 

3 部署Zbxtable

在172.16.1.122節點上操做

(1) 添加yum源

CentOS 7.x x86_64

# rpm -Uvh https://repo.cactifans.com/zbxtable/1.0/rhel/7/x86_64/zbxtable-release-1.0-1.el7.noarch.rpm

# yum clean all

 

CentOS 8.x x86_64

# rpm -Uvh https://repo.cactifans.com/zbxtable/1.0/rhel/8/x86_64/zbxtable-release-1.0-1.el8.noarch.rpm

# dnf clean all

 

(2) 安裝

1) 安裝 Zbxtable

# yum install zbxtable -y

# ls -l /usr/local/zbxtable/

total 38168

-rwxr-xr-x 1 zbxtable zbxtable 39082862 Dec 24 23:10 zbxtable

 

2) 安裝 Zbxtable-Web

# yum install zbxtable-web -y

# ls -l /usr/local/zbxtable/

total 38168

drwxr-xr-x 5 root root 187 Jan 30 20:45 web

-rwxr-xr-x 1 zbxtable zbxtable 39082862 Dec 24 23:10 zbxtable

 

(3) ZbxTable 配置

1) mysql數據庫初始化

在172.16.1.121節點上操做

# mysql -uroot -p'zabbix5.0@lc'

mysql> create database zbxtable character set utf8 collate utf8_bin;

mysql> create user zbxtable@'%' identified by 'zbxtablepwd123';

mysql> grant all privileges on zbxtable.* to zbxtable@'%';

mysql> quit;

2) 系統初始化

# cd /usr/local/zbxtable/

# ./zbxtable init

 

# 會進入交互式命令行,根據實際狀況輸入數據庫帳號及密碼,以及zabbix鏈接信息,

# 最後確認便可生成配置文件。如數據庫及zabbix鏈接錯誤,會要求從新輸入鏈接信

# 息,不然沒法生成配置文件。

 

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

 

# ls -l /usr/local/zbxtable/

total 52868

drwxr-xr-x 2 root root 22 Jan 30 20:48 conf

-rwxr-xr-x 1 root root 733 Jan 30 20:48 control

-rwxr-xr-x 1 root root 15043584 Jan 30 20:48 msty.ttf

-rwxr-xr-x 1 root root 387 Jan 30 20:48 nginx.conf

drwxr-xr-x 5 root root 187 Jan 30 20:45 web

-rwxr-xr-x 1 zbxtable zbxtable 39082862 Dec 24 23:10 zbxtable

 

# cat /usr/local/zbxtable/conf/app.conf

; zbxtable

appname = zbxtable

httpport = 8084

runmode = prod

timeout = 12

token = 8bb379179d5d4a7c83a1cbc17d4b2bdb

copyrequestbody = true

; database

dbtype = mysql

dbhost = 172.16.1.121

dbuser = zbxtable

dbpass = zbxtablepwd123

dbname = zbxtable

dbport = 3306

; zabbix

zabbix_web = http://172.16.1.121/zabbix

zabbix_user = Admin

zabbix_pass = zabbix

 

(4) 啓動Zbxtable

# systemctl start zbxtable

# systemctl enable zbxtable

 

(5) 查看Zbxtable服務狀態

# systemctl status zbxtable

# 必定要確保zbxtable服務是Active: active(running)狀態,如不是正常狀態,

# 建議查看日誌/usr/local/zbxtable/logs/zbxtable.log或者系統

# /var/log/message日誌。

 

# netstat -tunlp | grep zbxtable

tcp6 0 0 :::8084 :::* LISTEN 1579/zbxtable

 

(6) Zbxtable-Web配置

文件位於/usr/local/zbxtable/web前端爲純靜態文件,需nginx作代理。

1) 安裝nginx

# yum install nginx -y

2) 拷貝nginx配置文件

# cp /usr/local/zbxtable/nginx.conf /etc/nginx/conf.d/

# 說明:此時/etc/nginx/nginx.conf默認server 80端口還在,若是

# 和本地端口有衝突,建議將配置註釋掉。

3) 啓動nginx

# systemctl start nginx

4) 配置開機啓動

# systemctl enable nginx

5) 查看端口

# netstat -tunlp | grep nginx

tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1686/nginx: master

tcp 0 0 0.0.0.0:8088 0.0.0.0:* LISTEN 1686/nginx: master

 

(7) 訪問zbxtable

http://172.16.1.122:8088

系統默認帳號:admin

密碼:Zbxtable

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

 

4 部署MS-Agent

在172.16.1.121節點上操做

(1) 說明

1) MS-Agent爲告警消息採集客戶端,安裝在zabbix-server端,採集zabbix-server產生的告警信息,併發送到ZbxTable平臺。

ms-agent需使用zbxtable命令完成在Zabbix Server的報警Actoin等配置,要確保zbxtable服務器上

/usr/local/zbxtable/conf/app.conf配置正確。

 

2) /usr/lib/zabbix/alertscripts/ms-agent

接收Zabbix-server平臺產生的告警併發送到ZbxTable平臺。

若是你的Zabbix Server的alertscripts目錄不爲/usr/lib/zabbix/alertscripts/,須要移動ms-agent到你的zabbix server

的alertscripts目錄下便可,不然會在Zabbix告警頁面出現找不到ms-agent的錯誤提示,ZbxTable平臺也沒法收到告警消息。也能夠

修改Zabbix Server的配置文件,將alertscripts目錄指向/usr/lib/zabbix/alertscripts/。

 

3) /etc/ms-agent/app.ini

ms-agent的配置文件。

/etc/ms-agent/app.ini爲程序配置文件,默認內容以下

[app]

Debug = 1

TenantID = zabbix01

LogSavePath = /tmp

Host = http://192.168.10.10:8088/v1/receive

Token = ec573cf7388da56916f75ba9bbe46a69

 

# Debug 爲程序日誌級別 0 是 debug,1 爲 info,查看日誌文件名格式以下/tmp/ms-agent_yyyymmdd.log

# LogSavePath 爲日誌目錄,默認爲/tmp 目錄

# Host 爲 ZbxTable 系統地址,默認爲 http 服務器 IP+/v1/receive

# Token 與 ZbxTable 通訊的 Token,可自行修改,須要與 ZbxTable 平臺配置保持一致便可,不然沒法接收告警。

 

(2) 在zabbix-server上生成告警Action等

在172.16.1.122節點上操做

# cd /usr/local/zbxtable/

# ./zbxtable install

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

 

# 在zabbix中查看建立的動做

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

 

(3) 安裝MS-Agent

1) 添加yum源

CentOS 7.x x86_64

# rpm -Uvh https://repo.cactifans.com/zbxtable/1.0/rhel/7/x86_64/zbxtable-release-1.0-1.el7.noarch.rpm

# yum clean all

 

CentOS 8.x x86_64

# rpm -Uvh https://repo.cactifans.com/zbxtable/1.0/rhel/8/x86_64/zbxtable-release-1.0-1.el8.noarch.rpm

# dnf clean all

 

2) 安裝

# yum install ms-agent -y

 

3) 修改app.ini配置文件

# vim /etc/ms-agent/app.ini

[app]

Debug = 1

TenantID = zabbix01

LogSavePath = /tmp

Host = http://172.16.1.122:8088/v1/receive

Token = 8bb379179d5d4a7c83a1cbc17d4b2bdb

 

(4) 重啓zabbix-server

# systemctl restart zabbix-server.service

 

5 查看zbxtable告警分析

http://172.16.1.122:8088/alarm/query

 

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

 

watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=

相關文章
相關標籤/搜索