CentOS64位6.4下部署Zabbix2.2.6監控系統(非分佈式)

環境:

CentOS 6.4 64bit

Zabbix 2.2.6

下載安裝包

wget http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.2.6/zabbix-2.2.6.tar.gz

主機IP:192.168.3.253 

二、zabbix服務器端yum安裝 Apache、PHP、MySQL

安裝 Apache

yum install httpd httpd-manual

將 Apache 設置爲開機自動啓動

chkconfig  httpd on 

安裝 PHP

yum install php php-bcmath php-gd php-xml 

安裝fping

wget http://fping.org/dist/fping-3.10.tar.gz

./configure 

make && make install

##########################################################################################

編譯安裝PHP5.5.16和Nginx整合

 

cd  /php-5.5.16/

./configure --prefix=/usr/local/php  --enable-fpm --with-mcrypt --enable-mbstring --disable-pdo --with-curl --disable-debug  --disable-rpath --enable-inline-optimization --with-bz2  --with-zlib --enable-sockets --enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex --with-mhash --enable-zip --with-pcre-regex --with-mysql --with-mysqli --with-gd --with-jpeg-dir --with-bcmath --with-freetype-dir --with-gettext

make && make install

cd /usr/local/php/etc/

cp ./php-fpm.conf.default ./php-fpm.conf

cp /root/php-5.5.16/php.ini-production ./php.ini

vi ./php-fpm.conf

user = zabbix

group = zabbix (修改php-fpm的運行用戶,使得其和nginx的運行用戶一致,避免造成web無法訪問.php文件)

vi /etc/php.ini    找到如下幾項,改成下面的值,前面有;號的要刪掉 

max_execution_time = 300

date.timezone = Asia/Shanghai 

post_max_size = 32M

memory_limit = 128M

mbstring.func_overload = 2

###########################################################################################

編譯安裝Nginx

./configure --prefix=/usr/local/nginx

make && make install

vi /usr/local/nginx/conf/nginx.conf

在server段中註明root /home/zabbix/www

location ~ \.php$ {

root /home/zabbix/www;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME /home/zabbix/www$fastcgi_script_name; (紅色部分也可以用用$document_root表示)

include fastcgi_params;

}

###############################################################################################

安裝 MySQL

yum install mysql-server.x86_64 mysql.x86_64 php-mysql.x86_64 mysql-devel php-mysql mysql-libs

啓動 MySQL

service mysqld start 

設置 MySQL root 密碼

mysql -uroot -p

mysql> UPDATE user SET password = PASSWORD('123456') WHERE user = 'root';

mysql> FLUSH PRIVILEGES;

設置MySQL開機自動啓動

chkconfig  mysqld on 

建立zabbix數據庫並設置zabbix賬戶及相關權限

mysql> use mysql;

mysql>create database zabbix character set utf8;

mysql>grant all privileges on zabbix.* to zabbix@'localhost' identified by '123456';

mysql>flush privileges;

導入zabbix數據

mysql>use zabbix

mysql>source /home/zabbix/schema.sql

mysql>source /home/zabbix/data.sql

mysql>source /home/zabbix/images.sql

三、安裝用於編譯 Zabbix 的軟件及庫

安裝 MySQL 的頭文件及庫文件

yum install mysql-devel.x86_64 

安裝 net-snmp

yum install net-snmp net-snmp-devel net-snmp-utils  

安裝 curl

yum install curl curl-devel

安裝 gcc

yum install gcc libgcc libgcc

安裝 make

yum install make  

四、源碼編譯安裝zabbix

創建zabbix用戶和用戶組

groupadd zabbix

useradd -g zabbix -m zabbix

安裝zabbix

tar -xvf zabbix-2.2.4.tar.gz

cd zabbix-2.2.4

./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl 

make && make install

添加服務端口,添加後如下

 vi /etc/services

在文件前面添加如下的內容:

zabbix-agent    10050/tcp                       # Zabbix Agent

zabbix-agent    10050/udp                      # Zabbix Agent

zabbix-trapper  10051/tcp                       # Zabbix Trapper

zabbix-trapper  10051/udp                      # Zabbix Trapper

添加配置文件

mkdir -p /etc/zabbix

cp ./misc/conf/* /etc/zabbix

chown -R zabbix:zabbix /etc/zabbix

修改Server配置文件

基本不用修改,用默認配置即可,只需修改/etc/zabbix/zabbix_server.conf和zabbix_agentd.conf兩個文件裏面的一項DBPassword=密碼

vi /etc/zabbix/zabbix_server.conf

修改後內容如下:

LogFile=/tmp/zabbix_server.log

DBName=zabbix

DBUser=zabbix

DBPassword=123456

修改Agentd配置文件,更改HOST NAME 爲本機的hostname就好了

#vi /etc/zabbix/zabbix_agentd.conf

修改後內容如下

LogFile=/tmp/zabbix_agentd.log

Server=127.0.0.1                                        #監控服務器的IP地址

Hostname=localhost                                    #監控服務器的hostname

添加web前端php文件

cd frontends/

cp  php/* /var/www/html/

chown -R zabbix:zabbix /var/www/html

web端安裝配置

修改php相關參數

vi /etc/php.ini    找到如下幾項,改成下面的值,前面有;號的要刪掉

max_execution_time = 300

date.timezone = Asia/Shanghai

post_max_size = 32M

memory_limit = 128M

mbstring.func_overload = 2

重啓apache

service httpd restart

在瀏覽器上訪問Zabbis Serve地址http://ServerIP

按提示一步步操作,其中Step 3 必須全部項目OK後才能繼續配置,如有提示fail,則檢查是否安裝這個包或配置是否按前面的步驟修改

提示mbstring、xmlreader和xmlwriter不可用,需要安裝php-xml和mbstring

yum install –y php-xml  php-mbstring就可以了

Step 4 填入Zabbix登陸mysql的用戶和密碼   

host:localhost     user:zabbix      pass:123456

Step 7 按提示下載配置文件到Server的/var/www/html/conf下,名字必須爲zabbix.conf.php,當提示不能保存時,一般是目錄權限不夠,chmod修改目錄權限就可以。

配置完成後,出現登陸界面,默認的

用戶:admin,密碼:zabbix

現在看到的界面,本機的服務和監控是not running的,點擊Configuration、Hosts看到的Zabbix Server的Status狀態爲Not monitored,可以點擊Not monitored按鈕將其設置成Monitored

##################################顯示中文#######################################################

如要設置中文,zabbix在後期版本已經將中文選項屏蔽,需要手動修改配置文件,再通過頁面設置:

1、修改zabbix的web端

 vi /home/zabbix/www/include/locales.inc.php

將'zh_CN' => array('name' => _('Chinese (zh_CN)'),        'display' => false)中的值false改爲true後保存。

2、點擊:右上角Profile,選擇Chinese(zh_CN),保存。

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

a.從windows下控制面板->字體->選擇一種中文字庫,例如“微軟雅黑”

b.把它拷貝到zabbix的web端的fonts目錄下例如:/usr/local/apache2/htdocs/zabbix/fonts,並且把TTF後綴改爲ttf

c.修改zabbix的web端 include/defines.inc.php

 vi /home/zabbix/www/include/defines.inc.php

搜索 'DejaVuSans'

用"//"註釋掉系統默認行,並添加新的字體參數行。

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

//define('ZBX_FONT_NAME', 'DejaVuSans');

define('ZBX_FONT_NAME', 'msyh');

 

//define('ZBX_GRAPH_FONT_NAME', 'DejaVuSans');

define('ZBX_GRAPH_FONT_NAME', 'msyh');

###########################################################################################

啓動zabbix Server服務

安裝完成後的server程序在/usr/local/zabbix/sbin/目錄下,可以直接啓動,完整的啓動命令爲

/usr/local/zabbix/sbin/zabbix_server     -c     /etc/zabbix/zabbix_server.conf

檢查端口是否開啓偵聽

netstat -tnlp |grep LISTEN

tcp        0      0 127.0.0.1:10051             0.0.0.0:*                   LISTEN      4241/zabbix_server

/usr/local/zabbix/sbin/zabbix_agentd     -c     /etc/zabbix/zabbix_agentd.conf

netstat -tnlp |grep LISTEN

tcp        0      0 0.0.0.0:10050               0.0.0.0:*                   LISTEN      4299/zabbix_agentd

設置服務開機啓動

vi /etc/rc.d/rc.local

/usr/local/zabbix/sbin/zabbix_server     -c     /etc/zabbix/conf/zabbix_server.conf

/usr/local/zabbix/sbin/zabbix_agentd     -c     /etc/zabbix/conf/zabbix_agentd.conf


如未發現偵聽開啓,可以查看/tmp/下zabbix日誌

server服務未成功開啓,一般問題是zabbix連接mysql數據庫錯誤

開啓zabbix的服務後,刷新Web界面,如發現zabbix server is running的value值爲No時,將selinux關閉並重啓服務器

vi /etc/sysconfig/selinux修改selinux=disabled,重啓服務器

如重啓後發現zabbix server is running的value值仍爲No,則可嘗試修改統一/etc/zabbix和/var/www/html中有關Server的配置,一般設置爲Server=127.0.0.1和$ZBX_SERVER      = '127.0.0.1'即可。


######################################添加被監控主機#####################################

監控windows主機:

下載地址:http://www.zabbix.com/downloads/2.2.6/zabbix_agents_2.2.6.win.zip

在C:\Program Files\下創建zabbix文件夾

解壓zip包後:將包內bin/win64/下的所有文件複製到 C:\Program Files\zabbix下

並在該目錄下創建一個zabbix_agentd.conf文件,內容爲

LogFile=C:\Program Files\zabbix\zabbix_agentd.log

Server=  $zabbix server IP

UnsafeUserParameters=1

進入cmd命令行:

# cd C:\Program Files\zabbix

安裝zabbix客戶端:

# zabbix_agentd.exe -c "c:\Program Files\zabbix\zabbix_agentd.conf" -i

啓動zabbix客戶端agentd服務:

# zabbix_agentd.exe -c "c:\Program Files\zabbix\zabbix_agentd.conf" -s

參數含義:

-c    制定配置文件所在位置

-i    安裝客戶端

-s    啓動客戶端

-x    停止客戶端

-d    卸載客戶端

然後在zabbix的web頁面添加windows主機。

監控Linux主機:

安裝zabbix,啓用agent 

wget http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.2.6/zabbix-2.2.6.tar.gz

tar -xvf zabbix-2.2.6.tar.gz

cd  zabbix-2.2.6

./configure --prefix=/usr/local/zabbix --enable-agent

make && make install

useradd zabbix 

mkdir -p /etc/zabbix

cp ./conf/* -R /etc/zabbix/

chown -R zabbix:zabbix /etc/zabbix

chown -R zabbix:zabbix /usr/local/zabbix

vi /etc/zabbix/zabbix_agentd.conf

ListenPort = 10050

Server = $zabbix server IP

Server Active = $zabbix server IP

HostName = localhost

啓動zabbix客戶端agentd

/usr/local/zabbix/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf

查看進程和端口是否存在

ps-ef|grep zabbix_agentd

netstat -tnlp|grep 10050

然後在zabbix的web頁面添加Linux主機。

##########################Web頁面添加主機步驟############################################

1、"組態"-->"主機"-->"創建主機"

2、填寫主機名稱及IP地址,添加“羣組”,在“模板”中“選擇”並“添加”模板後“存檔”。

##########################zabbix設置郵件告警##############################################

[root@localhost ~]# cat /etc/hosts

127.0.0.1 wonhot30.com localhost.localdomain localhost

[root@localhost ~]# cat /etc/mail/access

# Check the /usr/share/doc/sendmail/README.cf file for a description

# of the format of this file. (search for access_db in that file)

# The /usr/share/doc/sendmail/README.cf is part of the sendmail-doc

# package.

#

# by default we allow relaying from localhost...

Connect:localhost.localdomain RELAY

Connect:localhost RELAY

Connect:127.0.0.1 RELAY

Connect:wonhot30.com RELAY

 

[root@localhost ~]# cat /etc/mail/local-host-names

wonhot30.com

 

驗證:

# telnet 127.0.0.1 25

查看進程

[root@localhost ~]# ps aux|grep sendmail

 

修改完成後,重啓sendmail服務,通過telnet命令,測試一下看看是否已生效

[root@localhost ~]# telnet 127.0.0.1 25

Trying 127.0.0.1...

Connected to wht.com (127.0.0.1).

Escape character is '^]'.

220 monit.com ESMTP Sendmail 8.13.8/8.13.8; Tue, 12 Jun 2012 18:28:27 +0800

從以上結果可以發現,localhost.localdomain 已經變成了 wht.com這個域名,設置完成!

 

接下來就可以在zabbix 的管理頁面上進行Email 報警設置了。

SMTP server:

wht.com 

SMTP hello:

wht.com

SMTP email:

[email protected]

設置完成後點擊保存按鈕

然後高級配置——用戶設置用戶的報警介質,添加Email

新建一個action,報警方式選擇Email,設置觸發器閥值等,保存測試即可!

######################################################################################


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