安裝環境
AlmaLinux8.7
ZABBIX6.2+Mysql+Apache
PHP 7.4
注:不建議使用AlmaLinux9.0,因為此系統版本安裝的PHP為8.1,安裝zabbix6.2會無法編譯php,導緻錯誤,zabbix6.2配套php7.4。
部署Zabbix服務端
1. 關閉selinux和firewall
systemctl status firewalld #檢視防火牆狀态
systemctl stop firewalld.service #停止防火牆
systemctl disable firewalld.service #禁止firewall開機啟動
getenforce #檢視SELinux狀态,Enforcing:啟動,Permissive:臨時關閉,Disabled:關閉
永久關閉selnux:
vim /etc/sysconfig/selinux #進入selnux檔案,修改SELINUX=disabled
reboot #重新開機伺服器生效
setenforce 0 #臨時關閉SELinux
2. 安裝部署zabbix
此步驟可根據官網來進行操作
#擷取下載下傳源并安裝
rpm -Uvh https://repo.zabbix.com/zabbix/6.2/rhel/8/x86_64/zabbix-release-6.2-3.el8.noarch.rpm
#檢視下載下傳的repo檔案(zabbix.repo)
ls /etc/yum.repos.d/
#檢視源位址檔案内容
vim /etc/yum.repos.d/zabbix.repo
#更換源位址(sed -i 替換,使用#做分隔符,替換檔案内源位址指向位址國内源),此步驟可不進行操作,隻是國外源下載下傳慢
sed -i 's#https://repo.zabbix.com#https://mirrors.tuna.tsinghua.edu.cn/zabbix#' /etc/yum.repos.d/zabbix.repo
#檢視源位址檔案内容,可看到全部替換為了國内源
#清除緩存并重建立立資料
yum clean all & yum makecache
3. 安裝PHP,并指定版本為7.4
dnf module switch-to php:7.4
4. 安裝Zabbix server,Web前端,agent,這裡是将用戶端程式一起安裝了,用作監控這台主機
dnf install zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent
5. 安裝mysql
rpm -qa | grep mysql #檢視目前安裝的mysql
1)解除安裝舊的mysql版本
rpm -e mysql #解除安裝所有mysql服務
或者
yum list installed | grep mysql #檢視安裝的mysql
yum remove mysql #也可嘗試使用yum指令解除安裝舊版本
find / -name mysql #檢視殘留mysql檔案
rm -rf 檔案名 #删除殘留檔案
2)安裝MySQL并啟動服務
yum -y install mysql-server.x86_64 #安裝mysql服務
systemctl start mysqld #啟動MySQL
systemctl status mysqld #檢視MySQL狀态
systemctl enable mysqld #設定開機自啟
3)進入mysql,并配置root密碼
mysql -uroot -p #初始進入無密碼,提示輸入密碼直接确定
mysql> alter user user() identified by 'test123.'; #設定root使用者密碼為test123.,注意密碼設定規則
6. 建立zabbix資料庫并進行zabbix資料導入
#進入MySQL
[root@yunke ~]# mysql -uroot -p
#建立一個zabbix資料庫,character set utf8(設定字元編碼為utf8),collate utf8_bin(支援utf8)
mysql> create database zabbix character set utf8 collate utf8_bin;
#建立一個zabbix使用者,zabbix@localhost(使用者名為zabbix允許localhost登入),密碼為test123.
mysql> create user zabbix@localhost identified by 'test123.';
#給zabbix使用者授權,grant all privileges(授予所有權限權),zabbix.*(授予zabbix資料庫裡的所有表的權限),zabbix@localhost(授予的使用者是zabbix)
mysql> grant all privileges on zabbix.* to zabbix@localhost;
#設定全局log_bin_trust_function_creators = 1,它控制是否可以信任存儲函數建立者
set global log_bin_trust_function_creators = 1;
#重新整理授權權限并退出
mysql> flush privileges;
mysql> exit;
#導入初始架構和資料,-uzabbix 使用zabbix使用者導入,此處導入資料用zabbix使用者導入可能提示權限不足,請删除zabbix資料庫,重新建立,并使用root使用者重新導入表即可
zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8 -uzabbix -p zabbix
Enter password:輸入使用者密碼
#登入資料庫,檢視zabbix資料庫内容
[root@yunke ~]# mysql -uroot -p
#進入zabbix資料庫,重新更改變量,并檢視資料表是否導入成功
mysql> set global log_bin_trust_function_creators = 0;
mysql> use zabbix;
mysql> show tables;
mysql> exit;
7. 修改配置檔案密碼
#修改zabbix server配置檔案裡改資料庫密碼(找到DBPasswd的行,去掉注釋,修改密碼為資料庫裡zabbix使用者的密碼)
[root@yunke ~]# vim /etc/zabbix/zabbix_server.conf
8. 啟動Zabbix server和agent程序,并為它們設定開機自啟
systemctl restart zabbix-server zabbix-agent httpd php-fpm
systemctl enable zabbix-server zabbix-agent httpd php-fpm
9. web登入zabbix
浏覽器輸入IP位址+zabbix進行驗證
點選下一步,進入PHP檢查界面
點選下一步,連接配接資料庫
點選下一步,設定主機名
點選下一步-下一步-完成,到登入界面,輸入預設使用者名和密碼即可進入首頁,預設賬号Admin,密碼zabbix
部署Zabbix用戶端
1. 關閉selinux和firewall
systemctl status firewalld #檢視防火牆狀态
systemctl stop firewalld.service #停止防火牆
systemctl disable firewalld.service #禁止firewall開機啟動
getenforce #檢視SELinux狀态,Enforcing:啟動,Permissive:臨時關閉,Disabled:關閉
永久關閉selnux:
vim /etc/sysconfig/selinux #進入selnux檔案,修改SELINUX=disabled
reboot #重新開機伺服器生效
2. 安裝ntp對時
yum -y install ntpdate
ntpdate -u ntp.aliyun.com #與阿裡雲同步時間
mv /etc/localtime{,.bak}
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime #時區統一
3. 安裝用戶端
rpm -Uvh https://repo.zabbix.com/zabbix/6.2/rhel/8/x86_64/zabbix-release-6.2-3.el8.noarch.rpm #擷取下載下傳源
#更換源位址(sed -i 替換,使用#做分隔符,替換檔案内源位址指向位址國内源),此步驟可不進行操作,隻是國外源下載下傳慢
sed -i 's#https://repo.zabbix.com#https://mirrors.tuna.tsinghua.edu.cn/zabbix#' /etc/yum.repos.d/zabbix.repo
#清除緩存并重建立立資料
yum clean all & yum makecache
#安裝Zabbix agent
dnf -y install zabbix-agent
4. 更改配置檔案
netstat -tpln | grep zabbix #檢查端口是否被啟用(安裝net-tools)
修改配置檔案(修改主機名,服務端位址)
vim /etc/zabbix/zabbix_agentd.conf
#grep -Ev '^#|^#39; /etc/zabbix/zabbix_agent.conf #過濾注釋行和空行
PidFile=/var/run/zabbix/zabbix_agent.pid #pid檔案
LogFile=/var/log/zabbix/zabbix_agent.log #日志檔案
LogFileSize=0 #日志大小,預設0無限制
Server=10.10.10.151 #服務端位址(server位址)
ServerActive=10.10.10.151 #改為服務端位址
Hostname=Zabbix server #指定目前用戶端的主機名,如果都是預設安裝,不要改變,否則添加主機後ZAX會顯示未知
Include=/etc/zabbix/zabbix_agent.d/*.conf #使用Include文法,“.d”目錄裡面所有以.conf結尾的檔案都會被識别為配置檔案
ControlSocket=/tmp/agent.sock
systemctl restart zabbix-agent #重新開機服務
systemctl enable zabbix-agent.service #設定開機自啟
5. 驗證用戶端連通性:在服務端上通過指令主動擷取資料
yum -y install zabbix-get #服務端安裝工具
zabbix_get -s '192.168.86.131' -p 10050 -k 'system.hostname' #擷取用戶端主機名,-s位址(zabbix_agent位址),-p端口,-k指令
elte-0.localhost #收集到了主機名代表連接配接成功
6. zabbix添加用戶端
點選‘配置’大框裡的‘主機’就可以看到預設監控的server端本機,點選‘建立主機’來添加要監控的主機
填入相關資訊(主機名-顯示的名字-群組linux,接口servers-ip位址端口),然後點添加:
添加完成後,已經可以顯示在主機清單裡了,但是沒有監控項, 點選主機名agent,選擇’模闆-選擇’,
選擇一個預設模闆,選擇,點選更新就可以看到模闆裡定義的監控項已經添加進去了
等到zbx亮了之後就可以監控了
小白實力有限,文中如有錯誤,歡迎公衆号背景回複說明,便于修改,謝謝指教
如果你希望一切都能變得更加美好,就從改變自己開始