Zabbix分布式监控平台实践

电脑杂谈  发布时间:2019-08-25 17:08:02  来源:网络整理

zabbix开发语言_go语言web开发_ios开发是什么语言

本文内容

Zabbix分布式监控平台实践之 (0) 什么是Zabbix

参考资料

环境介绍

OS: Ubuntu 10.10 Server 64-bit

Servers:

zabbix-server:10.6.1.181

zabbix-client-1:10.6.1.182

Zabbix官方Wiki

1. 初识Zabbix

Zabbix是一个基于WEB界面的分布式开源监控平台,主要由2部分构成,Zabbix server与Zabbix agentzabbix开发语言,同时也支持Zabbix proxy。

我首次听说Zabbix,是因为看到一篇文章:Tired of Nagios and Cacti? Try Zabbix.

在此之前我只简单的用过 Cacti 和 Nagios,且一些同样做运维的哥们儿也都是用的这两款开源硬件。

因此,在听到这样一个标题之后,感觉很新奇就仔细的知道了一下,当时并没有去实践。人总是对将要熟悉的东西拥抱而厌恶陌生的东西。而如今,我们将要将Zabbix大量的应用到了线上环境。在日常的监控中,深切的感受到了Zabbix的高效便捷和优秀的扩充能力。

Zabbix的底层收集程序是用C语言编写的Server与Agent,而用户界面是借助php编写web,采用MySQL来储存数据。

整个Zabbix其实就是一个框架,其中内置了一些针对诸多OS的平台参数收集命令,可以直接读取,而其它的自定义监控参数,则可以借助自己来写一些便捷的Shell命令通过管道传递,或借助各种脚本甚至程序来释放。Zabbix只管把最终的返回值通过agent拿到,存储统计,绘图,根据定义的阀值进行报警等。

说到这里,其实所有的监控平台差不多都是这样的逻辑,所以真正有区别的地方是在最终用途的融合和易用性上。而Zabbix之所以好用,就是因为它整合的比较好,拿来以后才能用,agent安装简洁便利,server端配置,完善的用户界面,绘图,报警和扩充等都比较便捷。在做电信项目的之后,与电信的一款付费的商业硬件对比,丝毫不逊色,以至于电信的维护员工都被动找我来学习Zabbix的加装与配置方式,打算更换他们的监控平台。

1.2 功能对比

介绍到这里,我们不如用一个图片来简单的对比一下目前各个主流的监控平台。

1.3 界面展示

下面,是我一台生产环境的主图标,可以看见一些磁盘空间不足的报警(用黑色区块遮住了主机名等敏感信息)。

其中横排菜单中的Web,Latest data,Triggers,Graphs,Screens等则分别对应HTTPCheck类监控,快捷查看各个采集的最新数据,阈值,绘图以及图形报表。

1.4 接着,我们可以开始下面过程

好了,至此,我们算是对Zabbix有了一个初步的了解,那么接下来,就起初下面的流程。

本文内容

Zabbix分布式监控平台实践之 (1) 环境部署

参考资料

环境介绍

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

Enter new UNIX password: zabbix

Retype new UNIX password: zabbix

$ sudo adduser zabbix admin

$ sudo visudo

添加如下内容,给予Zabbix用户sudo权限

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

go语言web开发_ios开发是什么语言_zabbix开发语言

2.6 修改配置文件

$ cd /usr/local/etc

$ sudo vim zabbix_server.conf

DBUser=zabbix

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

Alias /zabbix /home/zabbix/public_html/

<Directory /home/zabbix/public_html>

AllowOverride FileInfo AuthConfig Limit Indexes

Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec

<Limit GET POST OPTIONS PROPFIND>

<LimitExcept GET POST OPTIONS PROPFIND>

2.11 配置PHP

$ sudo vi /etc/php5/apache2/php.ini

max_execution_time = 300

max_input_time= 600

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

AlertScriptsPath=/usr/local/etc/alert.d

$ sudo mkdir /usr/local/etc/alert.d

2.14 安装mailutils

$ sudo apt-get install sendemail mailutils

2.15 打开网站安装向导

地址:

账号:Admin

密码:zabbix

相关图标图片如下:

创建连接文件

$ vim /home/zabbix/public_html/conf/zabbix.conf.php

// Zabbix GUI configuration file

// SCHEMA is relevant only for IBM_DB2 database

$IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG;

接着,就可以登陆到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

go语言web开发_ios开发是什么语言_zabbix开发语言

Enter new UNIX password: zabbix

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


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/ruanjian/article-120555-1.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...