centos7飛速搭建zabbix5.0并添加windows、linux監(jiān)控、自動注冊

一、環(huán)境
zabbix所在服務(wù)器系統(tǒng)為centos7,監(jiān)控的服務(wù)器為windows2016和centos7。
二、安裝zabbix
官方安裝幫助頁面
https://www.zabbix.com/cn/download
1、關(guān)閉selinux
臨時 setenforce 0
永久 /etc/selinux/config
SELINUX=disabled
2、配置zabbix yum源
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
yum clean all
3、安裝zabbix服務(wù)端和zabbix監(jiān)控端
yum install zabbix-server-mysql zabbix-agent
4、安裝zabbix前端
啟用scl軟件源
yum install centos-release-scl
編輯文件?/etc/yum.repos.d/zabbix.repo 啟用源
[zabbix-frontend]
...
enabled=1
...
5、安裝zabbix前端
yum install zabbix-web-mysql-scl zabbix-apache-conf-scl
6、安裝數(shù)據(jù)庫
配置mariabd源
/etc/yum.repos.d/MariaDB.repo
[mariadb]
name = MariaDB
baseurl=https://mirrors.aliyun.com/mariadb/yum/10.2/centos7-amd64?
gpgkey=https://mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDB?
gpgcheck=1
yum -y install MariaDB-server MariaDB-client
systemctl start mariadb #啟動服務(wù)
systemctl enable mariadb #設(shè)置開機(jī)啟動
7、進(jìn)行MariaDB的相關(guān)簡單配置
mysql_secure_installation
首先是設(shè)置密碼,會提示先輸入密碼
Enter current password for root (enter for none):<–初次運(yùn)行直接回車
設(shè)置密碼
Set root password? [Y/n]?<– 是否設(shè)置root用戶密碼,輸入y并回車或直接回車
New password:?<– 設(shè)置root用戶的密碼
Re-enter new password:?<– 再輸入一次你設(shè)置的密碼
其他配置
Remove anonymous users? [Y/n]?<– 是否刪除匿名用戶,回車
Disallow root login remotely? [Y/n]?<–是否禁止root遠(yuǎn)程登錄,回車,
Remove test database and access to it? [Y/n]?<– 是否刪除test數(shù)據(jù)庫,回車
Reload privilege tables now? [Y/n]?<– 是否重新加載權(quán)限表,回車
8、創(chuàng)建數(shù)據(jù)庫mysql -uroot -p
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> create user zabbix@localhost identified by 'password123';
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> quit;
導(dǎo)入初始架構(gòu)和數(shù)據(jù),系統(tǒng)將提示您輸入新創(chuàng)建的密碼。
# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
9、配置數(shù)據(jù)庫密碼
編輯配置文件 /etc/zabbix/zabbix_server.conf
DBPassword=password123
10、配置PHP時區(qū)
編輯配置文件 /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
php_value[date.timezone] = Asia/Shanghai
11、啟動并設(shè)置開機(jī)啟動
systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm
12、防火墻開放端口
firewall-cmd --add-port=80/tcp --permanent
firewall-cmd --reload
firewall-cmd --list-ports
firewall-cmd --list-services
三、前端配置
1、連接到新安裝的Zabbix前端:http://server_ip/zabbix

環(huán)境檢查

連接數(shù)據(jù)庫

zabbix服務(wù)器監(jiān)聽端口
確認(rèn)信息

安裝完成

2、登錄
默認(rèn)賬號密碼 Admin zabbix

軟件首頁
設(shè)置中文 Administration - Users - Admin

修改為中文,別忘了修改密碼

?
四、安裝windows agent
https://www.zabbix.com/cn/download_agents
在客戶機(jī)中安裝
填入服務(wù)器地址,安裝完成

在zabbix平臺添加主機(jī)監(jiān)控
創(chuàng)建主機(jī) 配置 - 主機(jī) - 創(chuàng)建主機(jī)

選擇群組,輸入客戶端IP,添加
關(guān)聯(lián)監(jiān)控模板
?
zabbix官方windows監(jiān)控模板,點(diǎn)擊更新

稍等一分鐘,就會顯示zbx在線

查看主機(jī)最新數(shù)據(jù) 監(jiān)測 - 主機(jī) - 最新數(shù)據(jù)


?
五、安裝centos7 linux agent
1、關(guān)閉selinux
關(guān)閉selinux
臨時 setenforce 0
永久 /etc/selinux/config
SELINUX=disabled
2、打開防火墻端口,agent端口為10050
firewall-cmd --add-port=10050/tcp --permanent
firewall-cmd --reload
firewall-cmd --list-ports
firewall-cmd --list-services
3.安裝zabbix
rpm -ivh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-agent-5.0.21-1.el7.x86_64.rpm
4.修改zabbix agent配置
/etc/zabbix/zabbix_agentd.conf
Server=zabbixIP
ServerActive=zabbixIP
Hostname=本機(jī)名字
?
5.啟動并開機(jī)啟動
systemctl start zabbix-agent
systemctl enable zabbix-agent
6.在zabbix平臺添加主機(jī)并關(guān)聯(lián)linux模板,查看數(shù)據(jù)


六、linux批量自動上線zabbix-agent
?
1、zabbix配置自動注冊
注意,自動注冊即客戶端主動連接服務(wù)器,所以服務(wù)器除了web平臺的80端口外,還需要開放TCP10051端口
firewall-cmd --permanent --add-port=10050-10051/tcp
firewall-cmd --reload
firewall-cmd --list-ports
?
平臺 - 配置 - 動作 - Autoregistration actions自動注冊

?
創(chuàng)建動作
元數(shù)據(jù)中的 Linux 為下方腳本里的 HostMetadata=Linux 嚴(yán)格區(qū)分大小寫

操作
添加主機(jī)
添加主機(jī)群組
關(guān)聯(lián)模板

?
啟用動作即可

2、客戶主機(jī)修改主機(jī)名
使用自動注冊,那么客戶端的名字就非常重要了,更改可以方便識別的主機(jī)名
hostnamectl set-hostname 新主機(jī)名
?
3、客戶端放置并執(zhí)行自動腳本,也可配置批量遠(yuǎn)程執(zhí)行,大規(guī)模上線客戶端,此腳本支持centos7/8
#/bin/bash
echo?"關(guān)閉selinux"
sed -i?'/SELINUX/s/enforcing/disabled/'?/etc/selinux/config
setenforce 0
#yum clean all
echo?"下載zabbix-agent"
OSVERSION=`cat /etc/redhat-release?|awk -F "release " '{print $2}'|awk -F "." '{print $1}'`
rpm -ivh https://repo.zabbix.com/zabbix/5.0/rhel/$OSVERSION/x86_64/zabbix-agent-5.0.21-1.el$OSVERSION.x86_64.rpm
echo?"修改zabbix-agent配置文件"
ipaddr=$(ip a show?|grep ens|grep inet?|awk '{print $2}'|awk -F '/' '{print $1}')
zabbix_server='192.168.30.130'
hostname=$(hostname)
sed -i?"s/^Server=127.0.0.1/Server=${zabbix_server}/g"?/etc/zabbix/zabbix_agentd.conf
sed -i?"s/^ServerActive=127.0.0.1/ServerActive=${zabbix_server}/g"?/etc/zabbix/zabbix_agentd.conf
sed -i?"s/Hostname=Zabbix server/Hostname=${hostname}/g"?/etc/zabbix/zabbix_agentd.conf
sed -i?"s/# HostMetadata=/HostMetadata=Linux/g"?/etc/zabbix/zabbix_agentd.conf
echo?"防火墻放行zabbix-agent端口"
firewall-cmd --permanent --add-port=10050-10051/tcp
firewall-cmd --reload
echo?"啟動zabbix-agent服務(wù)"
systemctl start zabbix-agent && systemctl ?enable?zabbix-agent
zabbixagentpid=`ps -ef?|grep zabbix_agentd|grep -w 'zabbix_agentd'|grep -v 'grep'|awk '{print $2}'`
if?[?"$zabbixagentpid"?];then
? ? ??echo?"zabbix agent 正在運(yùn)行 "
? ?else
? ??echo?"zabbix agent 安裝失?。。?!"
?fi
上傳服務(wù)器,添加執(zhí)行權(quán)限,執(zhí)行
chmod +x ./centos-zabbix-agent-install.sh
./centos-zabbix-agent-install.sh
腳本報(bào) zabbix agent正在運(yùn)行 即為正常
4、平臺查看上線情況
已自動上線

??
?
?
?
七、總結(jié)
快速簡單,你學(xué)會了嗎
