一.Zabbix功能及特性简介
Zabbix可以获取cpu,内存,网卡,磁盘,日志等信息
1.Zabbix数据收集方式:
a.Agent客户端(Agent客户端支持多平台部署)
b.如果是无法安装客户端的设备,例如网络设备,则可以通过SNMP(简单网络管理协议)获取监控数据
c.支持通过IPMI获取硬件的温度,风扇,硬盘,电源等
d.通过Zabbix自带的检测进行监控
2.Zabbix支持自定义监控:
可以通过shell,python,ruby等可执行的脚本收集监控数据
3.Zabbix可以通过监控对象的趋向判断是否可能会发生异常,从而可以做到预告警功能。
4.Zabbix拥有告警关联功能(防止海量的告警难以排查,它可以迅速关联到核心问题所在)
5.Zabbix安全和认证,它可以设置用户的权限,安全方面通过TLS传输信息,防止信息被窃听(TLS是SSL的升级版)
6.Zabbix自动化:
a.网络自动发现
b.Agent自动注册
二.Zabbix架构
三.Zabbix Server安装配置1(二进制方式:centos7.5+zabbix4.4.1+pgsql12)
①找到相应的zabbix镜像
1. 在https://repo.zabbix.com/zabbix/4.4/rhel 选择自己需要的源后,再通过rpm -ivh在线安装
2.yum -y install zabbix-server-pgsql(本人在linux中使用yum安装zabbix报错Failed connect to repo.zabbix.com,甚至之后用yum再安装其他程序也会报错。个人解决办法如下:由于连接不上zabbix官方推荐的地址,考虑是不是国外的网站被墙了,因此找阿里或清华大学镜像源,例如
找到zabbix.repo文件,修改内容如下图
再次执行
yum -y install zabbix-server-pgsql
关闭selinux,vim /etc/selinux/config
②安装postgresql(这里是12)
1.拉取镜像
yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
2.安装客户端
yum install postgresql12
3.安装服务
yum install postgresql12-server
4.检查是否安装成功
rpm -qa | grep postgres
5.初始化数据库,设置自动启动
/usr/pgsql-12/bin/postgresql-12-setup initdb systemctl enable postgresql-12 systemctl start postgresql-12
6.进入postgresql
su - postgres 或 sudo -i -u postgres
psql
7.设置密码
\password postgres
8.默认的PostgreSQL数据目录是/var/lib/pgsql/版本号/data
9.修改PostgreSQL配置
PostgreSQL的配置文件就在这个目录下/var/lib/pgsql/版本号/data/postgresql.conf,访问控制的配置文件是pg_hba.conf
修改postgresql.conf,这里只修改了listen_addresses,port和password_encryption,更多参数修改最好参考官方文档。
再修改pg_hba.conf配置文件(开启远程连接和密码校验规则)
10.重启服务(如果后面zabbix连接数据库报错Connection to database 'xxx' failed ident ...的话,可以将ident设置为trust,并重启数据库后重启zabbix)
service postgresql-12 restart
11.查看运行状态
service postgresql-12 status
pgsql常用的命令例如\c 类比与use,\q类比于exit,这些可以自行查阅
③.安装Zabbix server,Web前端,agent
yum -y install zabbix-server-pgsql zabbix-web-pgsql zabbix-apache-conf zabbix-agent
1.创建初始数据库
sudo -u postgres createuser --pwprompt zabbix
sudo -u postgres createdb -O zabbix zabbix
2.导入初始架构和数据
zcat /usr/share/doc/zabbix-server-pgsql*/create.sql.gz | sudo -u zabbix psql zabbix
4.编辑配置文件 /etc/zabbix/zabbix_server.conf(修改数据库名,用户名和密码)
DBPassword=password
4.为Zabbix前端配置PHP,编辑配置文件 /etc/httpd/conf.d/zabbix.conf( 选择所需要的时区,例如下面是上海的).
php_value date.timezone Asia/Shanghai
5.启动Zabbix server和agent进程,并为它们设置开机自启:
systemctl restart zabbix-server zabbix-agent httpd systemctl enable zabbix-server zabbix-agent httpd
6.配置php,修改文件 vim /etc/php.ini ,具体要修改的参数如下:
max_execution_time = 300
memory_limit = 128M
post_max_size = 16M
upload_max_filesize = 2M
max_input_time = 300
max_input_vars = 10000
always_populate_raw_post_data = -1
date.timezone = Asia/Shanghai
7.配置完成后启动服务
systemctl start httpd.service
4.Zabbix Agent 安装配置(Linux 和Windows)
①参考上面的Zabbix Server的安装步骤①
(将zabbix-server-pgsql改成zabbix-agent即可)
②修改配置
vim /etc/zabbix/zabbix_agentd.conf
将其中的Server和ServerActive指向先前搭建的Zabbix Server地址,设置HostName例如ywb_agent
③在web端添加主机