CentOS 7 安装配置Zabbix Proxy 最近想重新搭建一台zabbix代理,发现zabbix官方的源已经没有办法访问了,试了一下,把zabbix源换成阿里云的,结果安装的时候部分依赖的还是有问题。想想还是直接下载源码包安装省事。之前搭建的zabbix是3.4.15版本的,就下载了3.4.15的源码。安装如下操作,备忘。
安装数据库 安装mariadb
可以参考链接centos 安装 mariadb 。
1 yum install mariadb mariadb-server
1 2 3 systemctl start mariadb systemctl status mariadb systemctl enable mariadb //开机自启动
安装zabbix守护进程
下载源代码归档
下载地址zabbix proxy download page ,下载,解压源码。
1 tar -zxvf zabbix-3.4.15.tar.gz
创建用户
对于zabbix的守护进程,需要一个无特权的用户。如果zabbix守护进程以一个无特权的用户启动,那么它会使用该用户运行。 然而,如果守护进程以root用户启动,它会切换为zabbix用户账户,且这个用户必须存在。创建如下:
1 2 groupadd --system zabbix useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix
创建数据库
1 2 3 4 5 mysql -u root -p Enter password: mysql > create database zabbix_proxy character set utf8 collate utf8_bin; mysql > grant all privileges on zabbix_proxy.* to zabbix@localhost identified by 'password' ; mysql > quit;
导入数据库
1 2 3 4 5 mysql -u zabbix -p Enter password: mysql > use zabbix_proxy; mysql > source zabbix源码数据库文件路径/schema.sql mysql > quit;
zabbix proxy只需要导入schema.sql就可以了。
安装依赖程序
1 yum install -y curl wget gcc gcc-c++ vim curl-devel net-snmp-devel ncurses-devel libxml2-devel libssh2 libssh2-devel
编译安装
1 2 ./configure --enable-proxy --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 --prefix=/usr/local/zabbix make install
配置zabbix proxy配置文件
1 2 3 4 5 6 7 8 9 10 grep -Ev '^$|^[#,;]' /usr/local/zabbix/etc/zabbix_proxy.conf Server=A.B.C.D Hostname=zabbix_proxy LogFile=/tmp/zabbix_proxy.log PidFile=/tmp/zabbix_proxy.pid DBName=zabbix_proxy DBPassword=your_password SNMPTrapperFile=/tmp/zabbix_traps.tmp Timeout=4 LogSlowQueries=3000
防火墙配置
1 2 3 firewall-cmd --permanent --add-port=10050/tcp firewall-cmd --permanent --add-port=10051/tcp firewall-cmd --complete-reload
启动服务
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 cd /usr/lib/systemd/system vi zabbix-proxy.service [Unit] Description=Zabbix Proxy After=rsyslog.target After=network.target [Service] User=zabbix Group=zabbix Environment="CONFFILE=/usr/local/zabbix/etc/zabbix_proxy.conf" Type=forking Restart=on-failure PIDFile=/tmp/zabbix_proxy.pid KillMode=control-group ExecStart=/usr/local/zabbix/sbin/zabbix_proxy -c $CONFFILE ExecStop=/bin/kill -SIGTERM $MAINPID RestartSec=10s TimeoutSec=0 [Install] WantedBy=multi-user.target systemctl enable zabbix-proxy systemctl start zabbix-proxy
最后就简单了。zabbix server上面添加代理程序就可以了。好了,结束。