zabbix是一个分布式监视,管理系统,基于server-clinet架构,可用于监视各种网络服务,服务器和网络机器等状态.

server端基于C语言,web管理端Frontend则是基于PHPA制作的,在clinet端如UNIX,windows中安装zabbix agent之后,可监控CPU,负载,网络使用情况,硬盘容量等各种状态.

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级开源解决方案,Zabbix能够监视各种网络参数,保证服务器系统安全运行;并提供灵活的通知机制让系统管理员快速的定位/解决各种问题;

zabbix由两部分组成,zabbix-server与可选组件zabbix agent。zabbix server 可以通过SNMP,zabbix agent,ping端口监视监控远程主机,数据收集等功能;

Zabbix server可以单独监视远程服务器的服务状态;同事也可以与zabbix agent配合,可以轮询zabbix agent主动接收监视数据(trapping方式),同时还可以被动接收zabbix agentd 发送数据(trapping方式).

Zabbix主要特点:

安装与配置简单,学习成本低;支持多语言;免费开源;自动发现服务器与网络设备;

分布式监视以及WEB集中管理功能;可以无agent监视;用户安全认证和柔软的授权方式;

通过WEB界面设置或查看监视结果;email等通知功能;

Zabbix主要功能:

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成功!!!!!!!!!!!!!!!

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

批量发现

1、  下载与解压

参考: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、  配置与安装

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是否是自启动?

即可

zabbix分布式监控的部署与win被控端的更多相关文章

  1. zabbix分布式监控的部署

    zabbix是一个分布式监视,管理系统,基于server-clinet架构,可用于监视各种网络服务,服务器和网络机器等状态. server端基于C语言,web管理端Frontend则是基于PHPA制作 ...

  2. zabbix分布式监控部署--技术流ken

    前言 zabbix proxy可以代替zabbix server检索客户端的数据,然后把数据汇报给zabbix server,并且在一定程度上分担了zabbix server的压力.zabbix pr ...

  3. Zabbix分布式监控系统实践

    https://www.zabbix.com/wiki/howto/install/Ubuntu/ubuntuinstall 环境介绍OS: Ubuntu 10.10 Server 64-bitSer ...

  4. LNMP+zabbix分布式监控搭建及版本升级

    LNMP+zabbix分布式监控搭建需要组件:gcc gcc-c++ openssl* pcre pcre-devel gd gd-devel libjpeg-devel libpng-devel l ...

  5. 06 Zabbix分布式监控和主被动模式

    06 Zabbix分布式监控和主被动模式 zabbix proxy设置 使用zabbix代理的好处 监控拥有不可靠的远程区域 当监控项目数以万计的时候使用代理分担zabbix-proxy压力 简化分布 ...

  6. Zabbix分布式监控

    上一篇:Zabbix的API的使用 zabbix分布式监控 新建一台主机 安装zabbix proxy和数据库 yum -y install mariadb-server zabbix-proxy-m ...

  7. zabbix 分布式监控及优化

    1..zabbix分布式监控,模拟多机房实现监控? 1.有多机房时,需要用到proxy 1.网络不通 2.网络延迟 2.当监控的主机较多时,也可以用proxy来缓解压力 1.安装proxy [root ...

  8. 第6章Zabbix分布式监控

    Zabbix是一个分布式的监控系统.分布式监控适合跨机房.跨地域的网络监控.从多个Proxy收集数据,而每个Proxy可以采集多个设备的数据,从而轻松地构建分布式监控系统. ZabbixProxy可以 ...

  9. zabbix分布式监控服务 安装与配置

    zabbix安装与配置   一.什么是zabbix及优缺点(对比cacti和nagios) Zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统管理员快速定位/解决存 ...

随机推荐

  1. Eclipse中避免修改后台代码后手动install和重启

      之前每次修改maven多模块项目后都得重新执行mvn install ,install完还得重启jetty/tomcat服务器,非常浪费   时间,其实修改代码后可以不用执行install,也不用 ...

  2. ios NSTimer的强引用问题

    在一个controller中,使用 NSURLSessionDataTask *dataTask = [[NSURLSession sharedSession] dataTaskWithRequest ...

  3. Float与二进制之间的转化(Java实现)

    在线转化:http://www.binaryconvert.com import java.text.DecimalFormat; public class SinglePrecision { //浮 ...

  4. LuoGu P1939 【模板】矩阵加速(数列)

    板子传送门 矩阵快速幂学完当然要去搞一搞矩阵加速啦 (矩阵加速相对于矩阵快速幂来说就是多了一个构造矩阵的过程) 关于怎样来构造矩阵,这位大佬讲的很好呢 构造出矩阵之后,我们再去用矩阵快速幂乘出来,取[ ...

  5. Confluence 6 附件存储选项

    在早期的 Confluence 版本中,我们允许存储附件到 WebDav 或者 Confluence 数据库中.针对新的 Confluence 安装,我们不再支持这 2 种存储了. 本地文件系统 在默 ...

  6. selenium怎么操作web页面常见的元素

    总结一下selenium怎么操作web页面常见的元素. 主要有: 上传 alter dialog prompt dialog confirm dialog select list radio box ...

  7. CF 1051F

    题意:给定一张n个点,m条边的无向联通图,其中m-n<=20,共q次询问,每次询问求给定两点u,v间的最短路长度 第一眼看见这题的时候,以为有什么神奇的全图最短路算法,满心欢喜的去翻了题解,发现 ...

  8. springboot linux启动方式

    手动启动 java -Xms128m -Xmx256m -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8081,suspend=n -j ...

  9. Jmeter 自动化测试报告扩展

    首先了解下生成测试报告的过程,我们看到的测试报告是由.jtl格式转换为.html,html报告的样式由extras目录下xsl文件决定.优化测试报告需要分为两部分内容,首先我们要优化输出的测试内容,其 ...

  10. Mysql 查看连接数,状态 最大并发数

    show status like '%max_connections%'; ##mysql最大连接数set global max_connections=1000 ##重新设置show variabl ...