天天看點

如何監控分散在不同的區域網路内的伺服器和網絡裝置?

作者:IT狂人日志

在IT運維工作中,監控的重要性,想必不用我再多說什麼了,畢竟誰都想及早發現故障,有效的監控,總比對着伺服器和網絡裝置燒香、跪拜來得靠譜吧。

而作為一個IT外包服務公司,由于需要監控的伺服器和網絡裝置比較多,而且分布在衆多的區域網路内,是以分布式的監控,肯定是非常必要的,當然也同樣适用于擁有多地分公司的集團企業。

如何監控分散在不同的區域網路内的伺服器和網絡裝置?

我們的做法是,在公有雲租賃一台雲主機,部署Zabbix Server,最初監控的裝置比較少的時候,直接在客戶的防火牆或者路由器上開放相應的端口,然後Zabbix Server逐一添加被監控裝置就行了。

但是,随着需要監控的裝置越來越多,這種方式顯然跟不上節奏了,是以不得不開始部署分布式的Zabbix。

其方法就是:在内網部署Zabbix Proxy,來代表雲端的Zabbix server在本地收集資料,然後将資料統一上報給雲端的Zabbix server。

這種方法,有一個非常顯著的優勢,就是不再需要被監控的客戶擁有公網固定IP,隻要有普通的寬帶就可以了。

還有就是,proxy 隻需要一個到達Zabbix server的TCP連接配接即可,路由器僅需配置一條端口就可以了,防火牆的話,當然還需要一條放行規則。

Zabbix Server的安裝和配置,前面已經有文章寫過了,是以就不再重複了, 下面以Centos系統為例,講解一下Zabbix Proxy的安裝和配置。

  1. 安裝mysql資料庫

yum install mysql-community-server -y

如果報錯 則用yum install mysql-community-server --nogpgcheck -y

如何監控分散在不同的區域網路内的伺服器和網絡裝置?

啟動mysql服務并設定開機自啟

如何監控分散在不同的區域網路内的伺服器和網絡裝置?

檢視mysql初始密碼

如何監控分散在不同的區域網路内的伺服器和網絡裝置?

mysql -u root -p ,然後輸入初始密碼

如何監控分散在不同的區域網路内的伺服器和網絡裝置?

修改mysql初始密碼

alter user 'root'@'localhost' identified by 'password';

至此mysql安裝成功。

2、部署Zabbix Proxy

步驟一 Install Zabbix repository

# rpm-Uvh https://repo.zabbix.com/zabbix/6.0/rhel/7/x86_64/zabbix-release-6.0-4.el7.noarch.rpm

# yum clean all

如何監控分散在不同的區域網路内的伺服器和網絡裝置?

步驟二 Install Zabbix proxy

# yum install zabbix-proxy-mysql zabbix-sql-scripts zabbix-selinux-policy

如何監控分散在不同的區域網路内的伺服器和網絡裝置?

步驟三 建立初始資料庫

在資料庫主機上運作以下代碼。

# mysql -uroot -p

Password

mysql> create database zabbix_proxy character set utf8mb4 collate utf8mb4_bin;

mysql> create user zabbix@localhost identified by 'password';

mysql> grant all privileges on zabbix_proxy.* to zabbix@localhost;

mysql> set global log_bin_trust_function_creators = 1;

mysql> quit;

如何監控分散在不同的區域網路内的伺服器和網絡裝置?

導入初始架構和資料,系統将提示您輸入新建立的密碼。

# cat /usr/share/zabbix-sql-scripts/mysql/proxy.sql | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix_proxy

等待一段時間後,導入資料庫成功。

# mysql -uroot -p

password

mysql> set global log_bin_trust_function_creators = 0;

mysql> quit;

步驟四 配置Zabbix proxy的資料庫檔案

編輯配置檔案 /etc/zabbix/zabbix_proxy.conf

如何監控分散在不同的區域網路内的伺服器和網絡裝置?

主要是填寫雲端Zabbix Server的彈性IP,以及Zabbix Proxy資料庫對應的密碼。

修改完畢後儲存退出。

步驟五 啟動zabbix-proxy服務,并設定為開機自啟動。

# systemctl restart zabbix-proxy

# systemctl enable zabbix-proxy

檢視zabbix-proxy服務

# systemctl status zabbix-proxy

正确情況,此時如下圖所示

如何監控分散在不同的區域網路内的伺服器和網絡裝置?

Zabbix-proxy部署到此成功。

3、端口映射及防火牆安全政策。

Proxy預設聆聽端口是10051,由于Server在雲端,是以需要将内部10051端口映射到公網,如果是防火牆的話,當然還需要比對的安全政策,這個在之前已經寫過很多教程了,就沒必要重複了,有需要的朋友,可以翻看我之前寫的文章。

  1. 在zabbix-server伺服器上添加proxy和被監控的裝置
如何監控分散在不同的區域網路内的伺服器和網絡裝置?

被監控的内網裝置,處于一個撥号上網的寬帶下,沒有固定的公網IP,是以選擇主動模式,意思就是proxy主動向雲端的server報送資料。

舉例,華為防火牆監控參數配置如下圖所示:

如何監控分散在不同的區域網路内的伺服器和網絡裝置?

在雲端的Zabbix Server上添加被監控的華為防火牆:

如何監控分散在不同的區域網路内的伺服器和網絡裝置?

下面這個圖檔,是雲端Zabbix Server通過端口映射的方式直接監控到内網的伺服器,以及Proxy模式監控内網伺服器的對比,從圖檔中可能看到,無論采購哪種方式,監控到資料是一樣的。

如何監控分散在不同的區域網路内的伺服器和網絡裝置?

顯然,需要監控的裝置分散在不同的區域網路内的話,顯然是分布式(即Proxy模式)更友善、更有優勢,也在相當程度上,減輕了伺服器的負擔。

#伺服器##蘇州頭條##IT外包#

繼續閱讀