zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
zabbix由2部分构成,zabbix server与可选组件zabbix agent。
zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。
yum install tree net-tool net-snmp vim ntpdate wget #安装部分基础软件包
systemctl disable firewalld #禁止防火墙服务启动
systemctl stop firewalld #关闭防火墙服务
setenforce = 0 #临时关闭SELinux
vi /etc/sysconfig/config #修改将“SELINUX=enforcing”更改为ELINUX=disabled”,永久关闭SELINUX
cd /etc/yum.repos.d/ #修改yum源 更改为阿里云
mv CentOS-Base.repo CentOS-Base.repo.bak #备份文件
wget -O CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo #下载阿里云镜像仓库
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo #下载epel仓库
yum clean all #清理缓存
yum makecache #重新生成缓存
说明:第一步不是一定要做,看系统环境配置有没有, yum源有没有能不能用,后面配置的时候出问题可以补。
数据库软件可以选用MySQL或MariaDB。
yum -y install mariadb-server mariadb #安装mariadb数据库
systemctl start mariadb #启动mariadb数据库
systemctl enable mariadb #设置开机自启动
mysqladmin -u root password "123456" #为root用户设置123456的密码,否则不能登陆,后面还要用到的。
mysql -u root -p #连接数据库,输入设置的密码,测试是否成功
rpm -Uvh https://repo.zabbix.com/zabbix/4.5/rhel/7/x86_64/zabbix-release-4.5-2.el7.noarch.rpm
yum clean all
yum install zabbix-server-mysql zabbix-agent -y
如果安装中出现错误,Delta RPMs disabled because /usr/bin/applydeltarpm not installed
就安装下面的软件
yum -y install deltarpm
安装 Zabbix frontend
yum install centos-release-scl
编辑 /etc/yum.repos.d/zabbix.repo 启用zabbix-deprecated repository.
#找到zabbix-deprecated将enabled=0改为1
[zabbix-deprecated]
...
enabled=1
...
安装 Zabbix 前端包
yum install zabbix-web-mysql-scl zabbix-apache-conf-scl
A.登录mysql
# mysql -uroot -p
123456 #输入之前设置的密码 123456
B.创建zabbix数据库
mysql> create database zabbix character set utf8 collate utf8_bin;
C.设置用户zabbix,密码为:123456 允许远程连接数据库
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by '123456';
mysql> flush privileges;
mysql> quit;
导入Zabbix数据库结构和数据
# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
#其中 “mysql -uzabbix -p zabbix” 的 “-uzabbix” 是前面创建的用户,“-p zabbix”是创建的数据库
vim /etc/zabbix/zabbix_server.conf
DBPassword=123456 #找到DBPassword 去掉注释,把之前的数据库密码写上去。
修改zabbix 前端的时区
编辑 /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf 文件,为Zabbix前端配置PHP
去掉;注释,然后把时区改为Asia/Shanghai ; php_value[date.timezone] = Europe/Riga 改为如下: php_value[date.timezone] = Asia/Shanghai
启动 Zabbix 服务
让Zabbix 随系统自动启动。
systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm
如果启动报错,可能是Apache的默认端口80被占用,修改Apache默认80端口后重新启动即可。
#httpd配置
vim /etc/httpd/conf/httpd.conf
Listen 9010
ServerName 121.43.161.35:9010
访问:http://xxx.xxx.xxx.xxx:9010/zabbix/
一直点下一步
Zabbix初始用户名和密码为:用户名为 Admin 密码为 zabbix
zabbix 分为服务端和客户端,
服务端:主要是用来接收客户端传过来的主机数据,展示在zabbix PHP的web页面上。
客户端: 是实际的监控者,将监控的数据上传到zabbix服务端。
我们想监控哪个服务器,在对应的服务器上安装配置好客户端之后即可。
1.在能够联网的主机上rpm下载下来
rpm -Uvh https://repo.zabbix.com/zabbix/4.5/rhel/7/x86_64/zabbix-release-4.5-2.el7.noarch.rpm
2.拷贝客户端rpm到目标主机上安装(或者直接装在本机)
yum install zabbix-agent -y
3.修改客户端配置
vim /etc/zabbix/zabbix_agentd.conf
Server=xxx.xx.xx.xxx //安装zabbix服务端的机器的IP
ServerActive=xxx.xx.xx.xxx //安装zabbix服务端的机器的IP
Hostname=09 // 被监控的机器名
4.启动agent
systemctl start zabbix-agent
systemctl stop zabbix-agent
zabbix-server的默认端口号是10051
服务端:
vim /etc/zabbix/zabbix_server.conf
ListenPort=10052
将默认的10051更改为其它端口号,重启服务
zabbix-agent 的默认端口是 10050
vim /etc/zabbix/zabbix_agentd.conf
ListenPort=10050
将默认的10051更改为其它端口号,重启服务
选择 模板 Template OS Linux by Zabbix agent , 点击添加
添加成功后,可以在监控界面看到监控主机的状态:
点击报警类型,启用Email , 右边可以进行测试
rpm -qa | grep -i zabbix // 查看命令
卸载zabbix安装包
yum remove zabbix-xxx
查找残留的zabbix目录或文件:
whereis zabbix
find / -name zabbix
删除查询出的目录
rm -rf /xxx/zabbix #目录地址
enable=1
为 enable=0
修改 yum 配置文件
vim /etc/yum.conf
清除缓存并重新构建 yum 源
yum clean all
rm -rf /var/cache/yum
yum makecache
QQ交流群:19514933