集中化监控工具zabbix的安装配置(centos7)

一、zabbix是什么

Zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux, Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X等平台上。
zabbix agent需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU等信息的收集。zabbix agent可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD, OS X, Tru64/OSF1, Windows NT4.0, Windows (2000/2003/XP/Vista)等系统之上。
zabbix server可以单独监视远程服务器的服务状态;同时也可以与zabbix agent配合,可以轮询zabbix agent主动接收监视数据(agent方式),同时还可被动接收zabbix agent发送的数据(trapping方式)。另外zabbix server还支持SNMP (v1,v2),可以与SNMP软件(例如:net-snmp)等配合使用。
相比较Cacti,Zabbix具有不亚于Cacti的图形表现效果,同时还支持监控报警功能。并且内置的监控模板比Cacti要丰富的多得多。
相比较Nagios,Zabbix安装配置要简单的多,利于实现。同时学习成本也要低得多。在监控性能方面也不亚于Nagios。因此,目前越来越多的公司开始使用Zabbix作为监控的最佳解决方案。
++++++++++++++++++++++++++++++++++++++++++++++
二、 zabbix的优缺点
**优点**
* 开源,无软件成本投入
* Server 对设备性能要求低
* 支持设备多,自带多种监控模板
* 支持分布式集中管理,有自动发现功能,可以实现自动化监控
* 开放式接口,扩展性强,插件编写容易
* 当监控的item 比较多服务器队列比较大时可以采用被动状态,被监控客户端主动从server 端去下载需要监控的item 然后取数据上传到server 端。这种方式对服务器的负载比较小。

**缺点**
* 需在被监控主机上安装agent,所有数据都存在数据库里,产生的数据据很大,瓶颈主要在数据库。
+++++++++++++++++++++++++++++++++
三、zabbix基于agent采集数据的方式
1、被动模式
Zabbix服务器端按照监控配置项目制定的时间间隔,定期连接到agent上的守护进程,获取agent组件采集到的数据。
2、主动模式
Agent端从server端获取采集数据的监控项目列表及其配置信息。而agent端确定所需要的连接zabbix服务器代理的方法是,从agent的配置文件中读取serveractive该配置项的内容。读取频率RefreshActiveChecks指定,默认120s。
主动模式的好处:当被监控设备代理组件所封装的监控项目种类不能满足需要的时候,完全可以使用我们擅长的任何一种高级语言来开发小的工具或者脚本模拟一个组件,从而实现个性化需求。然而通过小工具或者脚本模拟组件时,一般来说使用主动模式会比较方便。原因就是:使用主动模式时,这类小工具不需要以守护进程的方式运行,更不需要在被监控设备上开额外的服务端口,只需这类小工具或脚本能定时将所采集到的数据发送至zabbix服务器或其代理指定的端口上。

++++++++++++++++++++++++++++++++++++++

四、zabbix基本组件的安装配置
zabbix的安装包括四个部分:server服务端、agent数据收集端、web配置管理端、数据保存数据库端。
架构如下:
| 设备      | 应用端      |
| ------- | -------- |
| servera | agent    |
| serverb | server   |
| serverc | web      |
| serverd | database |
先保证我们所有服务器的时区都是Asia/shanghai,分别在每台服务器上执行以下命令
[[email protected] ~]# timedatectl set-timezone Asia/Shanghai

1、Server端的安装
软件安装,这里server端通过源码编译的方式,将服务主目录放置/usr/local/zabbix目录下:

[[email protected] ~]# setenforce 0
[[email protected] zabbix]# cp zabbix-2.4.6.tar.gz /tmp
[[email protected] zabbix]# cd /tmp
[[email protected] tmp]# tar -xf zabbix-2.4.6.tar.gz 	 # 这里采用源码编译的方式来安装
[[email protected] tmp]# yum install gcc gcc-c++ mariadb-devel libxml2-devel net-snmp-devel libcurl-devel -y
# 安装源码编译需要的依赖包
[[email protected] tmp]# cd zabbix-2.4.6/
[[email protected]
 zabbix-2.4.6]#  ./configure --prefix=/usr/local/zabbix --enable-server 
--with-mysql --with-net-snmp --with-libcurl --with-libxml2 
--enable-agent --enable-ipv6
[[email protected] zabbix-2.4.6]# make
[[email protected] zabbix-2.4.6]# make install
[[email protected] zabbix-2.4.6]# useradd zabbix        # 添加zabbix用户用以服务zabbix server端的正常运行

服务端的数据库连接配置:
[[email protected] zabbix-2.4.6]# cd /usr/local/zabbix/
[[email protected] zabbix]# ls
bin  etc  lib  sbin  share
[[email protected] zabbix]# cd etc
[[email protected] etc]# vim zabbix_server.conf 			# 该文件为服务端的主配置文件,变更如下参数
DBHost=172.25.0.13
DBName=zabbix
DBUser=zabbix
DBPassword=123456

2、Database端的安装
安装mariadb-server软件:

[[email protected] ~]# setenforce 0
[[email protected] ~]# yum -y install mariadb-server
[[email protected] ~]# systemctl start mariadb
登录上serverb这台服务器,将sql语句远程复制到数据库服务器上:
[[email protected] database]# cd /tmp/zabbix-2.4.6/database/mysql/   # 注意:需要导入的数据在server端。
[[email protected] mysql]# scp * 172.25.0.13:/tmp
mysql服务器将对应的sql语句进行导入的操作,三个sql文件的导入顺序不能出错:
[root[email protected] ~]# mysql
MariaDB [(none)]> create database zabbix;
MariaDB [(none)]> Bye
[[email protected] ~]# mysql zabbix < /tmp/schema.sql 
[[email protected] ~]# mysql zabbix < /tmp/images.sql
[[email protected] ~]# mysql zabbix < /tmp/data.sql 

mysql授权,授权给server端及web端:
[[email protected] ~]# mysql 
MariaDB [(none)]> grant all on zabbix.* to [email protected]‘172.25.0.11‘ identified by ‘123456‘;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> grant all on zabbix.* to [email protected]‘172.25.0.12‘ identified by ‘123456‘;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> grant all on zabbix.* to [email protected]‘serverb.example.com‘ identified by ‘123456‘;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> grant all on zabbix.* to [email protected]‘serverc.example.com‘ identified by ‘123456‘;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)

3、 Web端的安装
安装web端所需要的软件:

[[email protected] ~]# setenforce 0
[[email protected] ~]# yum -y install httpd php php-mysql # 安装lamp环境需要的软件包
[[email protected]
 zabbix]# yum -y localinstall zabbix-web-2.4.6-1.el7.noarch.rpm 
zabbix-web-mysql-2.4.6-1.el7.noarch.rpm 
php-mbstring-5.4.16-23.el7_0.3.x86_64.rpm 
php-bcmath-5.4.16-23.el7_0.3.x86_64.rpm
# 安装依赖包及web包
变更web端相关配置文件,指定时区。
[[email protected] zabbix]# vim /etc/httpd/conf.d/zabbix.conf 
   php_value date.timezone Asia/Shanghai

启动所有相关服务软件
server端的启动
[[email protected] sbin]# cd /usr/local/zabbix/sbin/
[[email protected] sbin]# ./zabbix_server 
[[email protected] sbin]# ps -ef | grep zabbix
zabbix    3218     1  0 22:20 ?        00:00:00 ./zabbix_server
zabbix    3220  3218  0 22:20 ?        00:00:00 ./zabbix_server: configuration syncer [waiting 60 sec for processes]
zabbix    3221  3218  0 22:20 ?        00:00:00 ./zabbix_server: db watchdog [synced alerts config in 0.014155 sec, idle 60 sec]
...........

web端的启动
[[email protected] zabbix]# systemctl restart httpd

4、Agent端的安装

[[email protected] zabbix]# rpm -ivh zabbix-2.4.6-1.el7.x86_64.rpm zabbix-agent-2.4.6-1.el7.x86_64.rpm
warning: zabbix-2.4.6-1.el7.x86_64.rpm: Header V4 DSA/SHA1 Signature, key ID 79ea5ed4: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:zabbix-2.4.6-1.el7               ################################# [ 50%]
   2:zabbix-agent-2.4.6-1.el7         ################################# [100%]
[[email protected] zabbix]# yum -y install net-snmp net-snmp-utils

配置agent端相关参数
[[email protected] zabbix]# vim /etc/zabbix/zabbix_agentd.conf 
Server=172.25.0.11
ServerActive=172.25.0.11
Hostname=servera.example.com
UnsafeUserParameters=1
[[email protected] zabbix]# systemctl restart zabbix-agent

+++++++++++++++++++++++++++++++++++++

通过图形化界面初始化web端:
打开浏览器访问http://172.25.0.12/zabbix/

保证php环境满足需求

填写数据库相关配置

填写server端相关信息

安装完成,登录,默认用户名为admin,密码为zabbix。

五、zabbix变更中文环境

点击右上角profile参数,可以看到如下界面,Language这里选择chinese(zh_CN)即可

但是会有一些问题,并不是所有的语言都被顺利翻译成了中文,比如这里出现的问号。

主要原因是由于mysql数据库的字符集格式,我们默认使用的字符集为utf8,而mysql里的字符集为latin1。
MariaDB [(none)]> show create database zabbix;
+----------+-------------------------------------------------------------------+
| Database | Create Database                                                   |
+----------+-------------------------------------------------------------------+
| zabbix   | CREATE DATABASE `zabbix` /*!40100 DEFAULT CHARACTER SET latin1 */ |
+----------+-------------------------------------------------------------------+
1 row in set (0.00 sec)

MariaDB [(none)]>
这里采用以下操作来变更字符集
[[email protected] ~]# mysqldump zabbix > /tmp/zabbix.sql
[[email protected] ~]# sed -i ‘s/latin1/utf8/‘ /tmp/zabbix.sql
[[email protected] ~]# mysqladmin drop zabbix
[[email protected] ~]# mysql
MariaDB [(none)]> create database zabbix DEFAULT CHARACTER SET utf8;
Query OK, 1 row affected (0.00 sec)
[[email protected] ~]# mysql zabbix < /tmp/zabbix.sql
变更完成后,对应问号部分会显示中文,代表中文环境切换正常。

时间: 2024-08-03 06:08:45

集中化监控工具zabbix的安装配置(centos7)的相关文章

zabbix 客户端安装配置运行

1 创建zabbix 用户 groupadd zabbix; useradd -g zabbix zabbix; passwd zabbix; 两次输入密码 2 下载获得zabbix的包,然后解压 tar zxvf zabbix-2.2.3.tar.gz; 3 安装 cd /home/zabbix/zabbix-2.2.3; ./configure --with-net-snmp --with-libcurl --enable-agent --prefix=/usr/local/zabbix s

zabbix客户端安装配置

1.下载,解压并安装zabbixtar zxvf zabbix-2.0.12.tar.gzcd zabbix-2.0.12./configure --prefix=/usr/local/zabbix --enable-agentmake&&make install 2.配置zabbix_agentdgroupadd zabbixuseradd -g zabbix zabbix chown zabbix:zabbix -R /usr/local/zabbix cp misc/init.d/f

Zabbix&LAMP安装配置

监控端操作 基于LAMP架构部署Zabbix #!/bin/bash #基于LAMP架构安装Zabbix # lamp(){ #关闭防火墙&核心安全功能systemctl stop firewalld.servicesystemctl disable firewalld.service &> /dev/nullsetenforce 0sed -i "7cSELINUX=disabled" /etc/sysconfig/selinux #下载安装必要组件yum in

Zabbix&LNMP安装配置

监控端操作 #!/bin/bash #安装zabbix+LNMP # lnmp(){ #关闭防火墙&核心安全功能 systemctl stop firewalld.service systemctl disable firewalld.service &> /dev/null setenforce 0 sed -i "7cSELINUX=disabled" /etc/sysconfig/selinux #yum安装nginx wget http://nginx.o

zabbix 之 安装配置手册(全)

1.1.1.1. zabbix 概况 1.1.1.1.1. zabbix 简介 Zabbix是一个高度集成的网络监控解决方案,可以提供企业级的分布监控解决方案. Zabbix通过C/S模式采集数据,通过B/S模式在web端展示和配置. 被监控端:主机通过安装agent方式采集数据,网络设备通过SNMP方式采集数据 Server端:通过收集SNMP和agent发送的数据,写入数据库(mysql,oracle等),再通过php-nginx或者php-apache在web前端展示. 1.1.1.1.2

zabbix server安装配置

环境:RedHat6.5 x64.Apache2.4.12.PHP5.6.6.MySQL5.6.23.Zabbix2.4.4 在同一台服务器上安装配置 首先配置主机hosts表! 一.MySQL安装 安装过程参见<MySQL安装配置>,在这里多安装MySQL-devel和shared包,安装zabbix时需要. rpm -ivh MySQL-devel-advanced-5.6.23-1.el6.x86_64.rpm rpm -ivh MySQL-shared-advanced-5.6.23-

zabbix 客户端安装配置

  1.下载zabbix wget http://netix.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.4.7/zabbix-2.4.7.tar.gz   2.编译安装zabbix 当前路径 pwd /usr/local/src 解压 tar -zxvf zabbix-2.4.7.tar.gz 进入zabbix目录,安装 cd zabbix-2.4.7/ ./configure --prefix=/usr/local

CentOS 6.5下Zabbix的安装配置

1.确保开发环境lamp已经安装 2.下载zabbix 官方下载地址:http://www.zabbix.com/download.php 选择和自己系统对应的版本,这里选择安装与Linux内核为2.6对应的zabbix-2.2.2版本 解压缩 #tar -zxvf zabbix-2.2.2.tar.gz #cd zabbix-2.2.2 3.安装所需要的组件 #yum install -y curl curl-devel net-snmp snmp net-snmp-devel perl-DB

zabbix client安装配置执行

1 创建zabbix 用户 groupadd zabbix; useradd -g zabbix zabbix; passwd zabbix; 两次输入password 2 下载获得zabbix的包.然后解压 tar zxvf zabbix-2.2.3.tar.gz; 3 安装 cd /home/zabbix/zabbix-2.2.3; ./configure --with-net-snmp --with-libcurl --enable-agent --prefix=/usr/local/za