首页 > 代码库 > 自动化运帷之分布式监控-zabbix 安装

自动化运帷之分布式监控-zabbix 安装

zabbix

关于zabbix介绍可能就不用再说了,到处都是文章,这里之前使用的时Nagios,这里开始尝试接触zabbix,因为几个重要原则选择作为未来可能替换掉线上的监控系统,所以这边理由如下网友的itnihao的文字中摘抄了如下:

1、分布式监控,天生具有的功能,适合于构建分布式监控系统,具有node,proxy2种分布式模式 
2、自动化功能,自动发现,自动注册主机,自动添加模板,自动添加分组,自动化运维工具搭配,puppet+zabbix,或者saltstack+zabbix,那是如鱼得水
3、自定义监控比较方便,自定义监控项非常简单,支持变量,支持low level discovery
4、提供api功能,二次开发方便,你可以选用zabbix来进行二次深度开发,结合cmdb资产管理系统,业务管理系统,从而使你的自动化运维系统达到新的高度。
5、all in one,报警,图形全部整合再一起,不用整合一堆插件,正是我不太喜欢Nagios的缘故,往往在各个插件的配置中损失了不少时间
6、其他理由在使用的过程中慢慢发掘吧。。。

安装步骤

这东西官网的文档早就是现成的了,这里加上自己的话整理如下

1、安装

这东西官网的文档早就是现成的了,这里加上自己的话整理如下

组件描述:

zabbix server:负责接收agent发送的报告信息的核心组件,所有配置、统计数据以及操作数据均有其组织进行 
database storage:专门用于存储所有的配置信息,以及zabbix收集的数据
web interface:zabbix的GUI接口,通常与server运行在同一台主机上
proxy:可选组件,常用于分布监控环境中,代理server收集部分被监控端的监控数据并统一发往server端
agent:部署在被监控主机上,负责收集本地数据并发往server端或者proxy端

术语:

主机(host):要监控的网络设备,可以由IP或者DNS名称指定 
主机组(host group):主机的逻辑容器,可以包含主机和模板,但同一个组内的主机和模板不能互相链接
监控项(item):一个特定指标的相关数据,这些数据来自于被监控对象,每个item都由“key”进行标识
触发器(trigger):一个表达式,用于评估某监控对象的某特定item内所接收到的数据是否在合理范围内,即阀值
事件(event):即发生的一个值得关注的事情,例如触发器的状态转变,新的agent或重新上线的agent的自动注册等
动作(action):指对于特定事件事先定义的处理方法,通过包含操作(如发送通知)和条件(何时执行操作)
报警升级(escalation):发送警报或者执行远程命令的自定义方法,如每隔5分钟发送一次报警,共发送5次等。
媒介(media):发送手段或者渠道,如email,jabber或者SMS等
通知(notification):通过选定的媒介向用户发送的有关某事件的信息

各组件依赖

zabbix.x86_64 //核心包,server端或者agent端都需要 
zabbix-agent.x86_64 //agent端包
zabbix-java-gateway.x86_64
zabbix-proxy.x86_64
zabbix-proxy-mysql.x86_64
zabbix-proxy-pgsql.x86_64
zabbix-proxy-sqlite3.x86_64
zabbix-sender.x86_64 //agent端主动发送报文至server端
zabbix-server.x86_64 //server端
zabbix-server-mysql.x86_64 //server端连接mysql工具
zabbix-server-pgsql.x86_64 //server端链接pgsql工具
zabbix-web.noarch //web界面
zabbix-web-japanese.noarch
zabbix-web-mysql.noarch //web端连接mysql工具
zabbix-web-pgsql.noarch //web端链接pgsql工具

所以

server需要安装:zabbix、zabbix-server、zabbix-server-mysql,zabbix-get 
agent需要安装:zabbix、zabbix-agent、zabbix-sender
web端:zabbix-web、zabbix-web-mysql
 

2、zabbix server installaction

step1:系统环境
Distribution : CentOS 6.5 minimal 
zabbix version : 2.2
Init system : sysvinit
Database : MySQL Additional
Notes : In order to get a proper Ruby setup we build it from source
step2:before installing
1. 关闭selinx 2. 时间同步 
step3:安装步骤包括如下内容
-Install the base operating system (CentOS 6.5 Minimal) and Packages / Dependencies 
-Database
-zabbix-server
-zabbix-agent

step4:安装zabbix提供的yum源

rpm -ivh http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-release-2.2-1.el6.noarch.rpm 

step5:zabbix包

yum install -y zabbix-server-mysql zabbix-web-mysql zabbix zabbix-server zabbix-web zabbix-get  

step6:mysql中创建zabbix库和用户.

/etc/init.d/mysqld start 
mysql_secure_installation
mysql -uroot
mysql> create database zabbix character set utf8;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by ‘zabbix‘;
mysql> exit

step7:导入初始schema和data

cd /usr/share/doc/zabbix-server-mysql-2.2.2/create 
mysql -uroot zabbix < schema.sql
mysql -uroot zabbix < images.sql
mysql -uroot zabbix < data.sql

step8:启动zabbix

#Edit database configuration in zabbix_server.conf 
#vi /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix

#Start Zabbix server process.
/etc/init.d/zabbix-server start
chkconfig zabbix-server on

#zabbix server监听端口10051

step9:编辑zabbix前段的php页面展示参数

#Apache configuration file for Zabbix frontend is located in /etc/httpd/conf.d/zabbix.conf. Some PHP settings are alreadyconfigured. 
#vim /etc/httpd/conf.d/zabbix.conf
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

#It‘s necessary to uncomment the “date.timezone” setting and set the right timezone for you. After changing the configuration file restart the apache web server.
php_value date.timezone Asia/Shanghai

具体查看时区的话可以查看这个地址 http://www.php.net/manual/en/timezones.asia.php

/etc/init.d/httpd restart 

step10:浏览器中启动安装

Zabbix frontend is available at http://zabbix-frontend-hostname/zabbix in the browser. 
Default username/password is Admin/zabbix.

3、zabbix agent安装

step1:install zabbix official repository

rpm -ivh http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-release-2.2-1.el6.noarch.rpm 

step2:install zabbix packages

yum install -y zabbix-agent zabbix zabbix-sender 

step3:add monitor server ip

sed -i ‘s#^\(Server=\).*#\1server ip#‘ /etc/zabbix/zabbix_agentd.conf 
sed -i ‘s#^\(Hostname=\).*#\1server name#‘ /etc/zabbix/zabbix_agentd.conf

/etc/init.d/zabbix-agent start
#zabbix agent监听端口10050