- 监控对象
- 监控收集信息方式
- Zabbix 部署
1.监控对象
源代码: *.html *.jsp *.php *.py
数据库: MySQL,MariaDB,Oracle,SQL Server,DB2
应用软件:Nginx,Apache,PHP,Tomcat agent集群: LVS,Keepalived,HAproxy,RHCS,F5
虚拟化层/云层: VMware,KVM,XEN agent
操作系统:Linux,Unix,Windows性能参数硬件: 服务器,存储 IPMI
网络: 网络环境(路由器,交换机,防火墙,内网环境,外网环境) SNMP
2.监控收集信息方式
被动模式 监控对象上报故障
优点:占用网络资源少,占用存储资源少
缺点:及时性差主动模式 定时查看业务状态
优点:及时性好
缺点:占用资源
3.Zabbix 部署
3.1 zabbix-server(192.168.26.147)监控方
(一)官网
Zabbix :: The Enterprise-Class Open Source Network Monitoring Solution
(二)环境
IP 主机名 角色
192.168.26.147 zabbix_server 监控服务器
192.168.26.111 web1 业务主机
(三)Installing Zabbix packages(安装zabbix包)
1.设置主机名 hostnamectl set-hostname zabbix_server
2.准备Zabbix-repo
官网镜像(略):
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
国外镜像不可用时,可以使用阿里提供的zabbixYUM源:
vim /etc/yum.repos.d/zabbix.repo :
[zabbix]
name=alibaba zabbix
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/
gpgcheck=0
enabled=1[zabbix2]
name=alibaba zabbix frontend
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/frontend/
gpgcheck=0
enabled=1
3.安装Zabbix服务器yum clean all 清楚yum缓存
yum -y install zabbix-server-mysql zabbix-agent
zabbix-server-mysql:数据库 zabbi-agent:代理程序(上报信息的程序)
yum install centos-release-scl 安装前端 centos发布scl
启用前端存储:
vim /etc/yum.repos.d/zabbix.repo
[zabbix-frontend]
...
enabled=1
...yum install zabbix-web-mysql-scl zabbix-apache-conf-scl zabbix前台页面;安装zabbix前端软件包
(四)Creating initial database (创建zabbix所需要的数据库)
1.安装数据库 yum -y install mariadb mariadb-server
注意:如果时安装的mysql80-community 在启动zabbix时会出错,可以参考作者的专栏管理之zabbix启动数据库无法验证专栏:https://blog.csdn.net/qq_47800859/category_12197857.html
2.启动数据库:
systemctl enable mariadb
systemctl start mariadb3.授权zabbix账号:
mysql> create database zabbix character set utf8 collate utf8_bin; 如果报错就手敲
mysql> create user zabbix@localhost identified by 'Lyg@123.com';
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> set global log_bin_trust_function_creators = 1;
开启log_bin_trust_function_creators选项
mysql> flush privileges;
4.初始化zabbix : 在Zabbix服务器上,主机导入初始模式和数据。
注意版本号的问题
# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
mysql> set global log_bin_trust_function_creators = 0;
禁用log_bin_trust_function_creators选项
(五)为Zabbix服务器配置数据库
vim /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=Lyg@123.com 这里是刚刚授权的密码。
(六)为Zabbix前端配置PHP 并启动Zabbix服务器和代理进程
vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
php_value [date.timezone] = Asia/Shanghai
systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm
(七)访问
http://192.168.26.147/zabbix
首页:
php检测:
数据库信息:密码使用在数据库创建的zabbix密码
服务器命名:
信息汇总:
完成:
登录:
用户名: Admin
密码: zabbix
3.2zabbix-agent(192.168.26.1476)被检控方
(一)设置主机名关闭防火墙
[root@localhost ~]# hostnamectl set-hostname web1
systemctl stop firewalld.service
systemctl disable firewalld.servicesetenforce 0
(二)准备zabbix-repo并安装zabbix-agent
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
yum clean all
yum install zabbix-agent
(三)配置主服务器地址
vim /etc/zabbix/zabbix_agentd.conf
Server=192.168.26.147 被动模式 zabbix-server-ip 如果有多台zabbix主服务器可以 在后面加上用逗号隔开
ServerActive=192.168.26.147 主动模式 zabbix-server-ip (谁从我这里采集数据。)
Hostname=web1 建议使用 $HOSTNAME
主动被动模式都打开信息更加准确安全
(四)启动zabbix-agent服务并观察端口
systemctl restart zabbix-agent
systemctl enable zabbix-agentzabbix-server的端口号是10051
zabbix-agent的端口号是10050
3.3命令行测试
zabbix_get (命令行监控)(在zabbix-server服务器上:192.168.26.147)
通过zabbix_get 收集客户端数据 <key> 5.0zabbix并没有默认安装zabbix-get
yum -y install zabbix-get
zabbix默认key:
zabbix_get -s 192.168.26.147 -k system.uname
zabbix_get -s 192.168.26.147 -k system.cpu.load[all,avg15]
zabbix_get -s 192.168.26.147 -k net.tcp.service[http]
0假 1真
到此zabbix的主服务器(zabbix-server)和zabbix-agent(被监控方)已部署完毕