一、安装客户端:Zabbix Server端和Zabbix Agent执行如下代码:
### --- Zabbix Server端和Zabbix Agent执行如下代码:
~~~ Zabbix监控平台部署,至少需要安装四个组件,
~~~ 分别是Zabbix_Server、Zabbix_Web、Databases、Zabbix_Agent,
~~~ 如下为Zabbix.Agent安装配置详细步骤:
### --- 部署环境:
~~~ Server端 ————>192.168.1.59
~~~ Agent端 ————>192.168.1.60
~~~ CentOS版本 ————>CentOS 7.6.1810
~~~ ZABBIX版本 ————>Zabbix 4.0.19
### --- zabbix源码下载地址(建议从官网下载):
~~~ https://www.zabbix.com/download_sources#tab:40LTS
### --- OR
[root@localhost ~]# wget -c https://cdn.zabbix.com/zabbix/sources/stable/4.0/zabbix-4.0.25.tar.gz //-c:断点续传
[root@localhost ~]# md5sum zabbix-4.0.25.tar.gz // 查看他的md5值
0694c540b1d014cdc5c6a50d361d77f2 zabbix-4.0.25.tar.gz
### --- 因为zabbix基于C语言开发;安装编译时依赖包、库文件:
### --- 本机不用安装,编译zabbix_server时已安装
[root@localhost ~]# yum -y install gcc curl curl-devel net-snmp net-snmp-devel perl-DBI libxml2-devel libevent-devel pcre mysql-devel
二、编译安装zabbix-agent
### --- 解压zabbix-4.0.25.tar.gz
~~~ -x extract解压,-z gzip压缩,-v verbose详细,-f file文件
[root@localhost ~]# tar -xzvf zabbix-4.0.25.tar.gz
### --- zabbix-server编译安装,需要通过源代码部署三个步骤:
### --- 预编译: 建议使用命令 开启--enable-agent就可以了
[root@localhost zabbix-4.0.25]# ./configure --prefix=/usr/local/zabbix --enable-agent
### --- 编译
[root@localhost zabbix-4.0.25]# make
### --- 安装:
[root@localhost zabbix-4.0.25]# make install
### --- 添加软链接(相当于快捷方式);启动脚本要找/usr/local/sbin;不然启动时会报错
[root@localhost ~]# ln -s /usr/local/zabbix/sbin/zabbix_agentd /usr/local/sbin/
### --- 修改zabbix-agent.conf客户端配置文件,执行如下命令,zabbix_agent.conf内容,指定serverIP,同时设置本地Hostname为本地IP地址或者DNS名称;CPU、内存、负载、网卡、磁盘、IO、应用服务、端口、登录用户。
### --- 修改zabbix_agentd.conf文件
[root@localhost etc]# vim /usr/local/zabbix/etc/zabbix_agentd.conf
LogFile=/tmp/zabbix_agentd.log
Server=192.168.1.59 // 指向服务端IP地址
ServerActive=192.168.1.59 // 开启主动模式,并设置传输数据的服务器地址
Hostname=192.168.1.60 // 指向自己的主机名或者IP地址
### --- 同时cp zabbix_server启动脚本至/etc/init.d/目录,
### --- 启动zabbix_agent Zabbix_agent默认监听端口为10050
[root@localhost zabbix-4.0.25]# cp misc/init.d/tru64/zabbix_agentd /etc/init.d/zabbix_agentd
[root@localhost ~]# chmod o+x /etc/init.d/zabbix_agentd
[root@localhost ~]# /etc/init.d/zabbix_agentd restart
### --- zabbix-agent的监听端口为10050
[root@localhost ~]# netstat -tunlp |grep -aw 10050
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 14210/zabbix_agentd
tcp6 0 0 :::10050 :::* LISTEN 14210/zabbix_agentd
### --- 启动zabbix_agentd服务
[root@localhost ~]# /etc/init.d/zabbix_agentd restart
zabbix_agentd [113015]: user zabbix does not exist
zabbix_agentd [113015]: cannot run as root!
Zabbix agent started.
### --- 创建用户和用户组即可:
[root@localhost ~]# groupadd zabbix
[root@localhost ~]# useradd -g zabbix zabbix
[root@localhost ~]# usermod -s /sbin/nologin zabbix
三、使用脚本批量化部署agent端:
### --- 编辑配置脚本配置文件:auto_install_zabbix_agent_v3.sh
### --- 选择yes安装客户端,选择no安装服务端。
[root@localhost ~]# vim auto_install_zabbix_agent_v3.sh
SERVER_IP="192.168.1.59"
[root@localhost ~]#sh auto_install_zabbix_agent_v3.sh
Please confirm whether to install Zabbix Server,yes or no? no
### --- 主动模式:
~~~ 在/usr/local/zabbix/etc/zabbix_agentd.conf
~~~ 下ServerActive=192.168.1.59是主动模式的配置指令。
### --- 主动模式:
~~~ 客户端自己会监控自己的数据,并且把数据发送给zabbix_server服务器。
[root@localhost ~]# cat /tmp/zabbix_agentd.log
113048:20201030:232112.078 no active checks on server [192.168.1.59:10051]: host [192.168.1.60] not found
### --- 因为我们的部署平台上还没有创建主机,所以无法检测到数据。
### --- 主动模式:
~~~ 客户端自己检测自己的数据,并把数据推送给server服务器,可以减少server的压力。
### --- 被动模式:
~~~ 客户端等着server来过来拉取数据,生产环境都是用主动模式。