zabbix

一、zabbix簡介

Zabbix是一個基于WEB界面的分布式開源監控系統,主要有2部分構成,Zabbix server于Zabbix agent,同時也支持Zabbix proxy。

現在,我們已經將Zabbix大量的應用到了線上環境。在日常的監控中,深切的體驗到了Zabbix的高效快捷和優秀的擴展能力。

Zabbix的底層采集程序是用C語言編寫的Server和Agent,而用戶界面是通過PHP編寫WEB,采用Mysql數據庫來存儲數據。整個Zabbix其實就是一個框架,其中內置了一些針對各類OS的系統參數采集命令,可以直接調用,而其它的自定義監控參數,則可以通過自己來寫一些快捷的Shell命令通過管道傳遞,或通過各種腳本甚至程序來傳遞。Zabbix只管把最后的返回值通過agent拿到,存儲統計,繪圖,根據定義的閥值進行報警等。

說到這里,其實所有的監控系統差不多都是這樣的邏輯,所以真正有差別的地方是在最后功能的整合和易用性上。而Zabbix之所以好用,就是因為它整合的相當好,拿來之后就能用,agent安裝簡單方便,Server端的配置,完善的用戶界面,繪圖,報警和擴展等都非常方便。

Zabbix與其他主流監控軟件功能對比

blob.png

1.1界面展示

下面,是我一臺生產環境的主界面,可以看到一些磁盤空間不足的報警(用綠色區塊遮住了主機名等敏感信息)。

其中橫排菜單中的Web,Latest data,Triggers,Graphs,Screens等則分別對應HTTPCheck類監控,快捷查看各個采集的最新數據,閾值,繪圖以及圖形報表。

blob.png

二、Zabbix架構設計

1.1監控需求

1、為了解決公司業務的穩定及問題處理的及時性。

2、為了實現針對CPU,內存、硬盤、網絡及應用的實時監控,并對事故等級進行分類報警。

3、實現監控的自動化處理,減輕人力工作。

4、保證監控服務的穩定,及時報警信息的處理。

5、利用監控數據分析服務器性能,服務器狀態分析。

6、易于擴展服務器。

1.2監控部署

Zabbix-server=nignx+php+mysql+zabbix-server


三、Zabbix安裝部署

1、軟件版本
Nginx:1.8.0
MYSQL:mysql-5.6.22
PHP:php-5.6.9
Zabbix:2.2.10(rpm包)


2、基礎環境安裝
首先安裝開發組包

[root@zabbix ~]# yum -y groupinstall "Development tools,Desktop platform development"                  

3、防火墻調試
[root@zabbix ~]# setenforce 0
[root@zabbix ~]# getenforce 
Permissive
[root@zabbix ~]# service iptables stop


4、時區同步
[root@zabbix ~]# yum -y install ntpdate
[root@zabbix ~]# ntpdate asia.pool.ntp.org
22 Dec 14:24:34 ntpdate[24098]: step time server 59.149.185.193 offset 1.163028 sec


5、安裝mysql(二進制程序安裝)
[root@zabbix soft]# groupadd -g 306 mysql
[root@zabbix soft]# useradd -g 306 -u 306 -s /sbin/nologin -M mysql
[root@zabbix soft]# mkdir -pv /u01/mysql/{data,log}
[root@zabbix soft]# chown -R mysql.mysql /u01/mysql/data
[root@zabbix soft]# chown -R mysql.mysql /u01/mysql/log
[root@zabbix soft]# tar xf mysql-5.6.22-linux-glibc2.5-x86_64.tar.gz -C /usr/local
[root@zabbix soft]# cd /usr/local
[root@zabbix local]# ln -sv mysql-5.6.22-linux-glibc2.5-x86_64/ mysql
[root@zabbix local]# cd mysql
[root@zabbix mysql]# chown root.mysql ./*
[root@zabbix mysql]# scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql 
--datadir=/u01/mysql/data

[root@zabbix mysql]# vim /etc/my.cnf
[mysqld]
datadir = /u01/mysql/data    #數據目錄
socket = /tmp/mysql.sock
pid-file = /tmp/mysql.pid
log_error = /var/log/mysql/mysql.log
log-bin = /u01/mysql/log/mysql-bin    #log-bin文件存放目錄
log-bin-index = /u01/mysql/log/mysql-bin.index
expire_logs_days = 30      #超過30天的binlog刪除
basedir = /usr/local/mysql
character_set_server = utf8      #server級別字符集
default_storage_engine = InnoDB   #默認存儲
innodb_buffer_pool_size = 4000M    #主要作用是緩存innodb表的索引,數據,插入數據時的緩沖
explicit_defaults_for_timestamp = true    #開啟查詢緩存


[root@zabbix mysql]# cp support-files/mysql.server /etc/rc.d/init.d/mysqld
[root@zabbix mysql]# chmod +x /etc/rc.d/init.d/mysqld
[root@zabbix mysql]# chkconfig --add mysqld
[root@zabbix mysql]# chkconfig mysqld on
[root@zabbix mysql]# echo "/usr/local/mysql/lib" > /etc/ld.so.conf.d/mysql.conf

[root@zabbix mysql]# ln -sv /usr/local/mysql/include /usr/include/mysqld

[root@zabbix mysql]# ldconfig 
[root@zabbix mysql]# ldconfig -p | grep mysql
libtcmalloc_minimal.so.0 (libc6,x86-64) => /usr/local/mysql/lib/libtcmalloc_minimal.so.0
libmysqlclient.so.18 (libc6,x86-64) => /usr/lib64/mysql/libmysqlclient.so.18
libmysqlclient.so.18 (libc6,x86-64) => /usr/local/mysql/lib/libmysqlclient.so.18
libmysqlclient.so (libc6,x86-64) => /usr/local/mysql/lib/libmysqlclient.so
[root@zabbix mysql]# echo "export PATH=/usr/local/mysql/bin:$PATH" > /etc/profile.d/mysql.sh

[root@zabbix mysql]# source /etc/profile.d/mysql.sh
[root@zabbix mysql]# vim /etc/man.config     
                     MANPATH /usr/local/mysql/man
[root@zabbix mysql]# mkdir /var/log/mysql
[root@zabbix mysql]# service mysqld start
Starting MySQL.                                            [  OK  ]
[root@zabbix mysql]# ss -tnl
State      Recv-Q Send-Q                                         Local Address:Port   
LISTEN     0      128                                                        *:22 
LISTEN     0      100                                                127.0.0.1:25 
LISTEN     0      80                                                        :::3306 
LISTEN     0      128                                                       :::22  
LISTEN     0      100                                                      ::1:25
###mysql已經配置完畢

6、安裝nginx
[root@zabbix nginx-1.8.0]# yum -y install pcre-devel openssl-devel
[root@zabbix nginx-1.8.0]# groupadd -r nginx
[root@zabbix nginx-1.8.0]# useradd -g nginx -r -s /sbin/nologin -M nginx
[root@zabbix soft]# tar xf nginx-1.8.0.tar.gz 
[root@zabbix soft]# cd nginx-1.8.0

[root@zabbix nginx-1.8.0]# ./configure \
   --prefix=/usr/local/nginx \
   --sbin-path=/usr/sbin/nginx \
   --conf-path=/etc/nginx/nginx.conf \
   --error-log-path=/var/log/nginx/error.log \
   --http-log-path=/var/log/nginx/access.log \
   --pid-path=/var/run/nginx/nginx.pid  \
   --lock-path=/var/lock/nginx.lock \
   --user=nginx \
   --group=nginx \
   --with-http_ssl_module \
   --with-http_flv_module \
   --with-http_stub_status_module \
   --with-http_gzip_static_module \
   --http-client-body-temp-path=/var/tmp/nginx/client/ \
   --http-proxy-temp-path=/var/tmp/nginx/proxy/ \
   --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ \
   --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi \
   --http-scgi-temp-path=/var/tmp/nginx/scgi \
   --with-pcre

##注意:有些目錄原來不存在
[root@zabbix ~]# mkdir -pv /var/tmp/nginx/{client,proxy,fcgi,uwsgi,scgi}
mkdir: created directory `/var/tmp/nginx'
mkdir: created directory `/var/tmp/nginx/client'
mkdir: created directory `/var/tmp/nginx/proxy'
mkdir: created directory `/var/tmp/nginx/fcgi'
mkdir: created directory `/var/tmp/nginx/uwsgi'
mkdir: created directory `/var/tmp/nginx/scgi'

###################出現這就沒問題了
Configuration summary
  + using system PCRE library
  + using system OpenSSL library
  + md5: using OpenSSL library
  + sha1: using OpenSSL library
  + using system zlib library
  nginx path prefix: "/usr/local/nginx"
  nginx binary file: "/usr/sbin/nginx"
  nginx configuration prefix: "/etc/nginx"
  nginx configuration file: "/etc/nginx/nginx.conf"
  nginx pid file: "/var/run/nginx/nginx.pid"
  nginx error log file: "/var/log/nginx/error.log"
  nginx http access log file: "/var/log/nginx/access.log"
  nginx http client request body temporary files: "/var/tmp/nginx/client/"
  nginx http proxy temporary files: "/var/tmp/nginx/proxy/"
  nginx http fastcgi temporary files: "/var/tmp/nginx/fcgi/"
  nginx http uwsgi temporary files: "/var/tmp/nginx/uwsgi"
  nginx http scgi temporary files: "/var/tmp/nginx/scgi"
[root@zabbix nginx-1.8.0]# echo $?
0
[root@zabbix nginx-1.8.0]# make && make install
[root@zabbix nginx-1.8.0]# echo $?
0


提供啟動腳本

[root@zabbix nginx-1.8.0]# vim /etc/rc.d/init.d/nginx 
#!/bin/sh
#
# nginx - this script starts and stops the nginx daemin
#
# chkconfig:   - 85 15
# description:  Nginx is an HTTP(S) server, HTTP(S) reverse \
#               proxy and IMAP/POP3 proxy server
# processname: nginx
# config:      /etc/nginx/nginx.conf
# pidfile:     /var/run/nginx.pid
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0
nginx="/usr/sbin/nginx"
prog=$(basename $nginx)
NGINX_CONF_FILE="/etc/nginx/nginx.conf"
lockfile=/var/lock/subsys/nginx
start() {
   [ -x $nginx ] || exit 5
   [ -f $NGINX_CONF_FILE ] || exit 6
   echo -n $"Starting $prog: "
   daemon $nginx -c $NGINX_CONF_FILE
   retval=$?
   echo
   [ $retval -eq 0 ] && touch $lockfile
   return $retval
}
stop() {
   echo -n $"Stopping $prog: "
   killproc $prog -QUIT
   retval=$?
   echo
   [ $retval -eq 0 ] && rm -f $lockfile
   return $retval
}
restart() {
   configtest || return $?
   stop
   start
}
reload() {
   configtest || return $?
   echo -n $"Reloading $prog: "
   killproc $nginx -HUP
   RETVAL=$?
   echo
}
force_reload() {
   restart
}
configtest() {
 $nginx -t -c $NGINX_CONF_FILE
}
rh_status() {
   status $prog
}
rh_status_q() {
   rh_status >/dev/null 2>&1
}
case "$1" in
   start)
       rh_status_q && exit 0
       $1
       ;;
   stop)
       rh_status_q || exit 0
       $1
       ;;
   restart|configtest)
       $1
       ;;
   reload)
       rh_status_q || exit 7
       $1
       ;;
   force-reload)
       force_reload
       ;;
   status)
       rh_status
       ;;
   condrestart|try-restart)
       rh_status_q || exit 0
           ;;
   *)
       echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-
reload|configtest}"
       exit 2
esac


[root@zabbix local]# chmod +x /etc/rc.d/init.d/nginx
[root@zabbix local]# chkconfig --add nginx
[root@zabbix local]# service nginx start

[root@zabbix local]# ss -tnl
State       Recv-Q Send-Q  Local Address:Port                 Peer Address:Port              
LISTEN      0      128                 *:80                              *:*                  
LISTEN      0      128                 *:22                              *:*                  
LISTEN      0      100         127.0.0.1:25                              *:*                  
LISTEN      0      80                 :::3306                           :::*                  
LISTEN      0      128                :::22                             :::*                  
LISTEN      0      100               ::1:25                             :::* 


#######查看結果
[root@zabbix u01]# curl http://localhost
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
    body {
        width: 35em;
        margin: 0 auto;
        font-family: Tahoma, Verdana, Arial, sans-serif;
    }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>
<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>
<p><em>Thank you for using nginx.</em></p>
</body>
</html>

7、安裝PHP
######php的部分依賴 
[root@zabbix ~]# yum -y install bzip2-devel libmcrypt libmcrypt-devel libxslt-devel libxml2-devel
[root@zabbix ~]# yum -y install libjpeg-devel libpng-devel mhash mhash-devel freetype-devel
libtidy-devel glibc-utils libtool-ltdl-devel php-common php-mbstring php-gd php-odbc php-pear 
php-xml php-bcmath libpng libpng-devel libaio libaio-devel  

[root@zabbix local]# cd /u01/soft
[root@zabbix php]# tar xf php-5.6.9.tar.xz
[root@zabbix soft]# cd php-5.6.9
[root@zabbix php-5.6.9]# ./configure \
    --prefix=/usr/local/php \
    --enable-fpm \
    --with-mysql=mysqlnd  \
    --with-pdo-mysql=mysqlnd  \
    --with-mysqli=mysqlnd  \
    --with-xmlrpc \
    --with-openssl \
    --with-zlib \
    --with-freetype-dir \
    --with-gd \
    --with-jpeg-dir \
    --with-png-dir \
    --with-iconv \
    --enable-short-tags \
    --enable-sockets \
    --enable-soap \
    --enable-mbstring \
    --enable-static \
    --enable-gd-native-ttf \
    --with-curl \
    --with-xsl \
    --enable-ftp \
    --with-libxml-dir \
    --enable-bcmath \        
    --with-fpm-user=nginx \
    --with-fpm-group=nginx \
    --with-config-file-path=/etc \
    --with-config-file-scan-dir=/etc/php.d
#這是某運維老鳥說的他企業里都是這么配置的,不需要更改??勺孕兴阉?

[root@zabbix php-5.6.9]# make && make install   #這里需要等待一段時間了,可以同時進行第三步操作

#############為php提供配置文件,以fastcgi方式監聽在9000端口
[root@zabbix php-5.6.9]# cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm  
###########為php提供配置文件
[root@zabbix php-5.6.9]# chmod +x /etc/rc.d/init.d/php-fpm
[root@zabbix php-5.6.9]# chkconfig --add php-fpm
[root@zabbix php-5.6.9]# chkconfig php-fpm on
[root@zabbix php-5.6.9]# chkconfig --list php-fpm
php-fpm        	0:off	1:off	2:on	3:on	4:on	5:on	6:off
[root@zabbix php-5.6.9]# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
##############如果要實現php和web服務分離可以編輯此文件,這里保持默認

##啟動php-fpm
[root@zabbix etc]# service php-fpm start
Starting php-fpm  done

#####注意
#1、這里啟動可能會出現問題。php很多動態模塊加載不上。如果是高手,請略過。
     如果沒有做過的可以試一下,重新編譯一邊php,我這是這樣解決的。
#2、版本與系統的模塊不兼容,需要升級模塊,,具體方法自己研究吧。測試出來的結果。。(用php5.5.x的沒有問題)


[root@zabbix etc]# ss -tnl
State       Recv-Q Send-Q         Local Address:Port           Peer Address:Port 
LISTEN      0      128                127.0.0.1:9000                      *:*     
LISTEN      0      80                        :::3306                     :::*     
LISTEN      0      128                        *:80                        *:*   

#####安裝與配置xcache加速器
[root@zabbix soft]# tar xf xcache-3.2.0.tar.bz2 
[root@zabbix soft]# cd xcache-3.2.0     ###注意要3.2版本才支持php5.6
  
[root@zabbix xcache-3.2.0]# /usr/local/php/bin/phpize  #注意這里要先解壓xcache在運行此命令
Configuring for:
PHP Api Version:         20131106
Zend Module Api No:      20131226
Zend Extension Api No:   220131226

[root@zabbix xcache-3.2.0]# ./configure --enable-xcache --with-php-config=/usr/local/php/bin/php-config

[root@zabbix xcache-3.2.0]# make && make install
       
#注意輸出的最后信息Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/
       
[root@zabbix xcache-3.2.0]# mkdir /etc/php.d   #提供xcache擴展配置文件
[root@zabbix xcache-3.2.0]# cp xcache.ini /etc/php.d/
[root@zabbix xcache-3.2.0]# vim /etc/php.d/xcache.ini

[xcache-common]
;; non-Windows example:
extension = /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/xcache.so  ##修改這個路徑

[root@edeiweiss0 xcache-3.2.0]# diff xcache.ini /etc/php.d/xcache.ini
4c4
< extension = xcache.so
---
> extension = /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/xcache.so




8、安裝zabbix
###第一種方法[root@zabbix zabbix]# yum -y localinstall *.rpm     #這里用最簡單的方法安裝
###編譯安裝 (準備數據庫,導入數據庫)  
[root@first zabbix-2.4.7]# useradd -r zabbix
mysql> create database zabbix character set utf8;
Query OK, 1 row affected (0.00 sec)

mysql> grant all on zabbix.* to zabbix@'%' identified by 'xixihaha';
Query OK, 0 rows affected (0.04 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

[root@zabbix soft]# tar xf zabbix-2.2.10.tar.gz
[root@zabbix soft]# cd zabbix-2.2.10
[root@zabbix zabbix-2.2.10]# mysql zabbix < database/mysql/schema.sql 
[root@zabbix zabbix-2.2.10]# mysql zabbix < database/mysql/images.sql 
[root@zabbix zabbix-2.2.10]# mysql zabbix < database/mysqldata.sql 
###解決依賴關系
[root@zabbix zabbix-2.2.10]# yum -y install net-snmp net-snmp-devel perl-DBi

[root@zabbix zabbix-2.2.10]# ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent 
--with-mysql --enable-ipv6 --with-net-snmp --with-libcurl

[root@zabbix zabbix-2.2.10]# make install

四、配置各種接口交互

1、nginx和php交互
[root@zabbix php-5.6.9]# vim /www/index.php    ###php顯示
welcome zabbix.
<?php
  echo phpinfo();
?>

 

2、nginx的php配置段

       location ~ \.php$ {
               root           /u01/www;
               fastcgi_pass   127.0.0.1:9000;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                include        fastcgi_params;
        }

blob.png

3、服務端配置

[root@zabbix zabbix-2.2.10]# ln -sv /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/libmysqlclient.so.18
`/usr/lib64/libmysqlclient.so.18' -> `/usr/local/mysql/lib/libmysqlclient.so.18'

[root@zabbix zabbix-2.2.10]# useradd -r zabbix
[root@zabbix zabbix-2.2.10]# cd /usr/local/zabbix
[root@zabbix zabbix]# cd etc
#配置服務端
[root@zabbix etc]# cat zabbix_server.conf |grep -v "#" |grep -v "^$" > zabbix_server.conf.bak
[root@zabbix etc]# mv zabbix_server.conf zabbix_server.conf.backup
[root@zabbix etc]# mv zabbix_server.conf.bak zabbix_server.conf

[root@zabbix etc]# vim zabbix_server.conf
    LogFile=/tmp/zabbix_server.log
    DBName=zabbix
    DBUser=zabbix
    DBPassword=xixihaha
       
#配置客戶端       
[root@zabbix etc]# cat zabbix_agentd.conf | grep -v "#" | grep -v "^$" > zabbix_agentd.conf.bak
[root@zabbix etc]# mv zabbix_agentd.conf zabbix_agentd.conf.backup
[root@zabbix etc]# mv zabbix_agentd.conf.bak zabbix_agentd.conf
[root@zabbix etc]# vim zabbix_agentd.conf
    LogFile=/tmp/zabbix_agentd.log
    Server=127.0.0.1,192.168.9.9
    ServerActive=127.0.0.1
    Hostname=Zabbix server
    UnsafeUserParameters=1

#提供服務端啟動腳本
[root@zabbix zabbix]# vim /etc/rc.d/init.d/zabbix-server
[root@zabbix zabbix]# chmod +x /etc/rc.d/init.d/zabbix-server
[root@zabbix zabbix]# chkconfig --add zabbix-server

#!/bin/sh

# Zabbix
# Copyright (C) 2001-2015 Zabbix SIA
#
# chkconfig:   - 86 15
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.

# Start/Stop the Zabbix server daemon.
# Place a startup script in /sbin/init.d, and link to it from /sbin/rc[023].d 

SERVICE="Zabbix server"
DAEMON=/usr/local/zabbix/sbin/zabbix_server
PIDFILE=/tmp/zabbix_server.pid

case $1 in
  'start')
    if [ -x ${DAEMON} ]
    then
      $DAEMON
      # Error checking here would be good...
      echo "${SERVICE} started."
    else
      echo "Can't find file ${DAEMON}."
      echo "${SERVICE} NOT started."
    fi
  ;;
  'stop')
    if [ -s ${PIDFILE} ]
    then
      if kill `cat ${PIDFILE}` >/dev/null 2>&1
      then
        echo "${SERVICE} terminated."
        rm -f ${PIDFILE}
      fi
    fi
  ;;
  'restart')
    $0 stop
    sleep 10
    $0 start
  ;;
  *)
    echo "Usage: $0 start|stop|restart"
    ;;
esac



#提供客戶端啟動腳本
[root@zabbix zabbix]# vim /etc/rc.d/init.d/zabbix-agentd 
[root@zabbix zabbix]# chmod +x /etc/rc.d/init.d/zabbix-agentd
[root@zabbix zabbix]# chkconfig --add zabbix-agentd
#!/bin/sh

# Zabbix
# Copyright (C) 2001-2015 Zabbix SIA
#
# chkconfig:   - 86 15
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.

# Start/Stop the Zabbix agent daemon.
# Place a startup script in /sbin/init.d, and link to it from /sbin/rc[023].d 

SERVICE="Zabbix agent"
DAEMON=/usr/local/zabbix/sbin/zabbix_agentd
PIDFILE=/tmp/zabbix_agentd.pid

case $1 in
  'start')
    if [ -x ${DAEMON} ]
    then
      $DAEMON
      # Error checking here would be good...
      echo "${SERVICE} started."
    else
      echo "Can't find file ${DAEMON}."
      echo "${SERVICE} NOT started."
    fi
  ;;
  'stop')
    if [ -s ${PIDFILE} ]
    then
      if kill `cat ${PIDFILE}` >/dev/null 2>&1
      then
        echo "${SERVICE} terminated."
        rm -f ${PIDFILE}
      fi
    fi
  ;;
  'restart')
    $0 stop
    sleep 10
    $0 start
  ;;
  *)
    echo "Usage: $0 start|stop|restart"
    ;;
esac


五、安裝zabbix界面

[root@zabbix zabbix-2.2.10]# cp -a frontends/php/* /u01/www

1、web訪問

blob.png

2、安裝完成結果

blob.png

3、php差一個模塊補上

[root@zabbix ~]# cd /u01/soft/php-5.5.30/ext/gettext/
[root@zabbix gettext]# /usr/local/php/bin/phpize
Configuring for:
PHP Api Version:         20121113
Zend Module Api No:      20121212
Zend Extension Api No:   220121212
[root@zabbix gettext]# ./configure --with-php-config=/usr/local/php/bin/php-config
[root@zabbix gettext]# make && make install
[root@zabbix gettext]# vim /etc/php.ini
extension = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/gettext.so"    ##在末尾加入這一行
[root@zabbix gettext]# service php-fpm stop
[root@zabbix gettext]# service php-fpm start    ###重新打開網頁

blob.png

4、修改字體為中文,并解決亂碼問題

[root@zabbix soft]# cd /u01/www
[root@zabbix www]# vim include/locales.inc.php
#####修改下面兩行
    'zh_CN' => array('name' => _('Chinese (zh_CN)'),        'display' => true),
    'zh_TW' => array('name' => _('Chinese (zh_TW)'),        'display' => true),
#####到C:\windows\fonts 拷貝一個中文字體到zabbix網站fonts目錄下替換掉就可以了(最好是微軟雅黑)
[root@zabbix fonts]# rm -rf DejaVuSans.ttf 
[root@zabbix fonts]# mv msyh.ttf DejaVuSans.ttf

blob.png

###OK,暫時寫到這里,以后還會更新,以上僅為個人學習整理,如有錯漏,大神勿噴~~~


原創文章,作者:oranix,如若轉載,請注明出處:http://www.www58058.com/10574

(0)
oranixoranix
上一篇 2016-01-05
下一篇 2016-01-05

相關推薦

  • 三次握手,四次揮手

    TCP/IP協議的詳細信息參看《TCP/IP協議詳解》三卷本。 在談及TCP建立連接和釋放連接過程,先來簡單認識一下TCP報文段首部格式的的幾個名詞(這里只是簡單說明,具體請查看相關教程)下面是TCP報文格式圖:     序列號seq:占4個字節,用來標記數據段的順序,TCP把連接中發送的所有數據字節都編上一個序號,第一個字節的…

    2017-09-03
  • 從LongAdder看更高效的無鎖實現

    接觸到AtomicLong的原因是在看guava的LoadingCache相關代碼時,關于LoadingCache,其實思路也非常簡單清晰:用模板模式解決了緩存不命中時獲取數據的邏輯,這個思路我早前也正好在項目中使用到。 言歸正傳,為什么說LongAdder引起了我的注意,原因有二: 作者是Doug lea ,地位實在舉足輕重。 他說這個比AtomicLon…

    Linux干貨 2016-06-01
  • 程序包的編譯安裝

    程序包的編譯安裝     程序包的編譯安裝是比較重要的內容,在之后的網絡知識以及服務的配置等學習方面也發揮著重要作用,是我們的必備技能。 一、雜項知識整理 1、which –skip-alias:跳過別名,直接查看原命令 [root@localhost ~]# which –…

    Linux干貨 2016-08-24
  • 用戶和組的管理

    前言 服務器最主要的工作是提供可靠的服務,提供服務就必須對外開放自己的網絡,可靠就需要一定的機制來保證了。Linux中有一個3A的機制,首先是認證,就是我們經常聽到的一句話,怎么證明你就是你;其次是授權,管理一個服務器,每個管理員都有自己的職責,那么我們就只分配對應的權限給特定的人,這樣就可以明確事故的責任,從源頭甩鍋;最后是審計,總有一些黑客可以通過各種手…

    Linux干貨 2016-10-22
  • Linux磁盤和文件系統管理

    磁盤相關概念 設備類型: 塊設備(block):存取單位為塊,典型設備磁盤 字符設備(char):存取單位為字符,典型設備為鍵盤 設備文件: 關聯至一個設備驅動程序,進而能夠跟與之對應硬件設備進行通信。 如果存在兩個相同型號設備,使用兩個設備文件,但可能還會關聯到同一個驅動程序 設備文件只有元數據即屬性,沒有數據內容,屬于特殊文件類型 設備號碼: 主設備號:…

    Linux干貨 2016-06-09
  • TCP常見問題總結

    TCP協議和UDP協議的區別是什么 TCP協議是有連接的,有連接的意思是開始傳輸實際數據之前TCP的客戶端和服務器端必須通過三次握手建立連接,會話結束之后也要結束連接。而UDP是無連接的 TCP協議保證數據按序發送,按序到達,提供超時重傳來保證可靠性,但是UDP不保證按序到達,甚至不保證到達,只是努力交付,即便是按序發送的序列,也不保證按序送到。 TCP協議…

    Linux干貨 2017-09-02
欧美性久久久久