Zabbix分布式监控系统实践
https://www.zabbix.com/wiki/howto/install/Ubuntu/ubuntuinstall
环境介绍
OS: Ubuntu 10.10 Server 64-bit
Servers:
zabbix-server:10.6.1.181
zabbix-client-1:10.6.1.182
1. 环境部署
前面,我们简单介绍了一下Zabbix,那么在本章,我们就来把Zabbix的环境部署起来,然后再在下一张详细的讲解其使用方法。
由于Zabbix采用的是分布式架构,因此我们采用两台服务器,一台做Server,另外一台做Agent,来搭建一个最小的环境。
2. 安装步骤
2.1 安装系统依赖以及mysql-server与php
$ sudo apt-get install build-essential mysql-server libmysqlclient15-dev php5 php5-gd php5-mysql snmp libsnmp-dev snmpd libcurl4-openssl-dev fping apache2
在弹出的界面中配置MySQL的Root密码,比如zabbixadmin
MySQL password: zabbixadmin
2.2 新建用户zabbix
$ sudo adduser zabbix
1 |
Enter new UNIX password: zabbix |
2 |
Retype new UNIX password: zabbix |
$ sudo adduser zabbix admin
$ sudo visudo
添加如下内容,给予Zabbix用户sudo权限
1 |
zabbix ALL=(ALL) NOPASSWD:ALL |
2.3 下载源码包
$ sudo -i
# su - zabbix
$ wget "http://downloads.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.0.4/zabbix-2.0.4.tar.gz"
$ tar xzvf zabbix-2.0.4.tar.gz
2.4 初始化数据库
$ mysql -uroot -pzabbixadmin -e "create database zabbix;"
$ mysql -uroot -pzabbixadmin -e "grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';"
$ mysql -uzabbix -pzabbix -D zabbix < zabbix-2.0.4/database/mysql/schema.sql
$ mysql -uzabbix -pzabbix -D zabbix < zabbix-2.0.4/database/mysql/images.sql
$ mysql -uzabbix -pzabbix -D zabbix < zabbix-2.0.4/database/mysql/data.sql
2.5 编译安装
$ cd zabbix-2.0.4/
$ ./configure --prefix=/usr/local --with-mysql --with-net-snmp --with-libcurl --enable-server --enable-agent
$ make
$ sudo make install
2.6 修改数据库配置文件
$ cd /usr/local/etc
$ sudo vim zabbix_server.conf
1 |
DBUser=zabbix |
2 |
DBPassword=zabbix |
2.7 创建服务管理脚本
$ cd
$ sudo cp zabbix-2.0.4/misc/init.d/debian/zabbix-* /etc/init.d/
$ sudo chmod 755 /etc/init.d/zabbix-*
$ sudo update-rc.d zabbix-server defaults
$ sudo update-rc.d zabbix-agent defaults
2.8 启动服务
$ sudo /etc/init.d/zabbix-server start
$ sudo /etc/init.d/zabbix-agent start
$ ps aux | grep zabbix
2.9 复制网站代码文件
$ cd
$ mkdir /home/zabbix/public_html
$ cp -R zabbix-2.0.4/frontends/php/* /home/zabbix/public_html/
2.10 配置虚拟主机
$ sudo vim /etc/apache2/sites-enabled/000-default
01 |
Alias /zabbix /home/zabbix/public_html/ |
02 |
<Directory /home/zabbix/public_html> |
03 |
AllowOverride FileInfo AuthConfig Limit Indexes |
04 |
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec |
05 |
<Limit GET POST OPTIONS PROPFIND> |
06 |
Order allow,deny |
07 |
Allow from all |
08 |
</Limit> |
09 |
<LimitExcept GET POST OPTIONS PROPFIND> |
10 |
Order deny,allow |
11 |
Deny from all |
12 |
</LimitExcept> |
13 |
</Directory> |
2.11 配置PHP
$ sudo vi /etc/php5/apache2/php.ini
1 |
max_execution_time = 300 |
2 |
max_input_time= 600 |
3 |
post_max_size= 16M |
4 |
date.timezone = Asia/Shanghai |
2.12 重启Apache
$ sudo /etc/init.d/apache2 restart
2.13 添加alert.d目录
$ sudo vim /usr/local/etc/zabbix_server.conf
1 |
AlertScriptsPath=/usr/local/etc/alert.d |
$ sudo mkdir /usr/local/etc/alert.d
2.14 安装mailutils
$ sudo apt-get install sendemail mailutils
2.15 打开网页安装向导
地址:http://10.6.1.181/zabbix
账号:Admin
密码:zabbix
相关界面截图如下:





创建数据库连接文件
$ vim /home/zabbix/public_html/conf/zabbix.conf.php
01 |
<?php |
02 |
// Zabbix GUI configuration file |
03 |
global $DB; |
04 |
05 |
$DB['TYPE'] = 'MYSQL'; |
06 |
$DB['SERVER'] = 'localhost'; |
07 |
$DB['PORT'] = '0'; |
08 |
$DB['DATABASE'] = 'zabbix'; |
09 |
$DB['USER'] = 'zabbix'; |
10 |
$DB['PASSWORD'] = 'zabbix'; |
11 |
12 |
// SCHEMA is relevant only for IBM_DB2 database |
13 |
$DB['SCHEMA'] = ''; |
14 |
15 |
$ZBX_SERVER = 'localhost'; |
16 |
$ZBX_SERVER_PORT = '10051'; |
17 |
$ZBX_SERVER_NAME = ''; |
18 |
19 |
$IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG; |
20 |
?> |

接着,就可以登录到Zabbix系统的主界面


至此,Zabbix的Server端已经部署完成,接下来我们在zabbix-client-1上部署agent。
3. 安装部署agent
首先,登录zabbix-client-1,以下操作均在zabbix-client-1上完成。
3.1 安装系统依赖以及mysql-server与php
$ sudo apt-get install build-essential snmp libsnmp-dev snmpd libcurl4-openssl-dev fping
3.2 新建用户zabbix
$ sudo adduser zabbix
1 |
Enter new UNIX password: zabbix |
2 |
Retype new UNIX password: zabbix |
$ sudo adduser zabbix admin
3.3 下载源码包
$ sudo -i
# su - zabbix
$ wget "http://downloads.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.0.4/zabbix-2.0.4.tar.gz"
$ tar xzvf zabbix-2.0.4.tar.gz
3.4 编译安装
$ cd zabbix-2.0.4/
$ ./configure --prefix=/usr/local --with-net-snmp--with-libcurl --enable-agent
$ make
$ sudo make install
3.5 创建服务管理脚本
$ cd
$ sudo cp zabbix-2.0.4/misc/init.d/debian/zabbix-agent /etc/init.d/
$ sudo chmod 755 /etc/init.d/zabbix-agent
$ sudo update-rc.d zabbix-agent defaults
2.6 启动服务
$ sudo /etc/init.d/zabbix-agent start
$ ps aux | grep zabbix
4. 接着,我们可以开始以下过程
Zabbix分布式监控系统实践之自定义配置 http://www.linuxidc.com/Linux/2013-06/85758p3.htm

Zabbix分布式监控系统实践的更多相关文章
- Zabbix分布式监控系统实践 自定义配置
https://www.zabbix.com/wiki/templates/start 环境介绍OS: Ubuntu 10.10 Server 64-bitServers:zabbix-server: ...
- 分布式监控系统Zabbix-3.0.3-完整安装记录(0)
一.Linux下开源监控系统简单介绍1)cacti:存储数据能力强,报警性能差2)nagios:报警性能差,存储数据仅有简单的一段可以判断是否在合理范围内的数据长度,储存在内存中.比如,连续采样数据存 ...
- 分布式监控系统之Zabbix基础
1.为什么要使用监控系统? 我们知道一个系统不管怎么讲它都会出故障,我们为了保证线上业务的最大化的可用性,通常我们要给关键业务做高可用:做高可用的目的是为了让故障发生时,能够有一个备用的解决方案,将故 ...
- 分布式监控系统之Zabbix基础使用
前文我们了解了分布式监控系统zabbix的相关组件的作用和zabbix的部署,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13997582.html:今天我们 ...
- 第6章Zabbix分布式监控
Zabbix是一个分布式的监控系统.分布式监控适合跨机房.跨地域的网络监控.从多个Proxy收集数据,而每个Proxy可以采集多个设备的数据,从而轻松地构建分布式监控系统. ZabbixProxy可以 ...
- 分布式监控系统Zabbix-3.0.3-完整安装记录(7)-使用percona监控MySQL
前面已经介绍了分布式监控系统Zabbix-3.0.3-完整安装记录(2)-添加mysql监控,但是没有提供可以直接使用的Key,太过简陋,监控效果不佳.要想更加仔细的监控Mysql,业内同学们都会选择 ...
- LNMP+zabbix分布式监控搭建及版本升级
LNMP+zabbix分布式监控搭建需要组件:gcc gcc-c++ openssl* pcre pcre-devel gd gd-devel libjpeg-devel libpng-devel l ...
- Python之路,Day20 - 分布式监控系统开发
Python之路,Day20 - 分布式监控系统开发 本节内容 为什么要做监控? 常用监控系统设计讨论 监控系统架构设计 监控表结构设计 为什么要做监控? –熟悉IT监控系统的设计原理 –开发一个 ...
- 分布式监控系统Zabbix3.2给异常添加邮件报警
在前一篇 分布式监控系统Zabbix3.2跳坑指南 中已安装好服务端和客户端,此处客户端是被监控的服务器,可能有上百台服务器.监控的目的一个是可以查看历史状态,可以对比零晨和工作区间数据的对比,以便后 ...
随机推荐
- MyISAM、InnoDB、Memory这3个常用引擎支持的索引类型
表格对比了MyISAM.InnoDB.Memory这3个常用引擎支持的索引类型: 索引 MyISAM引擎 InnoDB引擎 Memory引擎 B-Tree索引 支持 支持 支持 HASH索引 不支持 ...
- C/C++判断字符串是否包含某个子字符串
C风格 #include <iostream> #include <string> #include <cstring> using namespace std; ...
- C# WPF 4.5 RibbonWindow
WPF RibbonWindow , Z .Net4.5里有自带的RibbonWindow,需要引用 System.Windows.Controls.Ribbon.dll 题外话:自带的Ribbon ...
- PHP密码和token
密码 直接md5和sha1不安全!!! crypt()和hash_equals(): http://php.net/manual/zh/function.crypt.php <?php // c ...
- 阶段1 语言基础+高级_1-3-Java语言高级_04-集合_06 Set集合_5_HashSet存储自定义类型元素
想存储的元素不重复,就必须重写hashCode和equals这两个方法 新建一个Person类.添加姓名和年龄这两个成员变量..get和set,有参和无参构造. 重点是重写了toString的方法 自 ...
- redis集群安装多端口多实例部署
目标(本文达成的结果,配对关系可能会变): 先在131上进行操作 1.下载redis http://download.redis.io/releases/redis-5.0.2.tar.gz 2.解压 ...
- js:获取单选组radio中的被选择的数据
现在有一name为sex的单选组,代表的是选择性别,要求获取radio中被选择的选项值 <div class="sexDiv"> 用户性别: <input cla ...
- SpringBoot 创建 console程序
1.在pom中添加依赖 <parent> <groupId>org.springframework.boot</groupId> <artifactId> ...
- java Map与Bean相互转化
import java.beans.BeanInfo; import java.beans.IntrospectionException; import java.beans.Introspector ...
- SpringCloud Erueka配置异常
com.netflix.discovery.shared.transport.TransportException: Cannot execute request on any known serve ...