一、实验准备:
三台主机:
一台zabbix:
server:172.17.251.131 192.168.191.131
两台被监控:
node1: 172.17.25.132 192.168.191.132
node2: 172.17.251.133 192.168.191.133
1、改主机名
在实验时,有用到主机名解析主机的
(1)在192.168.191.131
hostnamectl set-hostname server
(2)在192.168.191.132
hostnamectl set-hostname node1
(3)在192.168.191.133
hostnamectl set-hostname node2
(4)三台主机同步时间
同步时间 ntpdate 172.17.0.1
exec bash 生效修改
二、安装包
三台主机:
确保server,node1,node2可以上网,如不能上网,可参考下面博客修改配置
http://blog.51cto.com/guanm/2045999
也可将包全部下载后导入linux中。
1、在server上安装zabbix 源
wget http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
2、安装
rpm -ivh zabbix-release-3.4-2.el7.noarch.rpm
会生成一个名为zabbix.repo 的yum源
三、配置server 上数据库
1、在server上配置数据库
yum install mariadb -y
vim /etc/my.cnf.d/server.cnf
[server]
skip_name_resolve = ON
innodb_file_per_table = ON
innode_buffer_pool_size = 256M
max_connections = 2000
log-bin = master-log
systemct start mariadb
2、安装zabbix所需包
yum install zabbix-server-mysql zabbix-web zabbix-web-mysql zabbix-agent zabbix-get zabbix-sender -y
3、zabbix连接数据库时尽可能用普通用户,在数据库中创建授权用户
mysql -uroot -p
create database zbxdb character set 'utf8'; #创建数据库,设定字符集为utf8
grant all on zbxdb.* to zbxuser@'192.168.191.%' identified by 'zbxpass'; #创建授权用户密码
flush privileges; 刷新权限
4、生成zabbix表
(1) rpm -ql zabbix-server-mysql
/usr/share/doc/zabbix-server-mysql-3.4.4/create.sql.gz 生成zabbix数据库脚本
(2) cp /usr/share/doc/zabbix-server-mysql-3.4.4/create.sql.gz .
(3)gzip -d create.sql.gz 解压
(4) mysql -uzbxuser -pzbxpass -h192.168.191.131 zbxdb < create.sql
(5)mysql -uzbxuser -pzbxpass -h192.168.191.131 登录查看是否导入表成功。
四、配置zabbix server 文件
1、 cd /etc/zabbix/
cp zabbix_server.conf{,.bak} 备份
vim zabbix_server.conf
仅需该下面三项
DBHost=192.168.191.131
DBName=zbxdb
DBUser=zbxuser
DBPassword=zbxpass
2、启动zabbix server服务
systemctl start zabbix-server
ss -ntl
查看10051端口打开
3、设置时区
vim /etc/php.ini
date.timezone = Asia/Shanghai
4、启动httpd服务
systemct start httpd
五、在浏览器访问
1、http://192.168.191.131/zabbix/
2、需要初始化
(1)
(2)如果都显示ok,直接下一步
(3)填写数据库信息,下一步
(4)如果仅有一台主机,这一步可以不填
(5)如信息正确,直接下一步
(6)点击完成
3、登录 ,默认用户名为admin,密码为zabbix
记住登录后第一时间修改密码
4、zabbix的仪表盘,暂时还没有数据
5、修改密码
6、zabbix的状态
Status of Zabbix
Parameter Value Details
Zabbix server is running Yes 192.168.191.131:10051 zabbix是否运行
Number of hosts (enabled/disabled/templates) 76 0 / 1 / 75
监控的主机 :可以用的数量为0 ,已经配置但还没有监控数量为1,即自身,模板数量75
Number of items (enabled/disabled/not supported) 68 0 / 68 / 0
监控指标 ,68是被禁用的主机上的指标
Number of triggers (enabled/disabled [problem/ok]) 46 0 / 46 [0 / 0]
触发器数量
Number of users (online) 2 1
用户数量,管理员和guest两个
Required server performance, new values per second 0
六、配置监控主机node1
1、安装包
yum install zabbix-agent zabbix-sender -y
2、修改配置文件
cp zabbix_agentd.conf{,.bak} 备份
vim zabbix_agentd.conf
修改下面几行,其他的采用默认值即可
Server=192.168.191.131
ServerActive=192.168.191.131
Hostname=node1
3、 systemctl start zabbix-agent 启动服务
ss -ntl 查看10050端口
七、手动将node1直接纳入到监控中
1、增加host group
2、添加主机
(1)
(2)监控的多项指标,一类的指标可以加入同一个applications 应用组
可以创建cpu 的CPU utils 和内存的memory,网络的network等
3、添加监控项
(1)常见item
(2)system.cpu.intr cpu中断
也可以在server的命令行查看
[root@server ~]# zabbix_get -s 192.168.191.132 -p 10050 -k "system.cpu.intr"
1922640
![](http://i2.51cto.com/images/blog/201711/30/2eeb317316cc4c776a9c208a53c38b78.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
(3)查看监控图
(4)中断发生的速率:图形如下
八、系统的指标有很多个,一一添加,工程也很大,可以套用模板
九、例子2:node1加入网卡监控项
1、也可以在server命令行查看:
[root@server ~]# zabbix_get -s 192.168.191.132 -p 10050 -k "net.if.in[eth1,packets]"
4158
(1)key 选择如下:
(2)
(3)查看监控图
2、同样可以定义其他指标
(1)
(2) 定义如下监控指标
十、定义触发器
1、(1)
(2)创建新的trigger
2、查看监控
可以看到监控图上多了一条线
3、一段时间后,已经有警告
十一、定义action
1、定义media type
(1)可以直接修改,也可以创建新的
(2)
2、定义收件人信息
(1)
(2)
3、定义action
(1)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
十二、这里只对上面的网卡的进入的packets大于100做操作,意义不大
这里做一个监控redis服务,在node1上
1、yum intall redis -y
vim /etc/redis.conf
bind 0.0.0.0 修改改行
systemctl start redis 启动服务
ss -ntl 查看6379端口
2、添加item
(1)
(2) 报错,可以查看官网redis服务不支持这种key,所以使用以下方式,删除原来的,重新定义item
(3)1说明现在服务启动
3、定义trigger
(1)
(2)测试:停掉服务
在node1上停掉服务
启动服务
4、定义action
(1)
(2)在node1上
设定zabbix可以切换用户执行
①visudo
zabbix ALL=(ALL) NOPASSWD: ALL 添加该行
Defaults !visiblepw 注释该行
②vim /etc/zabbix/zabbix_agentd.conf
EnableRemoteCommands=1 修改该行为1 ,允许远程命令
LogRemoteCommands=1
③重启zabbix-agent服务
systemctl restart zabbix-agent
(3)
定义第一阶段重启服务,报警
定义第二阶段,admin用户收到邮件
(4)
(5)测试
systemctl stop redis
自动解决问题
成功
(6)在node1上查看
ss -ntl
可以看到6379端口自己打开
在server上查看,mail
本文转自 hawapple 51CTO博客,原文链接:http://blog.51cto.com/guanm/2046386