centos7部署zabbix監控系統

2020-10-21 13:01:34

zabbix監控系統

什麼是zabbix監控系統?

  • zabbix是一個基於WEB介面的提供分散式系統監視以及網路監視功能的企業級的開源解決方案。
  • zabbix能監視各種網路引數,保證伺服器系統的安全運營;並提供靈活的通知機制以讓系統管理員快速定位/解決存在的各種問題。
  • zabbix由2部分構成,zabbix server與可選元件zabbix agent。

​ 對於運維人員來說,監控是非常重要的,因為如果想要保證線上業務整體能夠穩定執行,那麼我們則需要實時關注與其相關的各項指標是否正常,而一個業務系統的背後,往往存在著很多的伺服器、網路裝置等硬體資源,如果我們想要能夠更加方便的、集中的監控他們,我們則需要依靠一些外部的工具,而zabbix就是一個被廣泛使用的,可以實現集中監控管理的應用程式。

​ 我們監控的初衷就是當某些指標不符合我們的需求時,我們能夠在第一時間發現異常,所以,監控工具需要定期的對被監控主機進行檢查、資訊收集等操作,當被監控主機出現異常時,能夠及時報警、通知管理員,並且需要記錄這些異常,以便我們分析這些資料,查漏補缺,那麼,一個監控工具就應該具備採集資訊、儲存資訊、展示資訊、報警通知等功能,而zabbix就可以做到這些,除了zabbix,你可能還聽說過cacti、nagios、ganglia等類似的監控系統,但是此處,我們只聊zabbix的部署。

1、zabbix部署方式

  • yum方式安裝(簡單)
  • 編譯安裝(複雜,但是更靈活)

注:版本選用LTS(長期支援版本)

2、部署

2-1、環境準備

  • 2臺linux伺服器(均可存取網際網路)

​ 1、zabbix server(CentOS7,IP: 192.168.203.124)
​ 2、使用者端(CentOS7,IP: 192.168.203.123)

  • 關閉selinux(演示)

    1、臨時關閉(不用重新啟動機器):

    setenforce 0 #設定SELinux 成為permissive模式

    2、修改組態檔需要重新啟動機器:

    修改/etc/selinux/config 檔案

    將SELINUX=enforcing改為SELINUX=disabled

    重新啟動機器即可

2-2、步驟

2-2-1、zabbix server部署lamp環境(php7.2)

1、epel-release安裝

EPEL的全稱叫 Extra Packages for Enterprise Linux 。EPEL是由 Fedora 社群打造,為 RHEL 及衍生髮行版如 CentOS、Scientific Linux 等提供高品質軟體包的專案。裝上了 EPEL之後,就相當於新增了一個第三方源

  • yum install epel-release -y
  • rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
2、設定mariadb源

vim /etc/yum.repos.d/MariaDB.repo

[mariadb]
name = MariaDB
baseurl = https://mirrors.ustc.edu.cn/mariadb/yum/10.4/centos7-amd64
gpgkey=https://mirrors.ustc.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck=1
3、安裝所需軟體包
yum install mariadb-client mariadb-server mariadb-devel httpd php72w-mysql php72w-gd libjpeg* php72w-ladp php72w-odbc php72w-pear php72w-xml php72w-xmlrpc php72w-mbstring php72w-bcmath php72w-mhash php72w-fpm libxml2-devel libevent-devel curl-devel php72w-snmp net-snmp mod_php72w 
4、設定httpd.conf,將95行的註解刪除
   cd /etc/httpd/conf
   cp httpd.conf httpd.conf.bak  # 備份
   vim httpd.conf

在這裡插入圖片描述

修改後重新啟動httpd

systemctl restart httpd
5、檢視效果

在/var/www/html/編輯phpinfo.php

命令:vim /var/www/html/phpinfo.php

<?php
phpinfo();
?>

使用瀏覽器存取 IP地址/phpinfo.php,建議不要用IE瀏覽器,如果出現下圖效果,證明設定成功。
在這裡插入圖片描述

2-2-2 安裝zabbix

參考官方檔案(https://www.zabbix.com/download?zabbix=5.0&os_distribution=red_hat_enterprise_linux&os_version=7&db=mysql),按照檔案進行設定。下圖是我選擇的版本設定。

在這裡插入圖片描述

a. 安裝Zabbix倉庫
 # rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm 
 
 # yum clean all 
b. 安裝Zabbix伺服器和代理
 # yum install zabbix-server-mysql zabbix-agent 
c. 安裝Zabbix前端
 # yum-config-manager --enable rhel-server-rhscl-7-rpms 

​ 編輯檔案/etc/yum.repos.d/zabbix.repo,並啟用zabbix-frontend儲存庫

 [zabbix-frontend] 
 ... 
 enabled=1 
 ... 
安裝Zabbix前端軟體包
 # yum install zabbix-web-mysql-scl zabbix-apache-conf-scl 
d.建立初始資料庫

在資料庫主機上執行以下命令

 mysql -uroot -p  #直接按enter鍵,此時密碼為空
 
 mysql> create database zabbix character set utf8 collate utf8_bin; 
 
 mysql> create user zabbix@localhost identified by 'password'; #預設密碼為password,可修改成自己想要的密碼,此次演示密碼使用password
 
 mysql> grant all privileges on zabbix.* to zabbix@localhost; 
 
 mysql> quit; 

在Zabbix伺服器主機上,匯入初始架構和資料。系統將提示您輸入新建立的密碼

 # zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix 
e. 為Zabbix伺服器設定資料庫

編輯檔案/etc/zabbix/zabbix_server.conf

 DBPassword=password 
f. 為Zabbix前端設定PHP

編輯檔案/etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf,取消註釋併為您設定正確的時區。

 ; php_value[date.timezone] = Europe/Riga 

我這裡修改為

php_value[date.timezone] = PRC 

***注: PRC是People’s Republic of China的英文縮寫,也就是中華人民共和國。簡稱「中國」

g. 啟動Zabbix伺服器和代理程序

啟動Zabbix伺服器和代理程序,並使其在系統啟動時啟動

 # systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm 
 # systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm 
h. 設定Zabbix前端

連線到新安裝的Zabbix前端:http://伺服器IP地址/zabbix

如果顯示組態檔OK,則進入下一步

1、登入

img

這是Zabbix歡迎螢幕。輸入使用者名稱Admin(密碼為zabbix)以Zabbix超級使用者身份登入。將授予對「設定和管理」選單的存取許可權。

*2、新增使用者

要檢視有關使用者的資訊,請轉到管理→使用者。

img

要新增新使用者,請單擊建立使用者。

在新使用者表單中,確保將您的使用者新增到現有使用者組之一,例如「 Zabbix管理員」。

img

所有必填欄位均標有紅色星號。

預設情況下,新使用者沒有為他們定義的媒體(通知傳遞方法)。要建立一個,請轉到「媒體」索引標籤,然後單擊「新增」。

img

在此彈出視窗中,輸入使用者的電子郵件地址。

您可以指定媒介將處於活動狀態的時間段(有關格式的說明,請參見「時間段指定」頁面),預設情況下,媒介始終處於活動狀態。您還可以自定義觸發嚴重性級別,媒介將針對該級別進行啟用,但是暫時將所有級別保持啟用狀態。

單擊新增,然後在使用者屬性表單中單擊add。新使用者將出現在使用者列表中。

img

*3、新增許可權

預設情況下,新使用者無權存取主機。要授予使用者許可權,請在「Group」列中單擊使用者的組(在本例中為「 Zabbix管理員」)。在組屬性表單中,轉到「Permissions」索引標籤。

img

該使用者對Linux伺服器組具有唯讀存取許可權,因此請單擊使用者組選擇欄位旁邊的「select」。

img

在此彈出視窗中,選中「 Linux伺服器」旁邊的核取方塊,然後單擊「select」。 Linux伺服器應顯示在選擇欄位中。單擊「Read」按鈕以設定許可權級別,然後單擊「Add」以將該組新增到許可權列表。在使用者組屬性表單中,單擊「Update」。

在Zabbix中,對主機的存取許可權分配給使用者組,而不是單個使用者。

做完了!可以嘗試使用新使用者的憑據登入。

2-2-2、使用者端設定

1、安裝zabbix-agent
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
yum install zabbix-agent
2、在zabbix_agentd.conf檔案寫入zabbix server的IP地址

在這裡插入圖片描述

cd /etc/zabbix/
cp zabbix_agentd.conf zabbix_agentd.conf.bak  #備份
vim zabbix_agentd.conf
3、開啟zabbix-agent服務
systemctl start zabbix-agent

2-2-3、在zabbix server新增使用者端

點選Create host
在這裡插入圖片描述

填入相應的資訊
在這裡插入圖片描述在這裡插入圖片描述
填寫完成後,點選add,出現下列情況則證明新增成功。注意要出現紅圈的標誌,若沒有出現,重新整理一下頁面。
在這裡插入圖片描述

可點選主機的名字檢視情況
在這裡插入圖片描述

部分效果圖
在這裡插入圖片描述參考:
https://www.zabbix.com/
https://blog.csdn.net/meltsnow/article/details/91908357