Zabbix基础配置
文章目录
环境
角色 | 主机 | 软件 |
---|---|---|
Zabbix-server | 10.0.0.71 | zabbix-server zabbix-web zabbix-agent nginx1.18 php7.2 |
Zabbix-Client | 10.0.0.7 | zabbix-agent2 |
Zabbix -主机配置
Zabbix - Server配置
##下载软件
##安装nginx
[root@zabbix ~]# yum localinstall -y nginx
##安装php7.2
[root@zabbix ~]# yum localinstall -y php72/*
##配置nginx网页
[root@zabbix ~]# vim /etc/nginx/conf.d/zabbix.conf
server {
listen 80;
server_name localhost;
location / {
root /html;
index index.php index.html;
}
location ~ \.php$ {
root /html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
##配置php-fpm
[root@zabbix ~]# sed -i '/^user/c user = nginx' /etc/php-fpm.d/www.conf
[root@zabbix ~]# sed -i '/^group/c group = nginx' /etc/php-fpm.d/www.conf
##启动服务
[root@zabbix ~]# systemctl restart nginx php-fpm
[root@zabbix ~]# systemctl enable nginx php-fpm
##配置zabbix-web
[root@zabbix ~]# tar xf zabbix-5.0.8.tar.gz
[root@zabbix ~]# mkdir -p /html
[root@zabbix ~]# mv zabbix-5.0.8/ui/* /html
[root@zabbix ~]# mkdir -p /var/lib/php/session
[root@zabbix ~]# chown -R nginx.nginx /var/lib/php/session
##修改php.ini配置文件
[root@zabbix ~]# vim /etc/php.ini
##修改下面6行
max_execution_time = 300
max_input_time = 300
post_max_size = 16M
date.timezone = Asia/Shanghai
pdo_mysql.default_socket= /tmp/mysql.sock
mysqli.default_socket = /tmp/mysql.sock
##安装zabbix-server
[root@zabbix ~]# yum install -y zabbix-server-mysql
##导入zabbix初始数据库
[root@zabbix ~]# zcat /usr/share/doc/zabbix-server-mysql-5.0.22/create.sql.gz | mysql -uzabbix -h'10.0.0.51' -p'Qj123.com' zabbix
###如果显示没有mysql命令,安装mariadb即可
[root@zabbix ~]# yum install -y mariadb
##配置zabbix-server
[root@zabbix ~]# vim /etc/zabbix/zabbix_server.conf
DBHost=10.0.0.51
DBName=zabbix
DBUser=zabbix
DBPassword=Qj123.com
DBSocket=/tmp/mysql.sock
##启动zabbix-server
[root@zabbix ~]# systemctl start zabbix-server
[root@zabbix ~]# systemctl enable zabbix-server
[root@zabbix ~]# ss -an | grep :10051
Zabbix - Client配置
## 安装zabbix-agent2-5.4.9-1.el7.x86_64.rpm
[root@web01 ~]# yum localinstall -y zabbix-agent2-5.4.9-1.el7.x86_64.rpm
##修改/etc/zabbix/zabbix_agent2.conf配置文件
[root@web01 ~]# vim /etc/zabbix/zabbix_agent2.conf
#修改以下:
Server=10.0.0.71
##启动zabbix
[root@web01 ~]# systemctl restart zabbix-agent2.service
Zabbix的自动发现和主动注册
自动发现
客户端zabbix-agent和zabbix-agent2都可以,修改配置文件,只需指定Server即可Mr.T
##修改配置文件
[root@web01 ~]# vim /etc/zabbix/zabbix_agent2.conf
Server=10.0.0.71
ServerAactive=10.0.0.71
# 自动发现,默认读取/etc/hosts里面的主机解析名,如果没有做解析,则默认选择使用ip作为名称,与下面两个参数无关
# Hostname=Zabbix server
# HostnameItem=system.hostname
##启动agent2服务
[root@web01 ~]# systemctl start zabbix-agent2
[root@web01 ~]# systemctl enable zabbix-agent2
登录Zabbix创建发现规则
创建自动发现的动作
等待一会,如果发现自动添加主机则表示成功
主动注册
自动发现是zabbix server去扫描服务器设备,把符合条件的主机添加到监控Host列表中,主动注册是
Active agent主动与zabbix server通信,最后由zabbix server将符合条件的agent加到监控host里。如
果服务器特别多,推荐使用主动注册。
##lb01上安装zabbix-agent2,修改配置文件
[root@web01 ~]# vim /etc/zabbix/zabbix-agent2.conf
Server=10.0.0.71
ServerActive=10.0.0.71
\#Hostname=Zabbix server
HostnameItem=system.hostname
HostMetadata=Linux
\# 主动注册,默认先读取Hostname的值,如果Hostname注释了,则读取HostnameItem的值
\# 定义主机元数据,如果没定义该参数,继续读取HostMetadataItem的参数:
HostMetadata=Linux
\# HostMetadataItem=system.uname
##启动服务
[root@web01 ~]# systemctl start zabbix-agent2
[root@web01 ~]# systemctl enable zabbix-agent2
创建自动发现的动作
新增主机
等待一会,如果发现自动注册则表示成功
配置监控
创建新的监控
进入web01 编写一个示例监控报警:监控用户数量
[root@web01 ~]# cat /etc/zabbix/zabbix_agent2.d/login_user_useradd.conf
UserParameter=login_user_useradd,who | wc -l
重启服务
[root@web01 ~]# systemctl restart zabbix-agent2.service
进入Zabbix-server检查
##在server端通过zabbix-get来取值测试(可有可无)
[root@zabbix ~]# zabbix_get -s 客户端的ip -p 客户端端口号 -k 键值
##例:
[root@zabbix ~]# zabbix_get -s 10.0.0.7 -p 10050 -k login_user_useradd
2
返回Zabbix网页端 - 继续配置监控
测试监控
配置触发器
创建新的触发器
配置触发条件 - - 超过三个就触发
配置恢复条件 - - 小于3个就恢复
测试后没有问题后 添加
测试 - -用户登录 - - -报警
报警
1.邮箱报警
2.微信报警
邮箱报警
配置Email
验证邮箱功能
配置微信报警
##在Zabbix-server端安装python模块安装工具pip
[root@Zabbix ~]# yum install python3-pip -y
##安装requests模块
[root@Zabbix ~]# pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple requests
##将微信的python脚本上传至zabbix的默认路径
[root@Zabbix ~]# cd /usr/lib/zabbix/alertscripts
[root@Zabbix ~]# chmod +x weixin.py
验证企业微信
在Zabbix网页端配置微信报警
创建新的报警媒体类型
添加后,再添加报警媒介
测试微信报警