前言: 随着数据量的增大,服务器经常出现问题不能及时感知并修复,经选型调研,最终选择了Zabbix作为监控。 Zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。Zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
Zabbix特点:
- 支持多语言(包括中文)
- 免费开源
- 自动发现服务器与网络设备
- 分布式监视以及WEB集中管理功能
- 可以无agent监视
- 用户安全认证和柔软的授权方式
- 通过WEB界面设置或查看监视结果
- email等通知功能
Zabbix功能:
- CPU负荷
- 内存使用
-磁盘使用
- 网络状况
- 端口监视
- 日志监视
1.下载Zabbix
1.1 导入官方repo源
rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/5/x86_64/zabbix-release-4.0-1.el5.noarch.rpm
1.2 清空缓存数据
yum clean all
1.3 安装Zabbix server服务
yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent
这一步可能会出现【No more mirrors to try.】错误。
解决方法:只需要将zabbix的repo库地址替换换为aliyun的
替换命令:sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#g' /etc/yum.repos.d/zabbix.repo
2.安装配置数据库
2.1 安装mariadb数据库,也可以手动二进制的方式安装mysql数据库,这里为了快速部署使用yum直接安装(已经安装了Mysql的可以跳过这一步)
yum install mariadb -y
2.2 启动mariadb数据服务,并设置为开机自启动(已经安装了Mysql的可以跳过这一步)
systemctl start mariadb
systemctl enable mariadb
2.3 初始化数据库(已经安装了Mysql的可以跳过这一步)
执行命令: mysql_secure_installation
出现Set root password? [Y/n] 提示:输出Y,并设置密码
以下设置均设置为 "n"
Remove anonymous users? [Y/n] n
Disallow root login remotely? [Y/n] n
Remove test database and access to it? [Y/n] n
Reload privilege tables now? [Y/n] n
2.4 数据库授权给Zabbix
进入数据库
mysql -uroot -p
Enter password: 输入你之前设置的密码
数据库授权
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@localhost identified by 'password';
quit;
注意: password为数据库账户zabbix的密码
导入Zabbix数据到数据库
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
Enter password: 输入你的zabbix账户的密码
3. 配置PHP
3.1 修改php文件
命令: vim /etc/php.ini
修改: date.timezone = Asia/Shanghai
4.启动Zabbix
4.1 启动zabbix-server zabbix-agent httpd服务,并设置为开启自启动
systemctl restart zabbix-server zabbix-agent httpd
systemctl enable zabbix-server zabbix-agent httpd
4.2 安装完毕
打开 http://你的服务器地址/zabbix/setup.php
一直点击 Next Step
默认登录账号:Admin 密码:zabbix
Zabbix Server安装完毕,接下来为需要被监控的服务器安装 zabbix-agent。