服務器監控系統——Zabbix

Zabbix監控系統

安裝配置Zabbix監控系統

1.安裝好LNMP或者LAMP架構(yum安裝幾乎不會出現下面一些報錯,這裏我是用的源碼編譯安裝搭建的LAMP框架,源碼編譯安裝LAMP可以去看我前面的文章)

yum -y install httpd mysql-server mysql mysql-devel php php-mysql

2.配置php的配置文件

vim /etc/php.ini

date.timezone = "Asia/Shanghai"
max_execution_time = 300
post_max_size = 32M
max_input_time = 300
memory_limit = 128M
mbstring.func_overload = 2
always_populate_raw_post_data = -1

3.創建zabbix用戶和zabbix日誌文件和配置文件存放目錄

groupadd zabbix

useradd -g zabbix zabbix -s /sbin/nologin

mkdir /etc/zabbix/logs /etc/zabbix

chown zabbix.zabbix /etc/zabbix/logs

4.安裝zabbix需要的依賴包

yum -y install gcc ggc-c++ autoconf httpd-manual mode_ssl mode_perl mode_auth_mysql php-gd php-xml php-pear php-xmlrpc mysql-connector-connector-odbc libdbi-dbd-mysql net-snmp-devel curl-devel unixODBC-devel java-devel openldap openldap-devel php-pdo ncurses-devel mysql-devel mysql-share

yum -y install OpenIPMI OpenIPMI-devel OpenIPMI-libs php-bcmath php-mbstring

5.編譯安裝zabbix

tar zxf zabbix-4.0.20.tar.gz

cd zabbix-4.0.20

./configure --prefix=/usr/local --sysconfdir=/etc/zabbix --enable-server --enable-proxy --enable-agent --enable-ipv6 --with-mysql=/usr/bin/mysql_config --with-net-snmp --with-libcurl --with-openipmi --with-unixodbc --with-ldap --enable-java

make && make install

補充:會遇到的報錯問題,及解決方法

報錯:configure: error: Not found mysqlclient library

解決方法:yum -y install mysql-devel mysql-share

報錯:configure: error : Not found NET-SNMP library

解決方法:yum -y install net-snmp-devel

6.創建zabbix服務

複製軟件包裏的服務工具

cp misc/init.d/fedora/core/zabbix_* /etc/init.d/

chmod 755 /etc/init.d/zabbix_*

7.修改zabbix服務端配置文件

vim /etc/zabbix/zabbix_server.conf

LogFile=/etc/zabbix/logs/zabbix_server.log #日誌文件位置
DBHost=localhost  #數據庫主機ip
DBName=zabbix    #數據庫名字
DBUser=zabbix    #數據庫用戶
DBPassword=zabbix  #數據庫的密碼
DBSocket=/var/lib/mysql/mysql.sock 
DBPort=3306 #數據庫端口

8.創建配置zabbix_agentd服務端服務

vim /etc/zabbix/zabbix_agentd.conf

LogFile=/etc/zabbix/logs/zabbix_agentd.log  #日誌文件位置
Server=127.0.0.1    #服務端IP地址,如不在本地這需填寫遠程地址
ServerActive=127.0.0.1:10051   #服務端服務端IP地址及端口
Hostname=super.renjie.vip     #主機名
UnsafeUserParameters=0       #不啓用自定義腳本功能,開啓則爲1
Include=/etc/zabbix_agentd.conf.d/  #定義agentd配置文件位置

9.建立zabbix的數據庫

mysql -uroot -p123456

mysql> create database zabbix character set utf8 collate utf8_bin;(這一步如果直接創建數據庫沒有加上utf8編碼的話,後面登錄數據庫可能也會出現問題)

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

mysql> exit

導入安裝包裏的數據庫

mysql -uzabbix -pzabbix zabbix < /my/zabbix/database/mysql/schema.sql

mysql -uzabbix -pzabbix zabbix < /my/zabbix/database/mysql/images.sql

mysql -uzabbix -pzabbix zabbix < /my/zabbix/database/mysql/data.sql

注意:導入的順序不要變

10.完成zabbix的web頁面配置部署

複製安裝包裏的php部署頁面到apache網站頁面的目錄下

cp -rf /my/zabbix/frontends/php/ /usr/local/httpd/htdocs/zabbix

chown -R apache:apache /usr/local/httpd/htdocs/zabbix/

注意:這裏要看你的httpd.conf配置文件中的user和group組是什麼

11.訪問網頁進入到zabbix的web頁面(如下圖,初次先進行安裝)

解決Check of pre-requisites步驟一系列錯誤(主要針對源碼編譯安裝搭建的LAMP或者LNMP框架)

問題一:PHP mbstring off Fail

這個只需要重新編譯php加上mbstring模塊就行

--enable-mbstring選項是添加該模塊

問題二:PHP bcmath off Fail

這個只需要重新編譯php加上mbstring模塊就行

--enable-mbstring選項是添加該模塊

問題三:PHP sockets off Fail

這個只需要重新編譯php加上sockets模塊就行

--enable-sockets 選項是添加該模塊

問題四:PHP gd FreeType support off Fail

wget https://download.savannah.gnu.org/releases/freetype/freetype-2.4.0.tar.gz

tar zxf freetype-2.4.0.tar.gz

cd freetype-2.4.0

mkdir -p /usr/local/include/freetype2/freetype/internal

./configure --prefix=/usr/local/freetype --enable-static --enable-shared

make && make install

然後到下載的解壓出來的php目錄下重新編譯安裝

--with-freetype-dir=選項是指定你安裝的目錄我這裏安裝的目錄是/usr/local/freetype/

./configure --prefix=/usr/local/php5 --with-mcrypt --with-apxs2=/usr/local/httpd/bin/apxs --with-gd --with-curl --with-zlib --with-zlib-dir --with-mysqli --with-mysql=/usr/local/mysql --with-config-file-path=/usr/local/php5 --enable-mbstring --enable-fpm --enable-bcmath --enable-sockets --enable-shared --with-jpeg-dir --with-png-dir --with-gettext --with-freetype-dir=/usr/local/freetype/

make && make install

注意:這裏添加的模塊,少了也會有錯誤,就不能支持zabbix的要求(我這裏是源碼編譯安裝搭建的LAMP架構,如果是yum安裝搭建的LAMP直接下載少了的依賴包就好)

其他問題:注意我第二部的php配置文件的修改也會在Check of pre-requisites步驟中出現fail去修改一下php配置文件就行

安裝步驟完成之後(如下圖所示)

12.啓動server和agentd服務

service zabbix_server start

service zabbix_agentd start

如果出現報錯(如下圖所示)

說明放日誌的目錄的權限不夠

解決方法:chmod 775 /etc/zabbix/logs

13.查看端口號是否正常開啓:netstat -anpt |grep zabbix

如果沒有正常開啓則查看zabbix_server.log或zabbix_agentd.log日誌文件

如果出現以下報錯(下圖所示)

解決方法

mkdir /var/lib/mysql

ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock

service mysqld restart

zabbix_agentd代理程序的安裝(這裏我就不詳細講解了,配置參數會跟上面有所不同)

在別的服務端安裝這個程序可以增加監控的對象,可以在需要監控的服務器上安裝這個代理程序

useradd -s /sbin/nologin -M zabbix

mkdir /var/log/zabbix /etc/zabbix

chown zabbix.zabbix /var/log/zabbix/

tar zxf zabbix-4.0.20.tar.gz

cd zabbix-4.0.20

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

make && make install

cp misc/init.d/fedora/core/zabbix_agentd /etc/init.d/

chmod 755 /etc/init.d/zabbix_agentd

vim /etc/zabbix/zabbix_agentd.conf

LogFile=/var/log/zabbix/zabbix_agentd.log
Server=127.0.0.1,192.168.11.25  #寫服務端ip和本地代理程序ip
ServerActive=192.168.11.25:10051  #這裏寫服務端ip和端口
UnsafeUserParameters=1

ln -s /usr/local/zabbix/sbin/zabbix_agentd /usr/local/sbin

service zabbix_agentd start

補充:啓用中文界面以及解決zabbix中文亂碼

yum groupinstall "Chinese Support"

先把中文字體文件.TTF文件下下來複制到zabbix網頁目錄的fonts目錄下,然後修改defines.inc.php文件參數

在Windows上的C:\Windows\Fonts\目錄中就有你可以去你的電腦上拖到zabbix服務器上

find /usr/local/httpd/htdocs/zabbix/ -name "fonts"

mv /root/MSYH.TTC /usr/local/httpd/htdocs/zabbix/assets/fonts/msyh.ttf

chmod 777 /usr/local/httpd/htdocs/zabbix/assets/fonts/msyh.ttf

vim /usr/local/httpd/htdocs/zabbix/include/defines.inc.php

sed -i 's/DejaVuSans/msyh/g' /usr/local/httpd/htdocs/zabbix/include/defines.inc.php

然後就可以查看你監控的服務器CPU、磁盤情況等等等等你想要監控的項目(如下圖所示)

這個是監控磁盤佔用和空閒

這個是監控cpu使用情況

還有很多功能包括web檢測各種服務檢測等

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