zabbix分佈式監控的部署與win被控端

     zabbix是一個分佈式監視,管理系統,基於server-clinet架構,可用於監視各類網絡服務,服務器和網絡機器等狀態.php

server端基於C語言,web管理端Frontend則是基於PHPA製做的,在clinet端如UNIX,windows中安裝zabbix agent以後,可監控CPU,負載,網絡使用狀況,硬盤容量等各類狀態.html

      zabbix是一個基於WEB界面的提供分佈式系統監視以及網絡監視功能的企業級開源解決方案,Zabbix可以監視各類網絡參數,保證服務器系統安全運行;並提供靈活的通知機制讓系統管理員快速的定位/解決各類問題;mysql

zabbix由兩部分組成,zabbix-server與可選組件zabbix agent。zabbix server 能夠經過SNMP,zabbix agent,ping端口監視監控遠程主機,數據收集等功能;linux

       Zabbix server能夠單獨監視遠程服務器的服務狀態;同事也能夠與zabbix agent配合,能夠輪詢zabbix agent主動接收監視數據(trapping方式),同時還能夠被動接收zabbix agentd 發送數據(trapping方式).ios

          Zabbix主要特色:web

   安裝與配置簡單,學習成本低;支持多語言;免費開源;自動發現服務器與網絡設備;sql

   分佈式監視以及WEB集中管理功能;能夠無agent監視;用戶安全認證和柔軟的受權方式;數據庫

   經過WEB界面設置或查看監視結果;email等通知功能;vim

   Zabbix主要功能:windows

CPU負載;內存的使用;磁盤的使用;網絡情況;端口的監視;日誌的監視;

    Zabbix主要有5個主菜單欄:

Moniting:主要是對監控對象的一些相關展現,好比說web應用的展現;

Inventory:資產管理,相似於公司裏的資產管理,好比一個硬件設備,這裏可能會標識設備的名稱,操做系統,MAC地址,資產編號等;

Reports:這裏主要展現了zabbix服務的狀態,好比主機數,報警屬,還有就是展現了一寫設備的可用性報表等相關的信息;

Congfiguration:這裏主要用來對系統的配置,好比建立主機,建立模板,建立報警,建立流量圖片等相關的基本配置主要經過這裏來實現的,

Adminstration:這裏也是用了對系統進行配置,可configuration相比,這裏的配置主要實現對zabbix自己的一些相關的配置工做,好比登陸zabbix的用戶的建立等工做主要經過這裏來配置

Zabbix監控功能:

監控服務器的運行狀態:CPU,內存,網卡。硬盤容量,磁盤I/O,負載locad;

監控應用的port,鏈接數,web網站的關鍵詞

監控網絡設備,防火牆,交換機,路由器,帶寬流量,以及運行是否正常

服務底層硬件:CPU溫度,風扇轉速以及硬盤損壞

開源主流的監控軟件:

  1. zabbix(C/S):自動發現,自動監控,分佈式
  2. cacti,Nagios,Ganglia,Mrtg(分佈式不支持,自動發現,自動監控)
  3. 支持自動發現服務器和網絡設備;
  4. 支持底層自動發現,
  5. 分佈式的監控體系和集中式的web管理;
  6. 支持主動監控和被動監控模式
  7. 服務器端支持多中操做系統:linux,solaris,HP-UX,ALX,Freebsd,openbsd,MAC等
  8. Agent客戶端支持多種操做系統:linux,solaris,HP-UX,ALX,FreeBSD,windows等
  9. 基於SNMP,IPMI接口方式也能夠監控Agent;
  10. 安全的用戶認證及權限配置
  11. 基於WEB的管理方法,支持自由的自定義時間和郵件發送;
  12. 高水平的業務管理方法,支持自由的自定義事件和郵件發送;
  13. 高水平的業務視圖監控資源,支持日誌審計,資產管理等功能 ;
  14. 支持高水平APL二次開發,腳本監控,自KEY定義,自動化運維整合的調用

    環境部署:

Centos6.5(zabbix-server)ip:192.168.20.209

centos6.5(zabbix-proxy):192.168.20.20.207

Centos6.5(zabbix-agent被控端)ip:192.168.20.150

 

zabbix-server端的部署於配置:

yum搭建LAMP環境
yum install httpd httpd-devel httpd-tools mysql mysql-devel mysql-server
因爲Zabbix3.2+ PHP版本須要使用PHP5.4.0版本,請將本機PHP版本升級至5.4.0+,PHP5.3升級至PHP5.6;
rpm -Uvh http://repo.webtatic.com/yum/el6/latest.rpm
yum install php56w.x86_64 php56w-cli.x86_64 php56w-common.x86_64 php56w-gd.x86_64 php56w-ldap.x86_64 php56w-mbstring.x86_64 php56w-mcrypt.x86_64 php56w-mysql.x86_64 php56w-pdo.x86_64 php56w-mbstring php56w-bcmath php56w-gd php56w-xml -y --skip-broken
部署zabbix-server端(ps:centos6.x版本在後面郵件報警)
 Zabbix郵件發送失敗,報錯Support for SMTP authentication was not compiled in,緣由是因爲Zabbix CURL版本要求至少是7.20+版本,升級CURL,升級方法:
root@zabbix-server ~]# wget http://mirror.city-fan.org/ftp/contrib/yum-repo/city-fan.org-release-1-13.rhel6.noarch.rpm
[root@zabbix-server ~]# rpm -ivh city-fan.org-release-1-13.rhel6.noarch.rpm
[root@zabbix-server ~]# rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/libnghttp2-1.6.0-1.el6.1.x86_64.rpm
[root@zabbix-server ~]# yum upgrade libcurl libcurl-devel -y
 
[root@zabbix-server ~]# yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI gcc
[root@zabbix-server ~]# useradd -M -s /sbin/nologin zabbix
[root@zabbix-server ~]# tar zxvf zabbix-3.2.7.tar.gz
[root@zabbix-server ~]# cd zabbix-3.2.7/
server zabbix-3.2.7]# ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl
[root@zabbix-server zabbix-3.2.7]# make
[root@zabbix-server zabbix-3.2.7]# make install
[root@zabbix-server zabbix-3.2.7]# ln -s /usr/local/zabbix/sbin/zabbix_* /usr/local/sbin/
root@zabbix-server zabbix-3.2.7]# cd /usr/local/zabbix/etc/
[root@zabbix-server etc]# ls
zabbix_agentd.conf zabbix_agentd.conf.d zabbix_server.conf zabbix_server.conf.d
[root@zabbix-server etc]# cp zabbix_server.conf zabbix_server.conf.back
[root@zabbix-server etc]# vim zabbix_server.conf
LogFile=/tmp/zabbix_server.log
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=123456
[root@zabbix-server ~]# /etc/init.d/mysqld start #啓動mysql服務&進入數據庫
mysql> create database zabbix charset=utf8;
mysql> grant all on zabbix.* to zabbix@localhost identified by '123456';
mysql> flush privileges;
[root@zabbix-server ~]# cd zabbix-3.2.7/database/mysql/
[root@zabbix-server mysql]# mysql -uzabbix -p123456 zabbix < schema.sql
[root@zabbix-server mysql]# mysql -uzabbix -p123456 zabbix < images.sql
[root@zabbix-server mysql]# mysql -uzabbix -p123456 zabbix < data.sql
[root@zabbix-server ~]# cp -a zabbix-3.2.7/frontends/php/* /var/www/html/ #將zabbix的php配置文件拷貝到網站根目錄&進行圖形化安裝
[root@zabbix-server ~]# ls /var/www/html/
更改PHP配置文件相關設置
[root@zabbix-server ~]# sed -i 's/\;always_populate_raw_post_data/always_populate_raw_post_data/g' /etc/php.ini
[root@zabbix-server ~]# sed -i '/max_execution_time/s/30/600/g;/max_input_time/s/60/600/g;/memory_limit/s/128M/256M/g;/post_max_size/s/8M/32M/g;/upload_max_filesize/s/2M/16M/g;s/\;date.timezone.*/date.timezone \=\Asia\/Shanghai/g' /etc/php.ini
重啓httpd,zabbix_server,mysqld(已啓動)
[root@zabbix-server ~]# cd zabbix-3.2.7/misc/init.d/tru64/
[root@zabbix-server tru64]# cp zabbix_* /etc/init.d/
[root@zabbix-server tru64]# chmod o+x /etc/init.d/zabbix_server
[root@zabbix-server tru64]# /etc/init.d/zabbix_server start
[root@zabbix-server ~]# /etc/init.d/httpd start
[root@zabbix-server ~]# netstat -anput | grep httpd
tcp 0 0 :::80 :::* LISTEN 10751/httpd
udp 0 0 192.168.20.209:39651 192.168.20.2:53 ESTABLISHED 10751/httpd
[root@zabbix-server tru64]# netstat -anput | grep zabbix
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 10679/zabbix_server
tcp 0 0 :::10051 :::* LISTEN 10679/zabbix_server

[root@zabbix-server ~]# vim /usr/local/zabbix/etc/zabbix_agentd.conf

LogFile=/tmp/zabbix_agentd.log
Server=192.168.20.209
ServerActive=192.168.20.209
Hostname =192.168.20.209
[root@zabbix-server etc]# /etc/init.d/zabbix_agentd start 便可!
上傳字體windows中文字體,是zabbix圖形監控能有識別亂碼

[root@zabbix-server fonts]# mv SIMKAI.TTF DejaVuSans.ttf

 

######################################################################################################################

zabbix-proxy分佈式的配置

Zabbix是一個分佈式監控系統,它能夠以一箇中心點、多個分節點的模式運行,使用Proxy能大大的下降Zabbix Server的壓力,Zabbix Proxy能夠運行在獨立的服務器上,

Zabbix agent 在windows上安裝部署

首先,咱們須要在zabbix-server端建立zabbix-proxy端的新數據庫

mysql> create database zabbix_proxy charset=utf8;
Query OK, 1 row affected (0.00 sec)

mysql> grant all on zabbix_proxy.* to zabbix@‘%’ identified by '123456';
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

[root@zabbix-server ~]# cd zabbix-3.2.7/database/mysql/

[root@zabbix-server mysql]# mysql -uzabbix -p123456 zabbix_proxy <schema.sql
[root@zabbix-server mysql]# mysql -uzabbix -p123456 zabbix_proxy <images.sql

接下來咱們在zabbix_proxy部署分佈式

[root@zabix-proxy ~]# yum  install -y mysql mysql-devel

[root@zabix-proxy ~]# yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBIc

[root@zabix-proxy ~]# useradd -M -s /sbin/nologin zabbix

 [root@zabix-proxy zabbix-3.2.7]# make install 

root@zabix-proxy ~]# tar zxvf zabbix-3.2.7.tar.gz

[root@zabix-proxy ~]# cd zabbix-3.2.7
[root@zabix-proxy zabbix-3.2.7]# ./configure --prefix=/usr/local/zabbix/ --enable-proxy --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl

[root@zabix-proxy zabbix-3.2.7]# make

[root@zabix-proxy zabbix-3.2.7]# make install 

root@zabix-proxy zabbix-3.2.7]# ln -s /usr/local/zabbix/sbin/zabbix_* /usr/local/sbin/

[root@zabix-proxy zabbix-3.2.7]# cd /usr/local/zabbix/etc/
[root@zabix-proxy etc]# cp zabbix_proxy.conf zabbix_proxy.conf.back
[root@zabix-proxy etc]# vim zabbix_proxy.conf

Server=192.168.20.209
Hostname=192.168.20.207
LogFile=/tmp/zabbix_proxy.log
DBHost=192.168.20.209
DBName=zabbix_proxy
DBUser=zabbix
DBPassword=123456
Timeout=4
LogSlowQueries=3000
DataSenderFrequency=30
HistoryCacheSize=128M
CacheSize=128M

[root@zabix-proxy etc]# mysql -h192.168.20.209 -uzabbix -p123456

 

[root@zabix-proxy ~]# /usr/local/zabbix/sbin/zabbix_proxy    #啓動proxy
[root@zabix-proxy ~]# netstat -anput | grep zabbix_proxy

zabbi-proxy啓動完成以後,接下來咱們須要在zabbi-server端上添加proxy

 

建立主機使用proxy端監控

PS:proxy監控某臺機器,須要將該機器的配置IP指向proxy端,不能再指向zabbi-server端,由於是由proxy監控並將監控數據上報給zabbix-server端

重啓agent端生效!

新建的主機監控須要添加監控模板

 

ps:若是server端未能正常獲取到監控圖形數據,在保證server端配置無誤的狀況下,咱們能夠檢查proxy和agent端,包括時間是否同步,IP地址指向是否正確!

 到此爲止zabbix-server經過proxy端監控agent成功!!!!!!!!!!!!!!!

########################################################

批量發現

 

一、  下載與解壓

參考:http://www.cnblogs.com/likehua/p/3968689.html

http://10.0.251.154/pub/zabbix/zabbix.zip 

解壓到D盤

conf目錄存放是agent配置文件 bin文件存放windows下32位和64位安裝程序

二、  配置與安裝

2.1 配置zabbix agent相關配置。

找到conf下的配置文件 zabbix_agentd.win.conf ,修改LogFile、Server、Hostname這三個參數。具體配置以下:

LogFile=c:\zabbix_agentd.log

Server=10.4.200.2

Hostname=主機地址。

ServerActive=10.4.200.2 #zabbix server地址

其中logfile是zabbix日誌存放地址。Server 是zabbix服務端ip地址。Hostname是本機機器名。

2.2 安裝agent

在windows控制檯下執行如下命令:

D:\zabbix\zabbix_agents_2.4.0.win\bin\win32\zabbix_agentd.exe  -c D:\zabbix\zabbix_agents_2.4.0.win\conf\zabbix_agentd.win.conf  -i

2.3 啓動agent客戶端

啓動命令以下:

D:\zabbix\zabbix_agents_2.4.0.win\bin\win32\zabbix_agentd.exe  -c D:\zabbix\zabbix_agents_2.4.0.win\conf\zabbix_agentd.win.conf -s

執行完成以後,須要 在終端輸入services.msc命令,查看zabbix_agentd是不是自啓動?

便可

相關文章
相關標籤/搜索