Zabbix安裝和配置

前言:最近一直忙着監控系統的事,如今最大的感覺是,環境搭建不是最難的,難的是後期的怎麼去監控,怎麼利用監控系統把衆多服務器監控器起來,怎麼開發腳本和Zabbix配合去監控上層服務,如中間件,數據庫,JVM等;這些是後話,很少說了,下面是Zabbix 3.2.4的部署方法,作一下簡單總結。php

這裏使用C/S架構:html

環境:前端

服務器軟件:Linux(RED HAT)6.五、Nginx 1.10.三、PHP 5.6.2九、Mysql 5.5.53java

應用軟件:Zabbix 3.2.4mysql

或者使用(Linux+Apache+PHP+Mysql)可換成其餘數據庫,Zabbix支持衆多數據庫,你們能夠到官方網站去查詢。linux

1 Mysql部署

這裏使用mysql-5.5.53 glibc格式安裝nginx

1.1 建立用戶

# groupadd -r -g mysqlweb

# useradd -g mysql -M -r mysqlsql

1.2 建立數據目錄

# mkdir -pv /mydata/data數據庫

# chown -R mysql.mysql /mydata/data/

1.3 安裝並初始化

# tar -xf mysql-5.5.53-linux2.6-x86_64.tar.gz -C /usr/local/

# cd /usr/local/

# ln -sv mysql-5.7.15-linux-glibc2.5-x86_64/ mysql

# cd mysql

# chown -R mysql.mysql .

# scripts/mysql_install_db --user=mysql --datadir=/mydata/data

# chown -R root  .

1.4爲mysql提供主配置文件

# cd /usr/local/mysql

# cp support-files/my-large.cnf /etc/my.cnf

添加以下行指定mysql數據文件的存放位置:

datadir = /mydata/data

1.5爲mysql提供sysv服務腳本

# cd /usr/local/mysql

# cp support-files/mysql.server  /etc/rc.d/init.d/mysqld

# chmod +x /etc/rc.d/init.d/mysqld

添加至服務列表:

# chkconfig --add mysqld

# chkconfig mysqld on

然後就能夠啓動服務測試使用了。

1.6設置root密碼

設置root密碼:

# ./bin/mysqladmin -u root password 'new-password'

 

2 Zabbix部署

2.1 編譯安裝

# yum install cc gcc –y

# yum insatll libxml2-devel.x86_64 –y

# yum install net-snmp-devel.x86_64 -y

# tar xf zabbix-3.2.4.tar.gz

# cd zabbix-3.2.4

configure:

./configure --prefix=/usr/local/zabbix-3.2.4/ \

--enable-server \

--enable-agent \

--with-mysql \

--with-net-snmp \

--with-libcurl \

--with-libxml2 \

--enable-proxy \

--enable-java

根據狀況,安裝缺乏的開發庫。

編譯安裝:

# make install

2.2 建立zabbix用戶

# groupadd –r zabbix

# useradd -g zabbix –r zabbix

2.3 初始化zabbix數據庫

zabbix server與 proxy須要數據庫agent不須要。尤爲要注意的是 proxy只須要導入一個sql 文件而server一共要導入3個sql文件。

# mysql -uroot –pzabbix

mysql> create database zabbix default charset utf8;

新建用戶:

mysql> CREATE USER 'zabbix'@'127.0.0.1' IDENTIFIED BY 'zabbix';

mysql> GRANT all privileges ON zabbix.* TO 'zabbix'@'127.0.0.1' WITH GRANT OPTION;

mysql> flush privileges;

mysql> quit;

# mysql -uzabbix –pzabbix zabbix < database/mysql/schema.sql

建立數據庫請別忘記加 default charset utf8

若是你僅僅是初始化 proxy 的數據庫,那麼夠了。若是初始化 server,那麼接着導入下面兩個 sql

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

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

2.4 配置zabbix_server

配置zabbix_server配置文件,zabbix 源碼目錄下

# mkdir /etc/zabbix

# cp config/zabbix_server.conf /etc/zabbix/

# vim /etc/zabbix/zabbix_server.conf

ListenPort=10051

DBHost=127.0.0.1

DBName=zabbix

DBUser=zabbix

DBPassword= zabbix

DBPort=3306

2.5 啓動服務

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

默認端口 10051

3 PHP部署

3.1 安裝依賴包

yum install gd-devel libjpeg-devel libxml2-devel bzip2-devel libcurl-devel –y

yum install libpng-devel.x86_64 –y

yum install freetype-devel.x86_64 -y

3.2 編譯安裝

# yum install libxml2 -y

# tar -xf php-5.6.29.tar.gz

# cd php-5.6.29

# ./configure --prefix=/usr/local/php-5.6.29 \

--with-config-file-path=/usr/local/php-5.6.29/etc \

--with-bz2 \

--with-curl \

--enable-ftp \

--enable-sockets \

--disable-ipv6 \

--with-openssl \

--with-gd \

--with-jpeg-dir=/usr/local \

--with-png-dir=/usr/local \

--with-freetype-dir=/usr/local \

--enable-gd-native-ttf \

--with-iconv-dir=/usr/local \

--enable-mbstring \

--enable-calendar \

--with-gettext \

--with-libxml-dir=/usr/local \

--with-zlib \

--with-pdo-mysql=mysqlnd \

--with-mysqli=mysqlnd \

--with-mysql=mysqlnd --enable-dom \

--enable-xml \

--enable-fpm \

--with-libdir=lib64 \

--enable-bcmath

編譯安裝:

make

make install

3.3 配置php

# cp /usr/local/php-5.6.29/etc/php.ini-production /usr/local/php-5.6.29/etc/php.ini

# cp /usr/local/php-5.6.29/etc/php-fpm.conf.default /usr/local/php-5.6.29/etc/php-fpm.conf

PHP 配置參數

打開 php.ini 配置文件,修改以下參數爲以下值,不然 zabbix 安裝不了。

max_execution_time = 300

memory_limit = 128M

post_max_size = 16M

upload_max_filesize = 2M

max_input_time = 300

date.timezone = PRC

3.4 啓動服務

# /usr/local/php-5.6.29/sbin/php-fpm

查看是否啓動:

# netstat -lnt | grep 9000

tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN

4 Nginx部署

4.1 解決依賴關係

yum -y install pcre-devel.x86_64

yum -y install openssl-devel.x86_64

4.2 建立nginx用戶

添加用戶nginx,實現以之運行nginx服務進程
# groupadd -r nginx
# useradd -g nginx -r nginx

4.3 編譯和安裝

# tar xf nginx-1.10.3.tar.gz

# cd nginx-1.10.3

 

根據需求,須要哪些模塊,選擇模塊去編譯

./configure --prefix=/usr --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 --with-file-aio

# make

# make install

4.4 配置nginx

# vim /etc/nginx/nginx.conf

server {

listen 80;

server_name zabbix.com;

index index.html index.php index.html;

root /var/www/zabbix.com;

location /

{

try_files $uri $uri/ /index.php?$args;

}

location ~ ^(.+.php)(.*)$ {

fastcgi_split_path_info ^(.+.php)(.*)$;

include fastcgi.conf;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param PATH_INFO $fastcgi_path_info;

}

}

4.5 啓動服務

/usr/sbin/nginx

5 在線配置Zabbix

5.1 訪問配置頁面

拷貝前端文件:

# mkdir -pv /var/www/zabbix.com/zabbix

# cp –rf ./zabbix-3.2.4/frontends/* /var/www/zabbix.com/zabbix/

# chown -R zabbix.zabbix /var/www/zabbix.com

瀏覽器打開 http://zabbix.com/zabbix

歡迎界面:

 

 

5.2 PHP配置需求

 

 

出現上述錯誤解決方法:找到CFrontendSetup.php添加$current = -1;

/include/classes/setup/CFrontendSetup.php

 

 

 

 

5.3 Mysql配置

 

 

5.4 Zabbix服務器詳情信息

 

 

5.5 Zabbix安裝前信息列表

 

 

5.6 安裝完成

 

 

5.7 登陸系統

 

 

默認:admin zabbix

修改語言爲中文,亂碼問題解決方法:

拷貝windows下C:\Windows\Fonts\ simkai.ttf到zabbix站點目錄fonts下

修改include/defines.inc.php文件:

define('ZBX_FONT_NAME', 'DejaVuSans');後的結果:

define('ZBX_FONT_NAME', 'simkai');

修改define('ZBX_GRAPH_FONT_NAME',          'DejaVuSans');後的結果:

define('ZBX_GRAPH_FONT_NAME',           'simkai');

登錄後的界面以下:

 

 

 

 總結:環境搭建時,注意按照本身業務的需求去編譯軟件,能夠選擇不一樣的web服務器或數據庫去搭建;

    被監控服務器Zabbix-agentd安裝和配置這裏再也不贅述,使用rpm包安裝便可;

    上述文檔中沒有配置sysV風格的服務腳本,也能夠本身編寫或尋找服務器啓動的腳本;

    若是被監控服務器數量較多,服務器分佈在不一樣的地區,能夠選擇分佈式監控。

相關文章
相關標籤/搜索