Chinaunix首页 | 论坛 | 博客
  • 博客访问: 929936
  • 博文数量: 210
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 2070
  • 用 户 组: 普通用户
  • 注册时间: 2014-11-19 21:54
文章分类

全部博文(210)

文章存档

2020年(2)

2019年(18)

2018年(27)

2017年(5)

2016年(53)

2015年(88)

2014年(17)

分类: 架构设计与优化

2015-09-06 11:07:07

Zabbix 2.4 for RHEL6 or Centos6:  


参考: />

1. zabbix的简单介绍

Zabbix 通过 C/S 模式采集数据,通过 B/S 模式在 web 端展示和配置。

 被监控端:主机通过安装 agent 方式采集数据,网络设备通过 SNMP 方式采集数据

 Server :通过收集 SNMP agent 发送的数据,写入数据库(MySQLORACLE 等) ,再通过 php+apache web 前端展示。

Zabbix 运行条件:

 ServerZabbix Server 需运行在 LAMPLinux+Apache+Mysql+PHP)环境下(或者LNMP ,对硬件要求低

 Agent:目前已有的 agent 基本支持市面常见的 OS,包含 LinuxHPUXSolarisSunwindows

 SNMP:支持各类常见的网络设备

监控过程逻辑如图示:

2. zabbix的功能

具备常见的商业监控软件所具备的功能(主机的性能监控、网络设备性能监控、数据库性能监控、FTP 等通用协议监控、多种告警方式、详细的报表图表绘制)
     支持自动发现网络设备和服务器(可以通过配置自动发现服务器规则来实现)支持自动发现(low discovery)key 实现动态监控项的批量监控(需写脚本)
     支持分布式,能集中展示、管理分布式的监控点扩展性强,server 提供通用接口(api 功能) ,可以自己开发完善各类监控(根据相关接口编写程序实现)
     编写插件容易,可以自定义监控项,报警级别的设置。
数据收集
     可用和性能检测
     支持 snmp(包括 trapping and polling),IPMI,JMX,SSH,TELNET
     自定义的检测
     自定义收集数据的频率
     服务器/代理和客户端模式
灵活的触发器
     您可以定义非常灵活的问题阈值,称为触发器,从后端数据库的参考值通知可以使用宏变量有用的变量自动操作包括远程命令
实时的绘图功能
     监控项实时的将数据绘制在图形上面
WEB 监控能力
     ZABBIX 可以模拟鼠标点击了一个网站,并检查返回值和响应时间
Api 功能
     应用 api 功能,可以方便的和其他系统结合,包括手机客户端的使用。
更多功能请查看:

3.zabbixrpm方式搭建

3.1.配置yum源,并安装相关软件
# rpm -ivh /> 安装lamp环境: 
# yum install -y httpd php php-mysql mysql-server 
安装zabbix所需的软件包
# yum install zabbix-server-mysql zabbix-web-mysql
安装一个agent

# yum install zabbix-agent

3.2.配置Mysql数据库

# service mysqld start

# mysql -u root -p

mysql> create database zabbix character set utf8 collate utf8_bin;

mysql> grant all privileges on zabbix.* to zabbix@192.168.40.140 identified by 'westos';  # 这里如果是远程连接建议设置成ip

mysql> quit;

# cd  /usr/share/doc/zabbix-server-mysql-2.4.6/create

# mysql -uzabbix -pwestos zabbix < schema.sql

## stop here if you are creating database for Zabbix proxy ##

# mysql -uzabbix -pwestos zabbix < images.sql

# mysql -uzabbix -pwestos zabbix < data.sql

3.3. 配置zabbix server

# vi /etc/zabbix/zabbix_server.conf
DBHost=192.168.40.140
DBName=zabbix
DBUser=zabbix
DBPassword=westos

3.4.配置zabbixphp模块的相关参数

# vim  /etc/httpd/conf.d/zabbix.conf

点击(此处)折叠或打开

  1. php_value max_execution_time 300
  2. php_value memory_limit 128M
  3. php_value post_max_size 16M
  4. php_value upload_max_filesize 2M
  5. php_value max_input_time 300
  6. php_value date.timezone Asia/Shanghai
3.5.启动zabbix serverzabbix agenthttpd

# service httpd start

# service zabbix-server start

# service zabbix-agent start

# chkconfig httpd on

# chkconfig mysqld on

3.6.zabbix的防火墙设置

# vim /etc/sysconfig/iptables

-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT

-A INPUT -p tcp -m state --state NEW -m tcp --dport 10051 -j ACCEPT

-A OUTPUT -p tcp -m state --state NEW -m tcp --dport 10050 -j ACCEPT

-A INPUT -p tcp -m state --state NEW -m tcp --dport 10050 -j ACCEPT

# /etc/init.d/iptables restart

3.7.Selinux的设置

# chcon -R -t httpd_sys_content_rw_t /usr/share/zabbix/conf

# setsebool httpd_can_network_connect=true

# semanage port -a -t http_port_t -p tcp 10051

如果semanage命令没有,先安装下面这个软件包

# yum install policycoreutils-python –y

如果对防火墙和Selinux不太了解,建议selinux and iptables disabled

3.8.登录web端进行设置:192.168.40.140/zabbix



配置完成后所有的前端配置都会写到这个文件里面:

# cat /etc/zabbix/web/zabbix.conf.php

点击(此处)折叠或打开

  1. <?php
  2. // Zabbix GUI configuration file.
  3. global $DB;
  4. $DB['TYPE'] = 'MYSQL';
  5. $DB['SERVER'] = '192.168.40.140';
  6. $DB['PORT'] = '3306';
  7. $DB['DATABASE'] = 'zabbix';
  8. $DB['USER'] = 'zabbix';
  9. $DB['PASSWORD'] = 'westos';
  10. // Schema name. Used for IBM DB2 and PostgreSQL.
  11. $DB['SCHEMA'] = '';
  12. $ZBX_SERVER = '192.168.40.140';
  13. $ZBX_SERVER_PORT = '10051';
  14. $ZBX_SERVER_NAME = 'hy';
  15. $IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG;
  16. ?>

Username:Admin 

Password:zabbix

3.9.添加一台agent(142)主机

1.安装yum源,并安装相关软件
# rpm -ivh 

在被监控端安装软件包

# yum install zabbix zabbix-agent –y

2.配置:

# egrep -v "(^#|^$)" /etc/zabbix/zabbix_agentd.conf

 PidFile=/var/run/zabbix/zabbix_agentd.pid

 LogFile=/var/log/zabbix/zabbix_agentd.log

 LogFileSize=0

 Server=127.0.0.1,192.168.40.140            #被动模式,允许那台服务器可以连接Agent

 ServerActive=192.168.40.140:10051          #主动模式,向那台服务器传送数据

 Hostname=Zabbix server

 Include=/etc/zabbix/zabbix_agentd.d/

 UnsafeUserParameters=1

# /etc/init.d/zabbix-agent start

# chkconfig zabbix-agent on

3.防火墙设置

-A INPUT -m state --state NEW -m tcp -p tcp --dport 10050 -j ACCEPT

-A OUTPUT -m state --state NEW -m tcp -p tcp --dport 10051 -j ACCEPT

4.SNMP监控方式的配置

# yum install net-snmp –y

# vim /etc/snmp/snmpd.conf

com2sec mynetwork 192.168.40.140      public_monitor

com2sec mynetwork 127.0.0.1      public

group MyROGroup  v2c        mynetwork

access MyROGroup ""      any       noauth    prefix      all    none    none

# chkconfig snmpd on

# /etc/init.d/snmpd start

在web端进行添加agent

阅读(1535) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~