参考:
https://my.oschina.net/u/3803405/blog/2249098
https://blog.csdn.net/qq_40907977/article/details/97917462
http://www.zsythink.net/archives/category/%e8%bf%90%e7%bb%b4%e7%9b%b8%e5%85%b3/zabbix/
常用指令
1、检测能否监控到数据
# zabbix_get -s 172.25.9.131 -p 10050 -k "system.hostname"
〇、基础配置
1、关闭selinux
# setenforce 0
# sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
2、开启防火墙端口
# firewall-cmd --zone=public --add-port=3306/tcp --permanent
# firewall-cmd --zone=public --add-port=80/tcp --permanent
# firewall-cmd --zone=public --add-port=10050/tcp --permanent
# systemctl restart firewalld
3、增加zabbix用户
# groupadd zabbix
# useradd zabbix -g zabbix
一、安装数据库
1、在DMP平台添加主机,安装udeploy,选择一个空的组,添加实例,完成以后注销实例(若不需DMP监控)
2、配置软连接
# ln -s /home/mysql/base/5.7.26/bin/mysql /usr/local/sbin/mysql
# ln -s /home/mysql/data/3306/mysqld.sock /tmp/mysql.sock
3、创建zabbix_server(zabbix_proxy)数据库
mysql> create database zabbix_server;
or
mysql> create database zabbix_proxy;
4、赋权
mysql> grant all on *.* to zabbix@'%' identified by 'mds@zabbix2020' with grant option;
二、安装zabbix(server/proxy)
1、下载agent、get、sender、(server、web、web-mysql)/ proxy的rpm包(http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/),还需安装依赖文件
iksemel-1.4-6.sdl7.x86_64.rpm
zabbix-agent-4.0.16-1.el7.x86_64.rpm
zabbix-server-mysql-4.0.16-1.el7.x86_64.rpm
zabbix-proxy-mysql-4.0.16-1.el7.x86_64.rpm
zabbix-get-4.0.16-1.el7.x86_64.rpm
zabbix-web-4.0.16-1.el7.noarch.rpm
zabbix-web-mysql-4.0.16-1.el7.noarch.rpm
2、创建/home/zabbix_server或/home/zabbix_proxy目录,安装对应组件
# mkdir /home/zabbix-server
or
# mkdir /home/zabbix-proxy
# yum install *.rpm -y
3、导入数据,使用 MySQL 来导入 zabbix server/proxy 的初始数据库 schema 和数据
# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -u zabbix -p zabbix_server
or
# zcat /usr/share/doc/zabbix-proxy-mysql*/schema.sql.gz | mysql -u zabbix -p zabbix_proxy
三、相关配置
1、zabbix-server配置
# vim /etc/zabbix/zabbix_server.conf
DBHost=*********
DBName=zabbix_server
DBUser=zabbix
DBPassword=********
2、we配置
# vim /etc/httpd/conf.d/zabbix.conf
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value always_populate_raw_post_data -1
php_value date.timezone PRC
3、agent配置
# vim /etc/zabbix/zabbix_agentd.conf
Server=<server端或proxy端IP>
ServerActive=<server端或proxy端IP>
SourceIP=<本机IP>
Hostname=<根据情况决定,必须和网页里填的一样>
AllowRoot=1
EnableRemoteCommands=1
LogRemoteCommands=1
4、proxy配置
# vim /etc/zabbix/zabbix_proxy.conf
Server=10.5.68.73(server端IP)
DBHost=<proxy服务器IP(即本地IP)>
DBName=zabbix_proxy
Hostname=<根据情况决定,必须和网页里填的一样>
DBUser=zabbix
DBPassword=mds@zabbix2020
AllowRoot=1
EnableRemoteCommands=1
LogRemoteCommands=1
ConfigFrequency=60
DataSenderFrequency=60
四、收尾工作
1、设置自启动
# systemctl enable mysqld_3306 zabbix-server httpd zabbix-agent
or
# systemctl enable mysqld_3306 zabbix-proxy httpd zabbix-agent
# systemctl restart mysqld_3306 zabbix-server httpd zabbix-agent
or
# systemctl restart mysqld_3306 zabbix-proxy httpd zabbix-agent
2、检查防火墙端口是否打开
# firewall-cmd --list-ports
3、添加软连接
# mkdir -p /var/lib/mysql/
# ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock
五、网页初始化配置(10.5.68.73/zabbix)
1、依赖检查
2、数据库连接配置
3、服务端连接配置
4、添加代理
问题记录:
1、远程无法访问数据库
MYSQL-> grant all privileges on . to root@’%’ identified by ‘*L’ with grant option;
MYSQL-> flush privileges;
2、web打不开(可能是端口没开)
# firewall-cmd —zone=public —add-port=3306/tcp —permanent
# systemctl restart firewalld
3、web提示无法通过/var/lib/mysql/mysql.sock访问
# mkdir -p /var/lib/mysql/
# ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock
4、缺依赖(libmysqlclient.so.18)
查找是否存在文件
# find / -name libmysqlclient.so*
卸载自带的mariadb
# rpm -e —nodeps mariadb-libs-5.5.64-1.el7.x86_64
安装
# rpm -ivh —nodeps mysql-community-libs-compat-5.7.26-1.el7.x86_64.rpm
5、缺依赖
解决:
6.网页配置数据库时提示无法连接,可能是没有关闭selinux
setenforce 0
vim /etc/sysconfig/selinux