zabbix 監控安裝

 

 

注意:此篇是在安裝好lnmp環境後才能部署的操做,因此,作以前準備好lnmp環境,或者能夠參考我作的lnmp環境,以後接着此篇開始安裝php

監控系統Zabbix-3.2.1的安裝 html

zabbix-server端的操做java

zabbix服務器端要提早安裝好LNMP環境(mysqlnginxphp5的安裝目錄均是/usr/localmysql

建立Zabbix運行的用戶:nginx

# userd -g zabbix zabbix
# useradd -g zabbix zabbix

安裝libcurlnet-snmp:web

# yum -y install net-snmp net-snmp-devel curl-devel java-1.8.0-openjdk java-1.8.0-openjdk-devel  OpenIPMI-devel  libssh2-devel

注:OpenIPMI-devel 和libssh2-devel軟件包使用centos在線yum軟件源安裝sql

安裝Fping:數據庫

# tar -xvf fping-3.12.tar.gz
# cd fping-3.12/
# ./configure && make && make install
# chown -R root:zabbix /usr/local/sbin/fping
# chmod 4710 /usr/local/sbin/fping 
# ll /usr/local/sbin/fping 
-rws--x---. 1 root zabbix 93506 4月 27 09:26 /usr/local/sbin/fping

安裝Zabbix Server:json

 

# tar -xvf zabbix-3.2.1.tar.gz
# cd zabbix-3.2.1/
# ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-java --with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl --with-openipmi

  

注意:編譯時最好帶上--enable-java這個參數,方便後續監控tomcat程序所用。vim

--with-ssh2 是不須要在客戶端服務器上面安裝Zabbix agent,若是須要使用ssh檢查,須要在編譯的時候加上這項,最低須要libssh2 1.0.0版本,須要安裝ssh開發包

--with-openipmi用戶能夠利用 IPMI 監視服務器的物理特徵,如溫度、電壓、電扇工做狀態、電源供應等

若是添加了--enable-proxy, 那麼會生成getsender兩條命令. 以下, 用於接收agent發生過來的信息, 同時發送給server.

# make && make install
# ln -s /usr/local/zabbix/bin/* /usr/local/bin/
# ln -s /usr/local/zabbix/sbin/* /usr/local/sbin/

  

Zabbix Server配置與啓動
建立Zabbix數據庫和MySQL用戶:

mysql> create database zabbix character set utf8;
Query OK, 1 row affected (0.00 sec)

mysql> grant all privileges on zabbix.* to 'zabbix'@'localhost' identified by 'zabbix';
Query OK, 0 rows affected, 1 warning (0.00 sec)

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

 

導入Zabbix初始數據:

切換到zabbix的解壓目錄下

 

[root@localhost zabbix-3.2.1]# cd database/mysql/
[root@localhost mysql]# pwd
/data/src/zabbix/zabbix-3.2.1/database/mysql
[root@localhost mysql]# ls
data.sql  images.sql  schema.sql

進行zabbix初始數據導入

[root@localhost mysql]# mysql -uzabbix -pzabbix -hlocalhost zabbix < images.sql 
mysql: [Warning] Using a password on the command line interface can be insecure.
[root@localhost mysql]# mysql -uzabbix -pzabbix -hlocalhost zabbix < data.sql
mysql: [Warning] Using a password on the command line interface can be insecure.

編輯/usr/local/zabbix/etc/zabbix_server.conf:

# vim /usr/local/zabbix/etc/zabbix_server.conf
LogFile=/usr/local/zabbix/logs/zabbix_server.log
PidFile=/usr/local/zabbix/logs/zabbix_server.pid
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBPort=3306
FpingLocation=/usr/local/sbin/fping

建立日誌目錄並設置屬主屬組

# mkdir -p /usr/local/zabbix/logs
# chown -R zabbix:zabbix /usr/local/zabbix

啓動Zabbix Server:

# /usr/local/zabbix/sbin/zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf
/usr/local/zabbix/sbin/zabbix_server: error while loading shared libraries: libmysqlclient.so.20: cannot open shared object file: No such file or directory 

解決方法:

ld.so.conf中加入/usr/local/mysql/lib

# vim /etc/ld.so.conf
include ld.so.conf.d/*.conf
/usr/local/mysql/lib
/usr/local/lib

  

# ldconfig

 

再次執行zabbix_server啓動

 

# /usr/local/zabbix/sbin/zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf
# ps -ef f|grep zabbix_server
root      23511  13356  0 10:04 pts/0    S+     0:00          \_ grep --color=auto zabbix_server
zabbix    23456      1  0 10:03 ?        S      0:00 /usr/local/zabbix/sbin/zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf
zabbix    23457  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: configuration syncer [waiting 60 sec for processes]
zabbix    23458  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: db watchdog [synced alerts config in 0.013618 sec, idle 60 sec]
zabbix    23459  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: poller #1 [got 0 values in 0.000012 sec, idle 5 sec]
zabbix    23460  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: poller #2 [got 0 values in 0.000009 sec, idle 5 sec]
zabbix    23461  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: poller #3 [got 0 values in 0.000018 sec, idle 5 sec]
zabbix    23462  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: poller #4 [got 0 values in 0.000012 sec, idle 5 sec]
zabbix    23463  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: poller #5 [got 0 values in 0.000012 sec, idle 5 sec]
zabbix    23464  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: unreachable poller #1 [got 0 values in 0.000012 sec, idle 5 sec]
zabbix    23465  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: trapper #1 [processed data in 0.000000 sec, waiting for connection]
zabbix    23466  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: trapper #2 [processed data in 0.000000 sec, waiting for connection]
zabbix    23467  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: trapper #3 [processed data in 0.000000 sec, waiting for connection]
zabbix    23468  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: trapper #4 [processed data in 0.000000 sec, waiting for connection]
zabbix    23469  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: trapper #5 [processed data in 0.000000 sec, waiting for connection]
zabbix    23470  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: icmp pinger #1 [got 0 values in 0.000003 sec, idle 5 sec]
zabbix    23471  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: alerter [sent alerts: 0 success, 0 fail in 0.001350 sec, idle 30 sec]
zabbix    23472  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: housekeeper [startup idle for 30 minutes]
zabbix    23473  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: timer #1 [processed 0 triggers, 0 events in 0.000168 sec, 0 maintenances in 0.004566 sec, idle 30 sec]
zabbix    23474  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: http poller #1 [got 0 values in 0.001100 sec, idle 5 sec]
zabbix    23475  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: discoverer #1 [processed 0 rules in 0.002285 sec, idle 60 sec]
zabbix    23476  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: history syncer #1 [synced 0 items in 0.000002 sec, idle 1 sec]
zabbix    23477  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: history syncer #2 [synced 0 items in 0.000001 sec, idle 1 sec]
zabbix    23478  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: history syncer #3 [synced 0 items in 0.000002 sec, idle 1 sec]
zabbix    23479  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: history syncer #4 [synced 0 items in 0.000002 sec, idle 1 sec]
zabbix    23480  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: escalator #1 [processed 0 escalations in 0.001507 sec, idle 3 sec]
zabbix    23481  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: proxy poller #1 [exchanged data with 0 proxies in 0.000003 sec, idle 5 sec]
zabbix    23482  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: self-monitoring [processed data in 0.000009 sec, idle 1 sec]
zabbix    23483  23456  0 10:03 ?        S      0:00  \_ /usr/local/zabbix/sbin/zabbix_server: task manager [processed 0 task(s) in 0.000433 sec, idle 5 sec]
[root@localhost mysql]# 

 

  

添加開機啓動腳本

 

 

[root@localhost zabbix-3.2.1]# cp misc/init.d/fedora/core/zabbix_server  /etc/rc.d/init.d/zabbix_server
[root@localhost zabbix-3.2.1]# cp misc/init.d/fedora/core/zabbix_agentd  /etc/rc.d/init.d/zabbix_agentd
 chmod +x /etc/rc.d/init.d/zabbix_server 
 chmod +x /etc/rc.d/init.d/zabbix_agentd
# chkconfig --add zabbix_server
# chkconfig --add zabbix_agentd
# chkconfig zabbix_server on
chkconfig zabbix_agentd on

  

修改zabbix開機啓動腳本中的zabbix安裝目錄

vim /etc/rc.d/init.d/zabbix_server #編輯服務端配置文件

 

# vim /etc/rc.d/init.d/zabbix_server
修改下面兩項
BASEDIR=/usr/local/zabbix
PIDFILE=/usr/local/zabbix/logs/$BINARY_NAME.pid    #pid文件路徑 

 

 

vim /etc/rc.d/init.d/zabbix_agentd #編輯客戶端配置文件

 

 

# vim /etc/rc.d/init.d/zabbix_agentd 
修改下面兩項
BASEDIR=/usr/local/zabbix
PIDFILE=/usr/local/zabbix/logs/$BINARY_NAME.pid

  

 

# systemctl daemon-reload
# /etc/init.d/zabbix_server stop
Stopping zabbix_server (via systemctl):                    [  肯定  ]
# /etc/init.d/zabbix_server start
Starting zabbix_server (via systemctl):                    [  肯定  ]
# netstat -tanpl |grep zabbix
tcp        0      0 0.0.0.0:10050           0.0.0.0:*               LISTEN      27324/zabbix_agentd 
tcp        0      0 0.0.0.0:10051           0.0.0.0:*               LISTEN      23456/zabbix_server 

  此時關閉防火牆或者作防火牆規則

 

配置zabbix web頁面

在安裝目錄將frontends拷貝到指定的web root:

# cp -r frontends/php/ /usr/local/nginx1.10/html/zabbix
# chown -R www:www /usr/local/nginx1.10/html/zabbix

  

注:/usr/local/nginx/htmlNginx默認站點目錄 wwwNginx運行帳戶

:PHP須要至少開啓擴展:

 

gd,bcmath,ctype,libXML,xmlreader,xmlwriter,session,sockets,mbstring,gettext,mysql

以下,查看是否包括了上面所提到的擴展模塊

 

 

# /usr/local/php5.6/bin/php -m
[PHP Modules]
bcmath
bz2
Core
ctype
curl
date
dom
ereg
fileinfo
filter
ftp
gd
gettext
hash
iconv
json
libxml
mbstring
mcrypt
mhash
mysql
mysqli
openssl
pcntl
pcre
PDO
pdo_sqlite
Phar
posix
Reflection
session
shmop
SimpleXML
soap
sockets
SPL
sqlite3
standard
sysvsem
tokenizer
xml
xmlreader
xmlrpc
xmlwriter
zip
zlib

 

  

安裝Web

訪問Web界面http://192.168.92.129/zabbix,進行相關web配置,配置完成後使用默認用戶admin(密碼:zabbix)登錄便可

進入ZABBIX WEB安裝畫面

進入ZABBIX檢測畫面

對數據庫進行設置,這裏若是數據庫在本地的話端口可使用0

 

點擊Next step 一下步進行zabbix server 細節的設置  這一步能夠默認

點擊安裝,安裝完成後  若是沒有錯誤就會進入完成畫面

完成畫面有設置文件放在服務器的位置,請記下來

 

點擊Finish 完成 

使用Admin  用默認密碼 zabbix 登陸

登陸後畫面以下

至此 ZABBIX的基礎安裝完成

注:

  1. 顯示簡體中文界面

在安裝數據庫時已經將zabbix庫設置了utf-8字符

首先肯定zabbix開啓了中文支持功能:
登陸到zabbix服務器的數據目錄下(前面部署的zabbix數據目錄是/usr/local/nginx1.10/html/zabbix/),打開 locales.inc.php文件

 

# cd /usr/local/nginx1.10/html/zabbix/include/
[root@localhost include]# ls
acknow.inc.php       events.inc.php          js.inc.php            screens.inc.php
actions.inc.php      forms.inc.php           locales.inc.php       services.inc.php
audit.inc.php        func.inc.php            maintenances.inc.php  sounds.inc.php
blocks.inc.php       gettextwrapper.inc.php  maps.inc.php          translateDefines.inc.php
classes              graphs.inc.php          media.inc.php         triggers.inc.php
config.inc.php       groups.inc.php          menu.inc.php          users.inc.php
correlation.inc.php  hosts.inc.php           page_footer.php       validate.inc.php
db.inc.php           html.inc.php            page_header.php       valuemap.inc.php
debug.inc.php        httptest.inc.php        perm.inc.php          views
defines.inc.php      ident.inc.php           profiles.inc.php
discovery.inc.php    images.inc.php          regexp.inc.php
draw.inc.php         items.inc.php           schema.inc.php
[root@localhost include]# vim locales.inc.php 
function getLocales() {
        return [
                'en_GB' => ['name' => _('English (en_GB)'),     'display' => true],
                'en_US' => ['name' => _('English (en_US)'),     'display' => true],
                'bg_BG' => ['name' => _('Bulgarian (bg_BG)'),   'display' => false],
                'zh_CN' => ['name' => _('Chinese (zh_CN)'),     'display' => true],
                'zh_TW' => ['name' => _('Chinese (zh_TW)'),     'display' => false],
                'cs_CZ' => ['name' => _('Czech (cs_CZ)'),       'display' => true],
                'nl_NL' => ['name' => _('Dutch (nl_NL)'),       'display' => false],
                'fi_FI' => ['name' => _('Finnish (fi_FI)'),     'display' => false],
                'fr_FR' => ['name' => _('French (fr_FR)'),      'display' => true],
                'ka_GE' => ['name' => _('Georgian (ka_GE)'),    'display' => false],

登錄zabbix後,點擊右上角的用戶圖標,將語言設置爲中文  

按照如圖選擇Chinese(zh_CN)點擊update

以下圖,此時能夠顯示中文了

 

解決zabbix繪圖中出現中文亂碼問題:

 

a.windows下控制面板->字體->選擇一種中文字庫例如「宋體

b.把它拷貝到zabbixweb端的fonts目錄下例如:/usr/local/nginx1.10/html/zabbix/fonts/,而且把TTF後綴改成ttf

# cp SIMSUN.TTC  /usr/local/nginx1.10/html/zabbix/fonts/
# mv SIMSUN.TTC SIMSUN.ttf
# ls
DejaVuSans.ttf SIMSUN.ttf
# pwd
/usr/local/nginx1.10/html/zabbix/fonts

而且將以前的字體文件DejaVuSans.ttf移動到別處

c.而後,接着修改代碼include/defines.inc.php文件中的字體配置,將裏面關於字體設置從DejaVuSans替換成SIMSUN  

 

# vim /usr/local/nginx1.10/html/zabbix/include/defines.inc.php
會修改兩處
vim替換技巧  「:%s/DejaVuSans/SIMSUN」

其中:SIMSUN爲字庫名字,不包含ttf後綴

這樣,修改後,zabbix監控圖形中的中文字就不會出現亂碼了

第二部分,安裝zabbix客戶端

 

既然要監控咱們就要添加要監控的主機,在添加主機以前咱們首先要在被檢測主機上面安裝agent,安裝agent比較簡單,咱們也是按照安裝server的流程,下載軟件包,在編譯的時候,咱們只選擇agent

192.168.92.130做爲zabbix的被監控端,提供webmysql應用

安裝Zabbix,配置Zabbix agent:

在192.168.92.130上配置以下:

 

# groupadd zabbix
# useradd -g zabbix zabbix
# yum -y install gcc cc cl # yum -y install net-snmp net-snmp-devel curl-devel java-1.8.0-openjdk java-1.8.0-openjdk-devel OpenIPMI-devel libssh2-devel

 

  

 

# tar -xvf zabbix-3.2.1.tar.gz
# cd zabbix-3.2.1/
# ./configure --prefix=/data/soft/zabbix --enable-agent
#  make && make install
# cp misc/init.d/fedora/core/zabbix_agentd  /etc/init.d/
# mkdir -p /usr/local/zabbix/logs
# chown -R zabbix:zabbix /usr/local/zabbix/

 

配置開機自動啓動:

 

# chkconfig --add zabbix_agentd
# chkconfig zabbix_agentd  on

  

修改zabbix開機啓動腳本中的zabbix安裝目錄

 

# vim /etc/rc.d/init.d/zabbix_agentd
修改下面兩處
 BASEDIR=/usr/local/zabbix/
PIDFILE=/usr/local/zabbix/logs/$BINARY_NAME.pid

 

 

# systemctl daemon-reload 

編輯zabbix_agentd.conf

 

# vi /usr/local/zabbix/etc/zabbix_agentd.conf

  

 PidFile=/usr/local/zabbix/logs/zabbix_agentd.pid
LogFile=/usr/local/zabbix/logs/zabbix_agentd.log
Server=192.168..92.129
ServerActive=192.168.92.129
Hostname=192.168.92.130
Timeout=15
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/

注:

其中ServerServerActive都指定zabbixserverIP地址,不一樣的是,前者是被動後者是主動。也就是說Server這個配置是用來容許192.168.31.225這個ip來我這取數據。而serverActive192.168.31.225的意思是,客戶端主動提交數據給他。

Hostname=XXX,這個定義的名字必須和web頁面裏面host的名字同樣。

啓動zabbix_agentd:

  

# /etc/init.d/zabbix_agentd start
Starting zabbix_agentd (via systemctl):                    [  肯定  ]
# netstat -anpt | grep zabbix_agentd
tcp        0      0 0.0.0.0:10050           0.0.0.0:*               LISTEN      60832/zabbix_agentd  

zabbix客戶端要麼關閉防火牆,要麼作防火牆規則

 

到此,zabbix3.2.1監控系統的基本環境安裝完成

實現zabbix添加監測項

添加對Linux主機的監控

在瀏覽器中打開:http://192.168.92.129/zabbix

登陸zabbix,先在配置」-「主機裏添加主機監控,監控os資源:內存,cpuio,負載,帶寬等.

登陸zabbix,先在配置」-「主機單擊」建立主機」

 

 

注意:下圖中的主機名稱要和zabbix_agentd.conf文件中設置的Hostname」後面的名稱一致!

主機名稱:192.168.92.130

羣組:Linux servers

agent代理程序接口ip192.168.92.130

已啓用:勾選

其它選項默認便可

切換到模板

 

 

 

 未完,待續。。。。。。。。。。。。。。。。。。。

相關文章
相關標籤/搜索