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/

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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