zabbix安装(LAMP)

目录

一、zabbix简介

1、关于智能运维

2、zabbix进程组成结构

   ·zabbix_agentd

   ·zabbix_get

   ·zabbix_sender

   ·zabbix_server

   ·zabbix_proxy

二、项目简介及环境说明

1、实验的目的

2、环境准备

三、zabbix的搭建及配置

1、LAMP的安装

(1)、安装apache

(2)、编译安装MySQL5.6

(3)、编译安装PHP5.6.30

2、配置apache访问PHP

3、server端安装zabbix源码包

4、agent端安装zabbix源码包

5、配置zabbix web页面

6、最后重启apache、zabbix服务

四、功能进阶

1、使用模板监控linux主机

2、添加自定义脚本

3、利用zabbix监控MySQL数据库

4、其他功能简介


一、zabbix简介

1、关于智能运维

    随着技术的发展,云计算和大数据变得热门,企业的IT设施也在不断的增长,面对着成千上万的机器集群,传统的运维方式已经渐渐无法满足时代的要求,如同同时监控大批量的机器并只能报警、同时批量配置机器、在整套业务系统中快速定位问题,成为运维人员需要掌握的基本技能。

    面对这样的需求,市面上也涌现了一大批高质量的智能运维产品,目前看来,智能运维产品主要有以下3种:

    ·监控及报警:监控机器性能、网卡、服务是否开启等,发现问题通过邮件、短信、微信等方式及时报警。

    ·批量配置:快速将某些配置同步到大量的机器中。

    ·问题快递定位:从大量机器中监控各项日志、业务流程,快速定位出现的问题。

    ·应用监控测试:监控业务的响应时间,主要体现在网页监控上。

2、zabbix进程组成结构

    默认情况下zabbix包含5个程序:zabbix_agentd、zabbix_get、zabbix_proxy、zabbix_sender、zabbix_server,另外一个zabbix_java_gateway是可选的,这个需要另外安装,下面来分别介绍一下他们各自的作用。

   ·zabbix_agentd

    客户端守护进程,此进程收集客户端数据,例如CPU负载、内存、硬盘使用情况等。

   ·zabbix_get

    zabbix工具,单独使用的命令,通常在server或者proxy端执行获取远程客户端信息的命令。通常用于用户排错,例如在server端获取不到客户端的内存数据,我们可以使用zabbix_get获取客户端的内容的方式来做故障排查。

/zabbix/zabbix-3.2.4/src/zabbix_get/zabbix_get --help

   ·zabbix_sender

    zabbix工具,用于发送数据给server或者proxy,通常用于耗时比较长的检查,很多检查非常耗时间,导致zabbix超时,于是我们在脚本执行完毕之后,使用sender主动提交数据。

   ·zabbix_server

    zabbix服务端守护进程,zabbix_agentd、zabbix_get、zabbix_sender、zabbix_proxy、zabbix_java_gateway的数据最终都是提交到server。

    备注:当然不是数据都是主动提交给zabbix_server,也有的是server主动去取数据。

   ·zabbix_proxy

    zabbix代理守护进程。功能类似server,唯一不同的是它只是一个中转站,它需要把收集到的数据提交/被提交到server里(集群的时候会用到)。

   ·zabbix_java_gateway

    zabbix2.0之后引入的一个功能,顾名思义:java网关,类似agentd,但是只用于java方面,需要特别注意的是,它只能主动去获取数据,而不能被动获取数据,它的数据最终会给server或者proxy。

二、项目简介及环境说明

1、实验的目的

    ·掌握zabbix基本的安装和配置

    ·利用zabbix监控另一台linux主机

    ·利用zabbix监控另一台MySQL数据库

    ·zabbix其他功能简介

2、环境准备

    所需的安装包:

        1、CentOS-6.7-x86_64-bin-DVD1

        2、MySQL-5.6.15

        3、php-5.6.30

        4、libmcrypt-2.5.8

        5、zabbix-3.2.4

服务器

操作系统

IP地址

CPU数量

内存

磁盘

zabbix_server

CentOS-6.7

192.168.186.36

1K

1G

80GB

zabbix_agent

CentOS-6.7

192.168.186.37

1K

1G

80GB

    配置前先关闭iptables和selinux,避免安装过程中报错。

    1、关闭iptables:

  • [root@zabbix-server ~]# chkconfig  iptables off
  • [root@zabbix-server ~]# iptables -F
  • [root@zabbix-server ~]# chkconfig  --list|grep iptables
  • iptables        0:off 1:off 2:off 3:off 4:off 5:off 6:off

    2、关闭selinux:

  • [root@zabbix-server ~]# setenforce 0
  • [root@zabbix-server ~]# getenforce
  • Permissive
  • [root@zabbix-server ~]# vim /etc/sysconfig/selinux 

[root@zabbix-server ~]# cat /etc/sysconfig/selinux 

# This file controls the state of SELinux on the system.

# SELINUX= can take one of these three values:

#     enforcing - SELinux security policy is enforced.

#     permissive - SELinux prints warnings instead of enforcing.

#     disabled - No SELinux policy is loaded.

SELINUX=disabled

# SELINUXTYPE= can take one of these two values:

#     targeted - Targeted processes are protected,

#     mls - Multi Level Security protection.

SELINUXTYPE=targeted 

    3、搭建一键yum的安装脚本

#!/bin/bash

#function:bulid local yum

#author:wangxin

#version:1.0

#department:DBA

#mount cdrom to /yum

[ -d /yum ]||mkdir /yum

mount  /dev/cdrom  /yum

#create local.repo file and backup another repo files to bak directory

cd  /etc/yum.repos.d

[ -d bak ]||mkdir bak

mv  *.repo bak

cat >local.repo <<EOF

[local_yum]

name=local yum

baseurl=file:///yum

enabled=1

gpgcheck=0  

EOF

yum clean all

echo "mount /dev/cdrom /yum" >>/etc/rc.local

    4、zabbix3.2.4对环境的要求:

       1、 MySQL5.1以上的版本;

       2、PHP5.4或者更高的版本。

三、zabbix的搭建及配置

1、LAMP的安装

  • LAMP代表的就是:linux系统下的apache、MySQL、PHP这种网站服务器架构。
  •    Apache:是apache软件基金会的一个开源的网页服务器,可以在大多数计算机操作系统中运行,是最流行的web服务器端软件之一。
  •    MySQL:是一种开源的数据库。
  •    PHP:是一种在服务器端执行的嵌入HTML文档的脚本语言。
  •    这四种软件均为免费开源软件,组合在一起,成为一个免费、高效、扩展性强的网站服务系统。

(1)、安装apache

            [root@zabbix-server /]# yum -y install httpd httpd-devel

(2)、编译安装MySQL5.6

       1.安装编译源码所需的工具和库,将所需要的源码包上传到linux系统:

  •   [root@zabbix-server /]# yum install gcc gcc-c++ ncurses-devel 

       2.解压cmake安装包,编译安装:

  • [root@zabbix-server software]# tar xf cmake-3.6.0.tar.gz 
  • [root@zabbix-server software]# cd cmake-3.6.0
  • [root@zabbix-server cmake-3.6.0]# ./configure ;make;make install

      3.解压MySQL安装包,编译安装:

  • [root@zabbix-server software]# tar xf mysql-5.6.15.tar.gz 
  • [root@zabbix-server software]# cd mysql-5.6.15
  • [root@zabbix-server mysql-5.6.15]# cmake .
  • [root@zabbix-server mysql-5.6.15]# make ;make install

    1.新建MySQL用户和属组

  •  # useradd -r mysql

    2.赋予目录权限:

  • # chown -R mysql:mysql /usr/local/mysql/

    3.初始化数据库:

  •  [root@zabbix-agent mysql-5.6.15]# chown -R mysql:mysql /usr/local/mysql/
  • [root@zabbix-agent mysql-5.6.15]# cd /usr/local/mysql/
  • [root@zabbix-agent mysql]# pwd
  • /usr/local/mysql
  • [root@zabbix-agent mysql]# ls
  • bin      data  include         lib  mysql-test  scripts  sql-bench
  • COPYING  docs  INSTALL-BINARY  man  README      share    support-files
  • [root@zabbix-agent mysql]# ./scripts/mysql_install_db  --datadir=./data/

    4.给数据库目录mysql用户和属组权限:

  •  # chown  -R mysql:mysql ./data/

    5.把MySQL服务器基本配置写进配置文件:

# cd /usr/local/mysql/

# cp my.cnf  /etc/my.cnf 

vim /etc/my.cnf

[client]

socket = /usr/local/mysql/data/mysql.sock

[mysqld]

basedir = /usr/local/mysql

datadir = /usr/local/mysql/data

port = 3306

server_id = 1

socket = /usr/local/mysql/data/mysql.sock

    6.修改PATH变量:

 # PATH=$PATH:/usr/local/mysql/bin
 # vim /root/.bash_profile
     # .bash_profile
     # Get the aliases and functions
     if [ -f ~/.bashrc ]; then
             . ~/.bashrc
     fi
     # User specific environment and startup programs
     PATH=$PATH:$HOME/bin:/usr/local/mysql/bin
     export PATH    

    7.添加开机自动启动:复制启动服务脚本到/etc/init.d下:

  • # cp /usr/local/mysql/support-files/mysql.server  /etc/init.d/
  • [root@zabbix-agent init.d]# mv mysql.server  mysqld

    8.将mysql.server设置成可以以服务方式启动的:

  •     # chkconfig  --add mysql.server

    9.指定配置文件方式启动MySQL服务器:

  •   # mysqld_safe  --defaults-file=/etc/my.cnf  &

        查看一下是否启动:

  • # netstat  -tnulp|grep 3306
  • tcp   0    0 :::3306     :::*       LISTEN     26526/mysqld        

    10.进入MySQL数据库,修改密码:

  •     # mysql -uroot -S /usr/local/mysql/data/mysql.sock 
  •     mysql> set password=password('123456');

(3)、编译安装PHP5.6.30

    1.添加依赖应用

yum install -y gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libpng libpng-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses curl openssl-devel db4-devel libXpm-devel libX11-devel gmp-devel readline-devel libxslt-devel expat-devel xmlrpc-c libcurl libcurl-devel 

   2.安装加密扩展库,先安装libmcrypt

  • # tar xf libmcrypt-2.5.8.tar.gz 
  • # cd libmcrypt-2.5.8
  • # ./configure 
  • # make ;make install

    3.编译安装PHP

  • # tar xf php-5.6.30.tar.gz 
  • # cd php-5.6.30 
  • # ./configure --prefix=/usr/local/php --with-config-file-path=/etc --with-apxs2=/usr/sbin/apxs --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-inline-optimization --enable-fpm --enable-soap --with-libxml-dir --with-xmlrpc --with-openssl --with-mcrypt --with-mhash --with-pcre-regex --with-sqlite3 --with-zlib --enable-bcmath --with-iconv --with-bz2 --enable-calendar --with-curl --with-cdb --enable-dom --enable-exif --enable-fileinfo --enable-filter --with-pcre-dir --enable-ftp --with-gd --with-openssl-dir --with-jpeg-dir --with-png-dir --with-zlib-dir  --with-freetype-dir --enable-gd-native-ttf --with-gettext --with-gmp --with-mhash --enable-json --enable-mbstring --disable-mbregex --disable-mbregex-backtrack --with-libmbfl --with-onig --enable-pdo --with-pdo-mysql --with-zlib-dir --with-pdo-sqlite --with-readline --enable-session --enable-shmop --enable-simplexml --enable-sockets --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-wddx --with-libxml-dir  --with-xsl --enable-zip --enable-mysqlnd-compression-support --with-pear
  • # make ;make install

    php配置:php.ini是php运行核心配置文件,php-fpm.conf是php-fpm进程服务的配置文件。

  • cd /software/php-5.6.30
  • cp php.ini-production  /etc/php.ini
  • cp /usr/local/php/etc/php-fpm.conf.default  /usr/local/php/etc/php-fpm.conf
  • cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
  • chmod +x /etc/init.d/php-fpm

    fpm测试php配置

  • # /usr/local/php/sbin/php-fpm  -t
  • [12-Apr-2017 03:31:41] NOTICE: configuration file /usr/local/php/etc/php-fpm.conf test is successful

    添加到server里管理启动:

  • [root@zabbix-agent php-5.6.30]# chkconfig  --add php-fpm
  • ch[root@zabbix-agent php-5.6.30]# chkconfig  php-fpm on
  • [root@zabbix-agent php-5.6.30]# service  php-fpm start
  • Starting php-fpm  done
  1. [root@zabbix-agent php-5.6.30]# netstat  -anpt
  2. Active Internet connections (servers and established)
  3. Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name   
  4. tcp        0      0 127.0.0.1:9000              0.0.0.0:*                   LISTEN      44548/php-fpm       

    修改PHP默认端口

  • vim /usr/local/php/etc/php-fpm.conf

          listen = 127.0.0.1:8000

2、配置apache访问PHP

    配置httpd.conf让apache支持PHP

vim /etc/httpd/conf/httpd.conf
找到:AddType application/x-gzip .gz .tgz在其下添加如下内容:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
DirectoryIndex index.php index.html   //调整首页文件位置
LoadModule php5_module        /usr/lib64/httpd/modules/libphp5.so  //这个模块会在编译的时候自动生成加入进去

3、server端安装zabbix源码包

     1.安装zabbix所需的组件:

  • yum -y install curl libcurl-devel net-snmp net-snmp-devel perl-DBI libdbi-dbd-mysql mysql-devel gcc gcc-c++ make libxml2 libxml2-devel 

     2.server服务端:

        创建zabbix用户组与用户:

  • groupadd zabbix
  • useradd -g zabbix -s /sbin/nologin zabbix   

        编译安装zabbix:

  • # tar xf zabbix-3.2.4.tar.gz
  • # ./configure --prefix=/usr/local/zabbix-server --enable-server --with-mysql --with-net-snmp --with-libcurl --with-libxml2 --enable-agent --enable-ipv6
  • # make install

     3.创建数据库和授权表

  • mysql> create database zabbix character set utf8;
  • mysql> grant all on zabbix.* to zabbix@'localhost' identified by '123456';
  • mysql> flush privileges;

     4.导入数据SQL脚本:

在解压的zabbix目录下,将database/mysql目录下三个sql文件导入到zabbix数据库里。

  • # cd /software/zabbix-3.2.4 //一定要按照这样的数据导入,不然的话会报错。
  • # mysql -uzabbix -p123456 zabbix < database/mysql/schema.sql
  • # mysql -uzabbix -p123456 zabbix < database/mysql/images.sql 
  • # mysql -uzabbix -p123456 zabbix < database/mysql/data.sql

     5.修改配置文件并启动

  • # mkdir -p /var/www/zabbix
  • cp -R frontends/php/ /var/www/zabbix/
  • chmod  777 /var/www/zabbix/php/conf

我们只关注DBHost、DBName、DBUser、DBPassword几项即可。这几项是配置zabbix server连接mysql数据库的参数。

# vim /usr/local/zabbix-server/etc/zabbix_server.conf
LogFile=/var/log/zabbix/zabbix_server.log
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=123456
DBSocket= /usr/local/mysql/data/mysql.sock DBPort = 3306
Timeout=4
LogSlowQueries=3000

     6.创建日志文件存放位置:

  • # mkdir /var/log/zabbix
  • # chown -R zabbix:zabbix /var/log/zabbix

          启动zabbix服务:

  • # /usr/local/zabbix-server/sbin/zabbix_server

     7.用server来管理启动zabbix服务:

  • # cd /software/zabbix-3.2.4
  • # cp misc/init.d/fedora/core/zabbix_server  /etc/init.d
  • # chkconfig  --add zabbix_server
  • # chkconfig  zabbix_server on

           创建软连接:

  • # ln -s /usr/local/zabbix-server/sbin/zabbix_server  /usr/local/sbin/
  • zabbix_server端执行ln -s /usr/local/zabbix-server/bin /usr/bin/,方便对添加的键值对进行测试。

           启动服务:

  • # service zabbix_server start

4、agent端安装zabbix源码包

    1.创建zabbix用户组与用户

  • # groupadd zabbix
  • # useradd -g zabbix -s /sbin/nologin zabbix(如果是监控本机,就不需要执行这一步了)

    2.编译安装

  • # cd /software/zabbix-3.2.4
  • # ./configure  --prefix=/usr/local/zabbix-agent  --enable-agent
  • # make install

        修改配置文件:

  • # cd /usr/local/zabbix-agent/
  • # vim etc/zabbix_agentd.conf
  • LogFile=/var/log/zabbix/zabbix_agentd.log
  • Server=192.168.186.37
  • ServerActive=192.168.186.37
  • Hostname=Zabbix agent

    3.用server来管理启动zabbix服务

  • # cd /software/zabbix-3.2.4
  • # cp misc/init.d/fedora/core/zabbix_agentd  /etc/init.d/
  • # chkconfig  --add zabbix_agentd
  • # chkconfig zabbix_agentd on

             建立软连接

  • # ln -s /usr/local/zabbix-agent/sbin/zabbix_agentd  /usr/local/sbin/

            启动agent服务

  • # service zabbix_agentd start

5、配置zabbix web页面

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

#
# Zabbix monitoring system php web frontend
# 
#Alias /zabbix/usr/share/zabbix
Alias /zabbix /var/www/zabbix/php 
<Directory "/var/www/zabbix/php">
    Options FollowSymLinks
       AllowOverride None
       Order allow,deny
       Allow from all
    #Require all granted
    <IfModule mod_php5.c>
        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
        php_value always_populate_raw_post_data -1
        # php_value date.timezone Europe/Riga
        php_value date.timezone Asia/Shanghai //主要定义php的时区。
    </IfModule>
</Directory>

6、最后重启apache、zabbix服务

  • # service httpd restart

然后访问http://ip地址/zabbix这个地址,进行安装(因是页面设置,故省略)

四、功能进阶

    经过前面几个功能的学习,读者应该对zabbix的界面和功能有了一个大致的了解,为了方便阅读,同时使教程更加精简,接下来将尽量减少截图的使用次数。

1、使用模板监控linux主机

    在文档前面的部分,已经介绍了如何添加主机并监控其中的一些监控项,以及在监控项的值过高时触发报警并发送邮件,然而,面对大量的机器,或者想同时添加大量监控内容时,显然不能像这样一个一个的慢慢添加。此时,就用到了zabbix的模板功能。

    1.点击:配置--->主机--->zabbix_DB1--->模板,进入主机模板配置界面。

    2.点击链接指示器右侧的选择按钮。

    3.勾选“template OS Linux”模板并点击选择。

    4.点击“添加”,此时在“链接的模板”中就会出现刚添加的模板。右侧的取消链接指的是主机不再应用该模板,而“取消链接并清理”则是在取消应用模板时,也删除与之相关的监控项目、触发器等。

    5.点击“更新”按钮,此时在主机“zabbix_DB1”中的应用集、监控项、触发器、图形等都从0变成了其他数字。

    6.点击“检测中--->最新数据”,在过滤器中将zabbix_DB1选中,此时可以看到出现了很多模板自带的监控项。展开任意一个监控项组,并点击最右侧的图形,则可以看到其最近的性能趋势。

    可以看到,利用模板功能,可以轻易的添加大量的监控项。在zabbix中,用户可以自己创建模板,还可以将有联系的模板嵌套起来,比如定义了一个监控linux主机的模板,又定义了一个监控MySQL的模板,就可以在MySQL模板中嵌套基础的linux模板。

2、添加自定义脚本

    有时候我们想让被监控端执行一个zabbix没有预定义的检测,zabbix的用户自定义参数功能提供了这个方法,我们可以在客户端配置文件:zabbix_agentd.conf里面配置userparameter,下面我们一起来添加一个自定义脚本(用户自定义参数里自定的脚本有zabbix agent来执行,最大可以返回512K的数据)。

    1.在被监控端上调用agent的配置并使其生效。

  1. # vim /usr/local/zabbix-agent/etc/zabbix_agentd.conf
  2. UserParameter=test.add[*],echo $1+$2|bc
  3. # service zabbix_agentd restart

    自定义脚本的语法如下:Userparameter=key[*],command。其中key必须整个系统唯一,[*]指传进来的参数,对应后面的$1到$9,command为调用这个key时执行的命令,可以是一行命令或者一个脚本,可以看到,我们添加了一个将数据相加的命令,可以通过test.add[10,20]的方式传参。

    2.进入配置--->主机--->监控项,为zabbix_DB1新建一个监控项,并将键值写为test.add[10,20],并点击添加。

    3.进入“检测中--->最新数据”,查看刚刚添加的监控项目,可以看到最新数据返回为30。

3、利用zabbix监控MySQL数据库

    从zabbix2.2开始,zabbix官方已经支持MySQL监控,但是MySQL监控默认是不可用的,需要额外的设置才能使用。

    如果zabbix是由低版本升级到3.2的,可能不会有MySQL版本,此时就需要访问官网wiki下载相关的模板,然后点击配置--->模板--->导入,将下载的模板导入到zabbix。

    1.进入配置--->主机--->zabbix_DB1--->模板,为其添加一个新的模板“template-App-MySQL”。

    2.进入配置--->主机--->zabbix_DB1监控项,可以看到,添加模板后,新增了很多MySQL相关的监控项,但有些监控项目的状态都是不支持的。

        因为zabbix的MySQL模板里所需要的key值,zabbix的agent端并没有原生的支持,此时就需要在客户端上配置一下用户自定义的参数,以满足模板中的key值,我们使用的是3.2自带了相关的脚本,当然,也可以通过自己编写脚本来实现。

  3.打开被监控端的终端,查找userparameter_mysql.conf文件,将该文件cp到该路径下/usr/local/zabbix-agent/etc/zabbix_agentd.conf.d/,查看该文件,可以看到zabbix agent中自带了和MySQL相关的userparameter参数。

       查看一下 /usr/local/zabbix-agent/etc/zabbix_agentd.conf的配置信息是否有Include=/usr/local/zabbix-agent/etc/zabbix_agentd.conf.d/userparameter_mysql.conf。如果没有添加该行信息。

cat /usr/local/zabbix-agent/etc/zabbix_agentd.conf.d/userparameter_mysql.conf
...
UserParameter=mysql.ping,HOME=/var/lib/zabbix mysqladmin ping | grep -c alive
...

  查看上述配置文件的注释,发现需要在/var/lib/zabbix下配置.my.cnf文件,用以存储连接数据库的用户名和密码等。

# mkdir  /var/lib/zabbix/
# vim /var/lib/zabbix/.my.cnf
[mysql]
host=localhost
user=zabbix
password=123456
port = 3306
socket = /usr/local/mysql/data/mysql.sock
[mysqladmin]
host=localhost
user=zabbix
password=123456
port = 3306
socket = /usr/local/mysql/data/mysql.sock
~                                            
# chown -R zabbix:zabbix /var/lib/zabbix/ 

       在上述脚本中,为保证安全,没用使用root用户,而是一个新的zabbix用户,因此需要在MySQL中单独为zabbix创建一个低权限用户,用户名和密码都是zabbix。

  • # mysql -p123456
  • mysql> grant usage on *.* to 'zabbix'@'localhost' identified by '123456';
  • mysql> flush privileges;

    配置完成后,重启一下zabbix_agent服务。

  • # service zabbix_agentd restart

    等待一段时间后,进入“配置--->主机--->zabbix_DB1”,可以看到,MySQL相关的监控项“状态”都变成了“已启用”,进入“监控中--->最新数据”,可以看到MySQL参数绘制的图形。

4、其他功能简介

    作为一个“All in One”的监控平台,zabbix的功能多且强大,远非一篇实验文档所能包含的,更多的功能需要读者亲自实践,阅读官方文档、学习网络教程等。在此实验最后,将为读者以全局的方式展现zabbix还有哪些强大的功能。

    1.用户管理与报警媒介

  1. 认证:多种认证方式(内置、http、ladp)。
  2. 用户:权限管理、用户分组、定制接收告警(级别、时间、方式)。
  3. 告警媒介:多种告警媒介(邮件、短信、微信、电话)。

    2.监控与图形展示

  1. 主机:对主机分组,对不同的应用进行监控、支持宏变量、维修期自动停止报警、主机资源管理。
  2. 监控项:丰富的监控模式(agent、snmp、jmx、ssh、telnet、监控日志、监控网页等),对监控项进行分组,允许传参,自动生成趋势数据,对返回值进行名称映射(返回1代表在线,0代表离线)等。
  3. 图片展示:添加监控项时自动展示趋势图,支持一张图片多个来源。
  4. 图表:自定义仪表盘(一个页面摆放哪些图片)、为仪表盘添加动态元素(时钟等),幻灯片的方式轮流播放多个仪表盘。
  5. 拓扑图:绘制拓扑图,并将图中的内容和监控项、触发器等对应起来。
  6. 触发器:灵活的触发条件、通过表达式判断、自动保存触发历史、触发器之间可以依赖。
  7. 动作:支持自定义告警内容时使用变量、灵活的触发条件、触发后可以报警或执行远程命令、触发后不同时间段做出不同的动作。
  8. 模板:对模板分组,模板之间相互嵌套、对主机批量应用模板,可以包含多种实体(监控项、触发器、动作等)。

    3、高级功能

  1. 模板:使用C语言开发自己的模板。
  2. 导入导出:导入导出文件、模板、主机、拓扑图等等。支持XML格式和JSON格式。
  3. API:zabbix提供丰富的接口,以便用户自定义界面等内容。
  4. 分布式:zabbix支持分布式监控,以方便适应不同的IT架构。

    可以看到,zabbix的功能繁多,其强大与灵活远远超过了目前流行的Cacti、Nagios等监控软件,是运维人员必学的开源产品。

    本次实验到此结束,更多内容请参考下面的链接:

    官方文档:https://www.zabbix.com/documentation/3.2/

    官方论坛:https://www.zabbix.com/forum/

    运维生存时间系列教程:http://www.ttlsa.com/zabbix/

 

 

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章