zabbix 監控

zabbix 術語

zabbix 是一款開源免費的監控軟件,目前廣泛用於企業監控中,可以監控主機、交換機、路由器、UPS等等。zabbix 可以採用以下方式進行監控
agent:通過專用的代理程序進行監控,與常見的master/agent模型類似,如果被監控對象支持對應的agent,推薦首選這種方式。
ssh/telnet:通過遠程控制協議進行通訊,比如ssh或者telnet。
SNMP:通過SNMP協議與被監控對象進行通訊,一般監控網絡設備例如交換機路由器防火牆等會採用這種協議。
IPMI:通過IPMI接口進行監控,我們可以通過標準的IPMI硬件接口,監控被監控對象的物理特徵,比如電壓,溫度,風扇狀態,電源狀態等。
JMX:通過JMX進行監控,JMX(Java Management Extensions,即Java管理擴展),用這個來監控JVM虛擬機。
zabbix 組件:
zabbix agent:部署在被監控主機上,負責被監控主機的數據,並將數據發送給zabbix server。
zabbix server:負責接收agent發送的報告信息,並且負責組織配置信息、統計信息、操作數據等。
zabbix database:用於存儲所有zabbix的配置信息、監控數據的數據庫。
zabbix web:zabbix的web界面,管理員通過web界面管理zabbix配置以及查看zabbix相關監控信息,可以單獨部署在獨立的服務器上。
zabbix proxy:可選組件,用於分佈式監控環境中,zabbix proxy代表server端,完成局部區域內的信息收集,最終統一發往server端。

 

zabbix 安裝和啓動

以centos 7 爲例:
zabbix 官方軟件包安裝地址:http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/
在zabbix server 端:yum install zabbix-server-mysql (server-mysql 是用來連接數據庫用的,web 和web-mysql是用來圖形化操作用的)
zabbix 被監控端:yum install zabbix-agent zabbix-sender (sender 是用來主動發送給server端的)
管理zabbix server的客戶端:yum install http php zabbix-web zabbix-web-mysql (這個也可以和zabbix server在同一臺機器上,需要安裝http是因爲
要通過http 訪問和修改zabbix server 配置,安裝php 是因爲zabbix 的網頁呈現是通過php 寫的)
遠端的數據庫192.168.10.33要對zabbix 進行授權:
MariaDB [(none)]> create database zbxdb character set 'utf8';
MariaDB [(none)]> grant all on zbxdb.* to zbxuser@'192.168.%' identified by 'centos';

在zabbix server端 [root@localhost ~]# rpm -ql zabbix-server-mysql 會發現 生成 /usr/share/doc/zabbix-server-mysql-3.4.4/create.sql.gz
文件,需要把該文件解壓縮並導入到數據庫中,操作如下:
uzip /usr/share/doc/zabbix-server-mysql-3.4.4/create.sql.gz
mysql -uzbxuser -pcentos -h192.168.10.33 -Dzbxdb <create.sql 把解壓後的文件導入到遠端數據庫中。
至此 zabbix 的server 和agent 安裝已經完成了,注意zabbix server一定要能夠訪問數據庫,否則zabbix 會不能正常啓動的!

zabbix 啓動
在zabbix server 端 vim /etc/zabbix/zabbix_server.conf
ListenPort=10051 不需要改默認就是這個端口
SourceIP= 指定源ip 也可以不寫
DBHost=192.168.10.33 mysql 服務器ip,如果在同一臺機器上就寫localhost
DBName=zbxdb 通過DBName指定zabbix數據庫對應的名稱
DBUser=zbxuser 通過DBUser指定zabbix數據庫用戶名
DBPassword=centos
DBPort=3306

配置http ,這裏採用虛擬主機

vim /etc/httpd/conf.d/zabbix.conf 
#
# Zabbix monitoring system php web frontend
#
<virtualhost 192.168.10.34:80>
documentroot /usr/share/zabbix
Alias /zabbix /usr/share/zabbix

<IfModule mod_php5.c>
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value always_populate_raw_post_data -1
php_value date.timezone Asia/Shanghai #修改時區

........此處省略一萬字

</virtualhost>

 

配置完成後重啓zabbix-server 和httpd 服務 就可以了。確保zabbix-server 10051 存在的 如果沒有的話請檢查zabbix server 和mysql的連接情況。
在電腦上輸入: http://192.168.10.34/zabbix/setup,會看到如下界面:

啓動zabbix agent 

vim  /etc/zabbix/zabbix_agentd.conf

Server=192.168.1.34  # zabbix server 地址

ServerActive=192.168.1.34

Hostname=agent30   該項要和zabbix server 添加的hostname 保持一致。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章