用Zabbix實現監控交換機狀態

Zabbix如何監控交換機

1 案例一:部署zabbix監控平臺

1.1 需求

l 本案例要求部署一臺Zabbix監控服務器


1.2 方案

使用一臺虛擬機,安裝LNMP環境,Zabbix及相關的依賴包,配置數據庫MariaDB並對Zabbix監控平臺進行初始化操作


1. 安裝LNMP環境

2. 源碼安裝Zabbix

3. 安裝監控主機,修改基本配置

4. 初始化Zabbix監控Web頁面

5. 修改PHP配置文件,滿足Zabbix需求

1.3步驟

實現此案例需要按照如下步驟進行

步驟一:部署監控服務器

1) 安裝LNMP環境

Zabbix監控管理控制檯需要通過Web頁面展示出來,並且還需要使用數據庫來存儲數據,因此需要先為Zabbix準備LNMP環境


01. [ root@zabbixserver ~] # y um - y install gcc pcre- devel openssl- devel

02. [ root@zabbixserver ~] # tar - xf nginx- 1.12.2.tar.gz

03. [ root@zabbixserver ~] # cd nginx- 1.12.2

04. [ root@zabbixserver nginx- 1.12.2] # ./configure - - with- http_ssl_module

05. [ root@zabbixserver nginx- 1.12.2] # make && make install

06. [ root@zabbixserver ~] # yum - y install php php- my sql \\

07. > mariadb mariadb- devel mariadb- server

08. [ root@zabbixserver ~] # yum -y install php-fpm-5.4.16.el7.x86_64.rpm

注意:php-fpm軟件包YUM源裡不提供需要自行下載


2) 修改Nginx配置文件

配置Nginx支持PHP動態網站,因為有大量PHP腳本需要執行,因此還需要開啟Nginx各種fastcgi緩存,加速PHP腳本的執行速度


01.[ root@zabbixserver ~] # vim /usr/local/nginx/conf/nginx.conf

02. … …

03. http{

04. … …

05. fastcgi_buffers 8 16k; //緩存php生成的頁面內容,8個16k

06. fastcgi_buffer_size 32k; //緩存php生產的頭部信息

07. fastcgi_connect_timeout 300; //連接PHP的超時時間

08. fastcgi_send_timeout 300; //發送請求的超時時間

09. fastcgi_read_timeout 300; //讀取請求的超時時間

10. location ~ \\.php$ {

11. root html;

12. fastcgi_pass 127.0.0.1:9000;

13. fastcgi_index index.php;

14. include fastcgi.conf;

15. }

16. … …


3) 啟動服務

啟動Nginx、PHP-FPM、MariaDB、關閉SELinux和防火牆


01. [ root@zabbixserver ~] # systemctl start mariadb

02. [ root@zabbixserver ~] # systemctl start php- fpm

03. [ root@zabbixserver ~] # ln - s /usr/local/nginx/sbin/nginx /sbin/nginx

04. [ root@zabbixserver ~] # nginx

05. [ root@zabbixserver ~] # firewall- cmd - - set- default- zone=trusted

06. [ root@zabbixserver ~] # setenforce 0


4) 客戶端測試LNMP環境

服務器創建PHP測試頁面,瀏覽器訪問頁面測試網頁連通性


01. vim /usr/local/nginx/html/test.php

02.

03. $i=520;

04. echo $i;

05. ?>

06. curl http://192.168.201.210/test.php


步驟二:部署監控服務器Zabbix_server


1) 源碼安裝Zabbix_server,需要提前安裝好依賴包


01. [ root@zabbixserver lnmp_soft] # y um - y install net- snmp- devel \\

02. > curl- devel

03. [ root@zabbixserver lnmp_soft] # y um - y install \\

04. > libevent- devel- 2.0.21- 4.el7.x86_64.rpm

注意:libevent- devel軟件yum不提供,需要自行安裝

05. [ root@zabbixserver lnmp_soft] # tar - xf zabbix- 3.4.4.tar.gz

06. [ root@zabbixserver lnmp_soft] # cd zabbix- 3.4.4/

07. [ root@zabbixserver zabbix- 3.4.4] # ./configure - - enable- server \\

08. > - - enable- proxy --enable-agent --with- my sql=/usr/bin/my sql_config --with-net-snmp --with- libcurl

// - - enable- server安裝部署zabbix服務器端軟件

// - - enable- agent安裝部署zabbix被監控端軟件

// - - enable- proxy安裝部署zabbix代理相關軟件

// - - with- my sql配置my sql_config路徑

// - - with- net- snmp允許zabbix通過snmp協議監控其他設備

// - - with- libcurl安裝相關curl庫文件,這樣zabbix就可以通過curl連接http等服務,測試被監控主機服

09. [ root@zabbixserver zabbix- 3.4.4] # make && make install


2)初始化Zabbix,創建數據庫,上線Zabbix的Web頁面


01.[ root@zabbixserver ~] # mysql

02. my sql> create database zabbix character set utf8;

//創建數據庫,支持中文字符集

03.my sql> grant all on zabbix.* to zabbix@'localhost' identified by 'zabbix';

//創建可以訪問數據庫的賬戶與密碼

04.[ root@zabbixserver ~] # cd lnmp_soft/zabbix- 3.4.4/database/mysql/

05.[ root@zabbixserver my sql] # my sql - uzabbix - pzabbix zabbix <

schema.sql

06.[ root@zabbixserver my sql] # my sql - uzabbix - pzabbix zabbix < images.sql

07.[ root@zabbixserver my sql] # my sql - uzabbix - pzabbix zabbix < data.sql

//上邊是創建空數據庫,zabbix源碼包目錄下,有提前準備好的數據

//使用my sql導入這些數據即可(注意導入順序)


4) 上線Zabbix的Web頁面


01. [ root@zabbixserver ~] # cd lnmp_soft/zabbix- 3.4.4/frontends/php/

02. [ root@zabbixserver php] # cp - r * /usr/local/nginx/html/

03. [ root@zabbixserver php] # chmod - R 777 /usr/local/nginx/html/*


5) 修改Zabbix_server配置文件,設置數據庫相關參數,啟動Zabbix_serve服務


01. [ root@zabbixserver ~] # v im /usr/local/etc/zabbix_server.conf

02. DBHost=localhost //數據庫主機,默認該行被註釋

03. DBName=zabbix //設置數據庫名稱

04. DBUser=zabbix //設置數據庫賬戶

05. DBPassword=zabbix //設置數據庫密碼,默認該行被註釋

06. LogFile=/tmp/zabbix_server.log //設置日誌,僅查看以下即可

07. [ root@zabbixserver ~] # useradd - s /sbin/nologin zabbix

//創建用戶不然無法啟動服務

08. [ root@zabbixserver ~] # zabbix_server //啟動服務

09. [ root@zabbixserver ~] # ss - ntulp | grep zabbix_server //確認連接狀態,端口10051

10. tcp LISTEN 0 128 *:10051*:* users:( ( "zabbix_server",pid=23275,fd=4) ,( "zabbix_server",


//如果是因為配置文件不對,導致服務無法啟動時,不要重複執行zabbix_server, 一定要先使用killall zabbix_server關閉服務後,再重新啟動一次。 修改Zabbix_agent配置文件,啟動Zabbix_agent服務

11. [ root@zabbixserver ~] # v im /usr/local/etc/zabbix_agentd.conf

12. Server=127.0.0.1,192.168.201.210 //允許哪些主機監控本機

13. ServerActive=127.0.0.1,192.168.201.210 //允許哪些主機通過主動模式監控本機

14. Hostname=zabbix_server //設置本機主機名

15. LogFile=/tmp/zabbix_server.log //設置日誌文件

16. UnsafeUserParameters=1 //是否允許自定義key

17. [ root@zabbixserver ~] # zabbix_agentd //啟動監控agent

18. [ root@zabbixserver ~] # ss - ntulp | grep zabbix_agentd //查看端口信息為10050


//如果是因為配置文件不對,導致服務無法啟動時,不要重複執行zabbix_agentd, 一定要先使用killall zabbix_agentd關閉服務後,再重新啟動一次。 瀏覽器訪問Zabbix_server服務器的Web頁面


5) 用瀏覽器訪問Zabbix的Web頁面


http://192.168.201.210/index.php


//第一次訪問,初始化PHP頁面會檢查計算機環境是否滿足要求,如果不滿足會給出修改建議

//默認會提示PHP的配置不滿足環境要求,需要修改PHP配置文件


6) 根據錯誤提示,修改PHP配置文件,滿足Zabbix_server的Web環境要求 php-bcmath和php-mbstring軟件包需要自己下載,yum源裡沒有提供

01. [ root@zabbixserver ~] # yum - y install php- gd php- xm

02. [ root@zabbixserver ~] # yum -y install php-bcmath

03. [ root@zabbixserver ~] # y um install php- mbstring

04. [ root@zabbixserver ~] # v im /etc/php.ini

05. date.timezone = Asia/Shanghai //設置時區

06. max_execution_time = 300 //最大執行時間,秒

07. post_max_size = 32M //POST數據最大容量

08. max_input_time = 300 //服務器接收數據的時間限制

09. 9. memory _limit = 128M //內存容量限制

10. [ root@zabbixserver ~] # systemctl restart php- fpm


7) 修改完PHP配置文件後,再次使用瀏覽器訪問服務器

http://192.168.201.210/index.php


用Zabbix實現監控交換機狀態


用Zabbix實現監控交換機狀態


這裡有一個PHP LDAP是warning狀態是沒有問題的! 在初始化數據庫頁面,填寫數據庫相關參數


用Zabbix實現監控交換機狀態


在登陸頁面,使用用戶(admin)和密碼(zabbix)登陸,登陸後設置語言環境為中文


用Zabbix實現監控交換機狀態


用Zabbix實現監控交換機狀態


到此Zabbix監控服務端已經配置完成,現在要使用Zabbix對交換機進行監控

步驟

步驟一:以下操作在被監控的交換機上進行,這裡以Cisco交換機為例。

1) 登錄到Cisco交換機,開啟snmp服務

01.enable //切換到特權模式

02.configure terminal //進入全局配置模式

03.snmp-server community public ro //打開交換機snmp服務,設置團體名稱為public,只讀

04.snmp-server community cisco rw //打開交換機snmp服務,設置團體名稱為cisco,讀寫

05.snmp-server enable traps //啟用snmp陷阱

06.exit //退出全局配置模式

07.show run //查看當前配置信息

08.exit //退出特權模式

2)使用Getif查看交換機端口信息

下載Getif:http://www.wtcs.org/snmp4tpc/FILES/Tools/SNMP/getif/getif-2.3.1.zip 安裝後打開軟件

Windows 7/8/8.1系統需要單擊右鍵,選擇以管理員身份運行,否則軟件打開失敗!

01.Host name:交換機ip地址

02.Read:public

03.其他默認

04.點擊start

05.連接成功後切換到interface選項卡,點start連接後查看交換機

06. 點Start進行連接,連接成功後切換到interface選項卡,點Start連接後查看交換機所有的端口信息,並記錄下來

07.切換到MBrowser選項卡

08.選擇iso->org->dod->internet->mgmt->mib-2->interface->ifTable->ifEntry->ifInOctets

09.點Start進行連接

注意:

1)C3750E端口

ifInOctets //交換機端口進流量

ifOutOctets //交換機端口出流量

Vlan1

5179 StackPort1

5180 StackSub-St1-1

5181 StackSub-St1-2

10101 GigabitEthernet1/0/1

10102 GigabitEthernet1/0/2

10103 GigabitEthernet1/0/3

10104 GigabitEthernet1/0/4

10105 GigabitEthernet1/0/5

10106 GigabitEthernet1/0/6

10107 GigabitEthernet1/0/7

10108 GigabitEthernet1/0/8

10109 GigabitEthernet1/0/9

10110 GigabitEthernet1/0/10

10111 GigabitEthernet1/0/11

10112 GigabitEthernet1/0/12

10113 GigabitEthernet1/1/1

10114 GigabitEthernet1/1/2

10115 GigabitEthernet1/1/3

10116 GigabitEthernet1/1/4

10201 TenGigabitEthernet1/1/1

10202 TenGigabitEthernet1/1/2

14501 Null0

14502 FastEthernet0

2)C2960S端口

ifInOctets //進口流量 1.3.6.1.2.1.2.2.1.10.

ifOutOctets //出口流量 1.3.6.1.2.1.2.2.1.16.

1 Vlan1

10101 GigabitEthernet0/1

10102 GigabitEthernet0/2

10103 GigabitEthernet0/3

10104 GigabitEthernet0/4

10105 GigabitEthernet0/5

10106 GigabitEthernet0/6

10107 GigabitEthernet0/7

10108 GigabitEthernet0/8

10109 GigabitEthernet0/9

10110 GigabitEthernet0/10

10111 GigabitEthernet0/11

10112 GigabitEthernet0/12

10113 GigabitEthernet0/13

10114 GigabitEthernet0/14

10115 GigabitEthernet0/15

10116 GigabitEthernet0/16

10117 GigabitEthernet0/17

10118 GigabitEthernet0/18

10119 GigabitEthernet0/19

10120 GigabitEthernet0/20

10121 GigabitEthernet0/21

10122 GigabitEthernet0/22

10123 GigabitEthernet0/23

10124 GigabitEthernet0/24

10125 GigabitEthernet0/25

10126 GigabitEthernet0/26

10127 GigabitEthernet0/27

10128 GigabitEthernet0/28

10129 GigabitEthernet0/29

10130 GigabitEthernet0/30

10131 GigabitEthernet0/31

10132 GigabitEthernet0/32

10133 GigabitEthernet0/33

10134 GigabitEthernet0/34

10135 GigabitEthernet0/35

10136 GigabitEthernet0/36

10137 GigabitEthernet0/37

10138 GigabitEthernet0/38

10139 GigabitEthernet0/39

10140 GigabitEthernet0/40

10141 GigabitEthernet0/41

10142 GigabitEthernet0/42

10143 GigabitEthernet0/43

10144 GigabitEthernet0/44

10145 GigabitEthernet0/45

10146 GigabitEthernet0/46

10147 GigabitEthernet0/47

10148 GigabitEthernet0/48

10149 GigabitEthernet0/49

10150 GigabitEthernet0/50

12001 Null0

12002 FastEthernet0

3) C3560端口

ifInOctets //進口流量 1.3.6.1.2.1.2.2.1.10.

ifOutOctets //出口流量 1.3.6.1.2.1.2.2.1.16.

1 Vlan1

10101 GigabitEthernet0/1

10102 GigabitEthernet0/2

10103 GigabitEthernet0/3

10104 GigabitEthernet0/4

10105 GigabitEthernet0/5

10106 GigabitEthernet0/6

10107 GigabitEthernet0/7

10108 GigabitEthernet0/8

10109 GigabitEthernet0/9

10110 GigabitEthernet0/10

10111 GigabitEthernet0/11

10112 GigabitEthernet0/12

10113 GigabitEthernet0/13

10114 GigabitEthernet0/14

10115 GigabitEthernet0/15

10116 GigabitEthernet0/16

10117 GigabitEthernet0/17

10118 GigabitEthernet0/18

10119 GigabitEthernet0/19

10120 GigabitEthernet0/20

10121 GigabitEthernet0/21

10122 GigabitEthernet0/22

10123 GigabitEthernet0/23

10124 GigabitEthernet0/24

10125 GigabitEthernet0/25

10126 GigabitEthernet0/26

10127 GigabitEthernet0/27

10128 GigabitEthernet0/28

10129 GigabitEthernet0/29

10130 GigabitEthernet0/30

10131 GigabitEthernet0/31

10132 GigabitEthernet0/32

10133 GigabitEthernet0/33

10134 GigabitEthernet0/34

10135 GigabitEthernet0/35

10136 GigabitEthernet0/36

10137 GigabitEthernet0/37

10138 GigabitEthernet0/38

10139 GigabitEthernet0/39

10140 GigabitEthernet0/40

10141 GigabitEthernet0/41

10142 GigabitEthernet0/42

10143 GigabitEthernet0/43

10144 GigabitEthernet0/44

10145 GigabitEthernet0/45

10146 GigabitEthernet0/46

10147 GigabitEthernet0/47

10148 GigabitEthernet0/48

10501 Null0

10149 GigabitEthernet0/49

10150 GigabitEthernet0/50

10151 GigabitEthernet0/51

10152 GigabitEthernet0/52

步驟二

1、在Zabbix中添加對交換機的監控對思科交換機CPU與內存配置

對內存進行監控

1) 【配置】--【主機】--【監控項】-【創建監控項】


用Zabbix實現監控交換機狀態


名稱:任意 這裡是 CiscoMemoryFree

鍵值:任意 這裡是 CiscoMemoryFree

SNMP ID : 特定 設備的內存空為 .1.3.6.1.4.1.9.9.48.1.1.1.6.1


用Zabbix實現監控交換機狀態


名稱:任意 這裡是 CiscoMemoryUsed

鍵值:任意 這裡是 CiscoMemoryUsed

SNMP ID : 特定設備的內存已被使用 ID為 .1.3.6.1.4.1.9.9.48.1.1.1.5.1


用Zabbix實現監控交換機狀態


名稱:任意 這裡是 CiscoMemoryUsage


鍵值:任意 這裡是 CiscoMemoryUsage


單位:百分比


公式:這裡沒有特定的使用率ID,需要計算。

設備的內存使用率公式:

(last("CiscoMemoryUsed")/(last("CiscoMemoryFree")+last("CiscoMemoryUsed")))*100

2)【配置】--【主機】--【觸發器】--【創建觸發器】


用Zabbix實現監控交換機狀態


3)【配置】--【主機】--【圖形】--【創建圖形】


用Zabbix實現監控交換機狀態


2、對CPU進行監控

1)【配置】--【主機】--【監控項】-【創建監控項】


用Zabbix實現監控交換機狀態


名稱:任意 這裡是 CiscoCpuUsage

鍵值:任意 這裡是 CiscoCpuUsage

SNMP ID : 特定 設備的內存使用率 ID為 1.3.6.1.4.1.9.2.1.57.0

單位:設置成百分比


2) 【配置】--【主機】--【觸發器】--【創建觸發器】


用Zabbix實現監控交換機狀態


3) 【配置】--【主機】--【圖形】--【創建圖形】


用Zabbix實現監控交換機狀態


到此配置完成。


分享到:


相關文章: