开源服务器监控工具——zabbix(一)
服務器監控工具
服務器監控工具功能相當強大,無論何時何地,我們都可以了解到服務器的功能以及性能。服務器監控工具的使用,可以讓我們清楚的知道用戶可以打開我們的網站,且確保網速不慢。只有這樣做,才能留住寶貴的用戶,以免因為系統停運的原因,導致用戶丟失。
監控工具:
cacti、Nagios、Ganglia、zabbix
cacti:它是一款數據采集、數據存儲,外加web界面展示的工具,它的數據展示功能很強大,但是故障報警方面很薄弱。
Nagios:告警功能異常強大,但是數據展示方面薄弱,并且監控主機數量有限。
zabbix:zabbix集以上兩款工具的優點于一身,并且更加強大,能實現企業級的分布式監控。
監控系統采集數據的方式:
snmp:簡單,但是安全性差,主要針對網絡設備,網絡設備不能安裝agent。
server/agent:安全性高,功能強大
zabbix的基本概念
zabbix能監控服務器的各項性能及各種網絡參數,保證服務器系統及服務正常的運營,并提供靈活的通知機制,可與各種社交方式對接(短信、微信、QQ、郵箱等),讓系統管理員快速定位并及時解決存在的各種問題,從而提高服務的可用性及安全性。
zabbix工作原理
zabbix運行的大概的流:
zabbix-agent需要安裝到被監控的主機上,它負責定期收集的各項數據,并發送到zabbix-server端,zabbix-server將數據存儲到數據庫中,zabbix-web根據數據在前端進行展現和繪圖。這里agent收集數據分為主動和被動兩種模式:
主動:agent請求server獲取主動的監控項列表,并主動將監控項內需要檢測的數據提交給sever/proxy
被動:server向agent請求獲取監控項的數據,agent返回數據
zabbix提供的功能
1、主機性能的監控
2、數據庫性能的監控
3、網絡設備性能的監控
4、靈活的告警方式
5、可視化圖表展示
zabbix可監控的目標
1、硬件設備性能
2、應用軟件的啟用
3、服務的運行狀態
zabbix的組成
zabbix主要由兩部分組成:zabbix-server和zabbix-agent,或者說是監控者與被監控者
zabbix-server:監控者,通過收集agent發送的數據,寫入數據庫(mysql,oracal)中,再通過web展示出來。默認端口號為10051
zabbix-agent:被監控者,通過安裝zabbix agent,可將主機作為一個被監控的節點,通過agent采集數據并發送到zabbix server或zabbix proxy
端。默認端口號為10050
zabbix其他重要組件及工具
zabbix-proxy:監控代理者,通過安裝zabbix-proxy,可將主機作為代理,代理zabbix-server收集部分被監控的監控數據,寫入zabbix-proxy自己的數據庫中,再統一按時發往zabbix-server端。(可視為一個小型的zabbix-server,配置方法也幾乎等同于zabbix-server,常用于分布式監控環境中),默認端口號為10051
Database Storage:專用于存儲所有配置信息,以及由zabbix收集的數據。
web interface:zabbix的GUI接口,通常與server運行再同一臺主機上。
zabbix的監控架構
zabbix有三種監控架構:server-agent、server-proxy-agent、master-node-client
<1>、server-agent架構
是zabbix最基本的結構,如名稱所示其結構為zabbix-server與zabbix-agent構成,中間沒有設計任何代理環節,其直接由zabbix-server與zabbix-agent之間進行數據交互,搭建時,在監控主機上安裝zabbix-server,被監控主機上安裝zabbix-agent。適用于網絡簡單,設備較少的監控環境。
<2>、server-proxy-agent架構
是zabbix企業級的架構,如名稱所示其結構由zabbix-server、zabbix-proxy、zabbix-agent構成,其中zabbix-proxy作為代理環節,這個架構中的zabbix-proxy本身沒有前端,會將從zabbix-agent收集的數據放入自己的數據庫,再統一按時發給zabbix-server。一般用于跨機房或者跨網絡,設備較多的網絡環境的監控。
<3>、server-node-client架構
是zabbix中最復雜的架構,是zabbix企業級架構,其結構為zabbix-server(master)、node節點、zabbix-agent(client)構成,其中的node節點可以單獨的作為一個zabbix-server端,下方可接zabbix-proxy,作類似于server-proxy-agent的架構,也可直接連接zabbix-agent做server-agent架構。這個架構中的node節點有自己的配置文件和數據庫,它會將配置信息和監控數據向master同步,master的故障或損壞對node其下架構的完整性沒有影響。與server-proxy-agent類似,都是適用于跨機房、跨網絡,設備較多的大型網絡環境。
安裝zabbix
監控主機配置(zabbix-server)
我們使用一個rhel7的虛擬機,用來搭建zabbix,安裝zabbix-server
1、下載所需安裝包
2、使用yum安裝這些安裝包
yum install zabbix-server-mysql-3.4.6-1.el7.x86_64.rpm zabbix-web-3.4.6-1.el7.noarch.rpm zabbix-web-mysql-3.4.6-1.el7.noarch.rpm fping-3.10-1.el7.x86_64.rpm iksemel-1.4-2.el7.centos.x86_64.rpm php-* -y
3、zabbix需要數據庫的支持,下載mariadb數據庫并進行安全初始化
yum install mariadb-server -y
打開mariadb并進行安全初始化:
輸入兩次密碼后一直輸入y回車即可
4、進入數據庫執行以下操作
創建zabbix數據庫支持utf8格式:
create database zabbix character set utf8 collate utf8_bin;
授權zabbix用戶:
grant all privileges on zabbix.* to zabbix@localhost identified by ‘Guodong+0306’;
5、cd /usr/share/doc/zabbix-server-mysql-3.4.6/
將create.sql.gz包中的內容導入mysql:
zcat create.sql.gz | mysql -u zabbix -p zabbix ####zcat為查看gz包內容的命令
此處密碼為數據庫密碼
執行完此操作后,進入數據庫,選擇zabbix庫,查看數據表會看到140張新增加的數據表
6、進入/etc/zabbix目錄,編輯配置文件zabbix_server.conf
在配置文件中對數據庫進行授權:
7、進入/etc/httpd/conf.d/編輯zabbix.conf文件修改時區
8、開啟zabbix-server服務和httpd服務
systemctl start zabbix-server
systemctl start httpd
9、安裝zabbix-agent-3.4.6-1.el7.x86_64.rpm
安裝完成后直接打開服務
systemctl start zabbix-agent
10、在網頁中輸入 172.25.66.11/zabbix進入web界面
11、點擊上圖中紅框所示,進入下一步
這一步為檢查先決條件,如果都沒問題,即所有項都顯示OK,則進入下一步
12、下圖中密碼為數據庫密碼
下一步填寫zabbix信息
下一步為安裝前的檢查,如果沒問題點擊Next進行安裝
安裝成功
13、登陸
用戶名為Admin,登陸密碼為zabbix進入后可以修改
14、進入后,我們可以點擊web界面右上角的人像進行修改密碼和語言
被監控主機配置(server-agent)
新打開一個rhel6的虛擬機server1,因為在企業中服務器很多都是6版本的,所以我們使用rhel6作為實驗主機,安裝server-agent
一、先在zabbix-server主機中添加agent的解析
二、在zabbix-agent主機中
1、在新打開的rhel6主機server1中添加zabbix-server的解析
2、安裝zabbix-agent-3.4.6-1.el6.x86_64.rpm
3、進入/etc/zabbix/編輯配置文件zabbix_agentd.conf
4、開啟服務
/etc/init.d/zabbix-agent start
使用zabbix-server監控agent
1、在zabbix的web界面中點擊配置,再點擊下面的主機,將zabbix server啟用
等可用性下面的ZBX亮起就說明可以使用
2、使用自動注冊發現要被監控的主機,點擊配置下面的動作,然后在有上角選擇自動注冊
然后點擊創建動作
在動作中的名稱中填寫agent的主機名server1
然后選擇操作后點擊下面的新的,第一個添加主機
然后點擊下面的添加,不是最下面
第二個點擊新的然后選擇添加主機到群組,點擊選擇在彈出的界面選擇linux servers
第三個選擇與模板關聯,在彈出的界面中選擇OS linux
點擊添加后為下圖所示
3、點擊上圖中最后的添加按鈕將動作添加
然后進到配置下面的主機,多刷新幾次就可以發現server1
總結
以上是生活随笔為你收集整理的开源服务器监控工具——zabbix(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基于java的在线聊天系统设计
- 下一篇: 一段进程隐藏的代码