Grafana之部署Zabbix数据源(第二篇)

Zabbix是当前主流开源的企业级分布式监控系统。Zabbix特点是:安装部署较简单,且默认自带了多种监控告警模板。也具备较强的仪表盘展示功能;提供API接口,支持脚本调用;支持自定义编写插件以及监控模板。

一、安装zabbix软件包

环境说明:

# cat /etc/redhat-release

CentOS Linux release 7.7.1908 (Core)

uname -a

Linux monitor01 3.10.0-1062.18.1.el7.x86_64 #1 SMP Tue Mar 17 23:49:17 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

确保防火墙、selinux已经关闭

# systemctl stop Firewalld

# systemctl disable Firewalld

# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

# setenforce 0


修改用户资源限制

# cat /etc/security/limits.conf

root soft nofile 65535

root hard nofile 65535

* soft nproc 65535

* hard nproc 65535

* soft nofile 65535

* hard nofile 65535

* hard core unlimited

* soft core unlimited


安装zabbix yum源

# rpm -Uvhhttps://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm

安装epel源,用于支持nginx

# yum install epel-release

安装zabbix相关软件包

# yum search zabbix

# yum -y install zabbix-*

或者只安装以下组件

# for pkgs in  zabbix-server-mysql zabbix-web-mysql zabbix-web-mysql zabbix-agent zabbix-get zabbix-web zabbix-sender zabbix-nginx-conf ;do yum -y install $pkgs;done


zabbix-agent-4.4.7-1.el7.x86_64

zabbix-get-4.4.7-1.el7.x86_64

zabbix-release-4.4-1.el7.noarch

zabbix-server-mysql-4.4.7-1.el7.x86_64

zabbix-web-4.4.7-1.el7.noarch

zabbix-sender-4.4.7-1.el7.x86_64

zabbix-nginx-conf-4.4.7-1.el7.noarch

zabbix-web-mysql-4.4.7-1.el7.noarch

 

二、安装mariadb并初始化导入zabbix表结构数据

安装mariadb数据库并启动

# yum -y install mariadb-*

# systemctl enable mariadb

# systemctl start mariadb


创建zabbix数据库

create database zabbix character set utf8 collate utf8_bin;

grant all privileges on zabbix.* to 'zabbix'@'localhost' identified by 'zabbix@123';

flush privileges;

quit;


导入数据

# zcat /usr/share/doc/zabbix-server-mysql-*/create.sql.gz |mysql -uzabbix -p'zabbix@123' -b zabbix


三、修改zabbix_server.conf并启动zabbix_server

# cat /etc/zabbix/zabbix_server.conf |grep -v "^#" |grep -v "^$" |grep -v grep  

LogFile=/var/log/zabbix/zabbix_server.log

LogFileSize=0

DebugLevel=3

PidFile=/var/run/zabbix/zabbix_server.pid

SocketDir=/var/run/zabbix

DBName=zabbix

DBUser=zabbix

DBPassword=zabbix@123

StartPollers=16

StartPollersUnreachable=4

StartTrappers=10

StartPingers=8

SNMPTrapperFile=/var/log/snmptrap/snmptrap.log

CacheSize=1024M

StartDBSyncers=8

HistoryCacheSize=1024M

HistoryIndexCacheSize=256M

TrendCacheSize=1024M

Timeout=4

AlertScriptsPath=/usr/lib/zabbix/alertscripts

ExternalScripts=/usr/lib/zabbix/externalscripts

LogSlowQueries=3000

StatsAllowedIP=127.0.0.1


# systemctl enable zabbix-server

# systemctl start zabbix-server


四、修改nginx/php-fpm配置,将server端口配置为8080,端口配置没有特殊要求,只要未被占用都可配置。若想使用80端口,则需要注释或修改nginx.conf的server {}段配置

# vi /etc/nginx/conf.d/zabbix.conf


listen          8080;

server_name     monitor.com;



修改php时区

# vi /etc/php-fpm.d/zabbix.conf

php_value[date.timezone] = Asia/Shanghai



# systemctl enable php-fpm

# systemctl restart php-fpm


# systemctl enable nginx

# systemctl start nginx


五、设置并登录zabbix系统

访问http://IP:port/setup.php






Zabbix 服务名是可选设置







配置action,实现使安装有Zabbix Agent的Linux自动注册到Zabbix Server端。

步骤:configuration>>action>>Event source(选择Auto registration)>>Create Action,我们按如下步骤来定义个action





六、安装zabbix-agent

# rpm -Uvhhttps://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm

# yum -y install zabbix-agent

修改zabbix-agent配置,monitor01为Zabbix Server主机的hostname,所有Zabbix agent主机上都要添加Zabbix Server主机的hostname。

# sed -i "s/Server=127.0.0.1/Server=monitor01/g" /etc/zabbix/zabbix_agentd.conf

# sed -i "s/ServerActive=127.0.0.1/ServerActive=monitor01/g" /etc/zabbix/zabbix_agentd.conf

# sed -i "s#Hostname=Zabbix server#Hostname=$(hostname)#g" /etc/zabbix/zabbix_agentd.conf

# sed -i "s#\# HostMetadataItem=#HostMetadataItem=system.uname#g" /etc/zabbix/zabbix_agentd.conf  

启动zabbix-agent

# systemctl enable zabbix-agent

# systemctl restart zabbix-agent

如果有几十上百个节点,我们就需要借助Ansible或SaltStack等批量部署工具来快速部署了。


安装Zabbix Agent后的主机会自动注册到Zabbix Server上,并且Availability状态显示为绿色

就表示添加成功了。


由于本系列教程讲述的重点是Grafana的使用,Zabbix仅是为Grafana提供要展示数据的接口,所以不再重点讲述,后续在讲解Grafana使用时会再穿插讲解一些Zabbix使用技巧。

总结:对Linux较熟悉的同学部署上述环境应该so easy。当然部署方法多种多样,想挑战又有时间可以全部用源码来编译安装,能更体验过程;想更简单一点的话,可以尝试用zabbix官方提供的docker镜像,但前提得会用docker。

写给自己:世上无难事,只怕有心人。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,547评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,399评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,428评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,599评论 1 274
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,612评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,577评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,941评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,603评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,852评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,605评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,693评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,375评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,955评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,936评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,172评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,970评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,414评论 2 342