一、分布式监控部署
环境说明
系统版本 CentOS 7.4 x86_64
软件版本 Zabbix 3.4.15. © 2001–2018, Zabbix SIA
zabbix server 192.168.234.101
zabbix proxy eth0:192.168.1.106 eth1:192.168.234.102
zabbix agent 192.168.234.103
通过zabbix proxy的搭建,zabbix server可以远程从proxy获取到数据,
这里的环境相当于zabbix server具有一个公网ip地址,
zabbix agent只具有内网地址,zabbix proxy具有外网地址和内网地址,
搭建zabbix proxy使zabbix server能通过proxy远程获取到zabbix agent的数据
[root@zabbix-server ~]# vim /etc/yum.repos.d/zabbix.repo
[zabbix]
name=Zabbix Official Repository - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
[zabbix-non-supported]
name=Zabbix Official Repository non-supported - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/non-supported/rhel/7/$basearch/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
gpgcheck=1
[root@zabbix-server ~]# yum -y clean all 清理缓存
[root@zabbix-server ~]# yum -y makecache fast 更新yum源
[root@zabbix-server ~]# yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent -y
[root@zabbix-server ~]# yum install -y zabbix-get-3.4.0-1.el7.x86_64
[root@zabbix-server ~]# yum install -y mariadb mariadb-server
[root@zabbix-server ~]# systemctl restart mariadb
[root@zabbix-server ~]# systemctl enable mariadb
[root@zabbix-server ~]# mysqladmin -u root password 'Mahaohao@123' #设置root密码
[root@zabbix-server ~]# mysql -uroot -p'zabbix'
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin; # 创建zabbix数据库
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix'; # 注意授权网段
MariaDB [(none)]> flush privileges; # 刷新授权
MariaDB [(none)]> \q #退出
Bye
[root@zabbix-server ~]# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
[root@zabbix-server ~]# cd /etc/zabbix/
[root@zabbix-server zabbix]# ls
web zabbix_agentd.conf zabbix_agentd.d zabbix_server.conf
#为了方便我们以后恢复,我们把配置文件备份一下
[root@zabbix-server zabbix]# cp zabbix_server.conf zabbix_server.conf.bak
[root@zabbix-server zabbix]# vim zabbix_server.conf
DBHost=localhost #数据库对外的主机
DBName=zabbix #数据库名称
DBUser=zabbix #数据库用户
DBPassword=Mahaohao@123 #数据库密码
#这里的配置文件打开后:如果有的就不用添加了。如果是注释了的也不用取消注释。直接把内容复制粘贴过去就可以 了。
[root@zabbix-server zabbix]# systemctl start zabbix-server
[root@zabbix-server zabbix]# systemctl enable zabbix-server
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-server.service to /usr/lib/systemd/system/zabbix-server.service.
[root@zabbix-server zabbix]# netstat -lntp | grep 10051
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 1574/zabbix_server
tcp6 0 0 :::10051 :::* LISTEN 1574/zabbix_server
1.1 安装并配置zabbix的源
[root@zabbix-server ~]# vim /etc/yum.repos.d/zabbix.repo
[zabbix]
name=Zabbix Official Repository - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
[zabbix-non-supported]
name=Zabbix Official Repository non-supported - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/non-supported/rhel/7/$basearch/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
gpgcheck=1
[root@zabbix-proxy ~]# yum -y clean all # 清缓存
[root@zabbix-proxy ~]# yum makecache #更新缓存
[root@zabbix-proxy ~]# yum install -y zabbix-proxy-mysql #安装zabbix-proxy
[root@zabbix-proxy ~]# yum install -y mariadb-server #安装数据库
[root@zabbix-proxy ~]# systemctl start mariadb.service #启动数据库
[root@zabbix-proxy ~]# systemctl enable mariadb.service #开机启动
[root@zabbix-proxy ~]# mysql #登录数据库
MariaDB [(none)]> create database zabbix_proxy character set utf8 collate utf8_bin; #创库
MariaDB [(none)]> grant all privileges on zabbix_proxy.* to zabbix@localhost identified by 'Mahaohao@123'; #授权
MariaDB [(none)]> exit
[root@zabbix-proxy ~]# rpm -ql zabbix-proxy-mysql|grep sql
/usr/sbin/zabbix_proxy_mysql
/usr/share/doc/zabbix-proxy-mysql-3.0.18
/usr/share/doc/zabbix-proxy-mysql-3.0.18/AUTHORS
/usr/share/doc/zabbix-proxy-mysql-3.0.18/COPYING
/usr/share/doc/zabbix-proxy-mysql-3.0.18/ChangeLog
/usr/share/doc/zabbix-proxy-mysql-3.0.18/NEWS
/usr/share/doc/zabbix-proxy-mysql-3.0.18/README
/usr/share/doc/zabbix-proxy-mysql-3.0.18/schema.sql.gz
[root@zabbix-proxy ~]# cd /usr/share/doc/zabbix-proxy-mysql-3.0.18/ #导入数据库
[root@zabbix-proxy zabbix-proxy-mysql-3.0.18]# zcat schema.sql.gz | mysql -uzabbix -p123456 zabbix_proxy
[root@zabbix-proxy zabbix-proxy-mysql-3.0.18]# cd
[root@zabbix-proxy ~]# vim /etc/zabbix/zabbix_proxy.conf #修改zabbix-proxy的配置文件
24 Server=10.0.0.63 #zabbix-server的地址
43 Hostname=zabbix-proxy #主机名
128 DBHost=localhost #数据库主机
139 DBName=zabbix_proxy #数据库名称
154 DBUser=zabbix #数据库用户名
162 DBPassword=Mahaohao@123 #数据库密码
配置文件中没有配置的内容如下:(有需要可以配置)
# ProxyLocalBuffer=0 #数据保留的时间(小时为单位)
# ProxyOfflineBuffer=1 #连不上Server,数据要保留多久(小时为单位,默认1小时)
# DataSenderFrequency=1 #数据的发送时间间隔(默认是1秒)
# StartPollers=5 #启动的线程数
# StartIPMIPollers=0 #启动IPMI的线程数
[root@zabbix-proxy ~]# systemctl start zabbix-proxy.service #启动zabbix-proxy
[root@zabbix-proxy ~]# systemctl enable zabbix-proxy.service #开机启动
配置——>anget代理程序——>创建代理
agent代理程序名称和proxy代理的主机名相同
proxy代理添加后,等待发现代理,如果不能及时发现代理,可以通过查看server和proxy的日志进行检查
[root@zabbix-server ~]# tail -f /var/log/zabbix/zabbix_server.log
[root@zabbix-proxy ~]# tail -f /var/log/zabbix/zabbix_proxy.log
[root@zabbix-server ~]# systemctl restart zabbix-server.service #重启server端服务
[root@zabbix-proxy ~]# systemctl restart zabbix-proxy.service #再重启proxy端服务
Web界面进行检查,代理成功添加
[root@zabbix-agent ~]# vim /etc/yum.repos.d/zabbix.repo
[zabbix]
name=Zabbix Official Repository - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
[zabbix-non-supported]
name=Zabbix Official Repository non-supported - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/non-supported/rhel/7/$basearch/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
gpgcheck=1
[root@zabbix-agent-none1 ~]# yum install zabbix-agent zabbix-sender -y
[root@zabbix-agent ~]# vim /etc/zabbix/zabbix_agentd.conf #修改配置文件
Server=192.168.246.228 proxy服务器的内网地址
ServerActive=192.168.246.228 主动模式 zabbix-server-ip
Hostname=zabbix-agent-none1
UnsafeUserParameters=1 是否限制用户自定义 keys 使用特殊字符 1是可以启用特殊字符 0是不可以启用特殊字符
EnableRemoteCommands=0 是否允许别人执行远程操作命令,默认是禁用的,打开的话会有安全风险.
[root@zabbix-agent ~]# systemctl start zabbix-agent.service #启动zabbix-agent
[root@zabbix-agent ~]# systemctl enable zabbix-agent.service #开机启动
4、server端的web界面添加主机
配置——>主机——>创建主机