环境说明

[root@centos ~]# cat /etc/redhat-release 
CentOS release 6.9 (Final)
[root@centos ~]# uname -a
Linux lb02 2.6.32-696.el6.x86_64 #1 SMP Tue Mar 21 19:29:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

服务端配置

第一个里程碑:在m01上部署LNP架构

cd /server/scripts
sh nginx_install.sh
sh php_install.sh

_nginx_install.sh _脚本内容

#!/bin/bash

# base setting
mkdir -p /server/tools

## install nginx
killall nginx
yum install -y pcre-devel openssl-devel
useradd -M -s /sbin/nologin www -u 501
cd /server/tools/
\rm  -rf /application/nginx-1.10.2
wget http://nginx.org/download/nginx-1.10.2.tar.gz
tar xf nginx-1.10.2.tar.gz
cd /server/tools/nginx-1.10.2
./configure --prefix=/application/nginx-1.10.2 --user=www --group=www --with-http_stub_status_module --with-http_ssl_module
make
make install
ln -sf  /application/nginx-1.10.2 /application/nginx
cd /application/nginx/conf/
egrep -v "#|^$" nginx.conf.default >nginx.conf

/application/nginx/sbin/nginx

_php_install.sh _脚本内容

#!/bin/bash

killall php-fpm
killall php-fpm

# devel anzhuang

yum install zlib-devel libxml2-devel libjpeg-devel libjpeg-turbo-devel libiconv-devel freetype-devel libpng-devel gd-devel libcurl-devel libxslt-devel -y
yum install -y zlib-devel libxml2-devel libjpeg-devel libjpeg-turbo-devel libiconv-devel freetype-devel libpng-devel gd-devel libcurl-devel libxslt-devel

# libiconv INSTALL

cd /server/tools

http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
tar zxf libiconv-1.14.tar.gz
cd libiconv-1.14
./configure --prefix=/usr/local/libiconv
make
make install

# by epel yum
yum -y install libmcrypt-devel mhash mcrypt
\rm -rf /application/php-5.5.32

##### install php
cd /server/tools/

# wget http://10.0.0.250/tools/php-5.5.32.tar.gz  
tar xf php-5.5.32.tar.gz
cd  /server/tools/php-5.5.32

#  set php config ##########################
./configure \
--prefix=/application/php-5.5.32 \
--with-mysql=mysqlnd \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-iconv-dir=/usr/local/libiconv \
--with-freetype-dir \
--with-jpeg-dir \
--with-png-dir \
--with-zlib \
--with-libxml-dir=/usr \
--enable-xml \
--disable-rpath \
--enable-bcmath \
--enable-shmop \
--enable-sysvsem \
--enable-inline-optimization \
--with-curl \
--enable-mbregex \
--enable-fpm \
--enable-mbstring \
--with-mcrypt \
--with-gd \
--enable-gd-native-ttf \
--with-openssl \
--with-mhash \
--enable-pcntl \
--enable-sockets \
--with-xmlrpc \
--enable-soap \
--enable-short-tags \
--enable-static \
--with-xsl \
--with-fpm-user=www \
--with-fpm-group=www \
--enable-ftp \
--enable-opcache=no \
--with-gettext

#  fangchuo
#ln -s /application/mysql/lib/libmysqlclient.so.18  /usr/lib64/
touch ext/phar/phar.phar
make && make install

ln -sf /application/php-5.5.32 /application/php

cd /server/tools/php-5.5.32
\cp php.ini-production /application/php/lib/php.ini
cd /application/php/etc/
\cp php-fpm.conf.default php-fpm.conf

/application/php/sbin/php-fpm

第二个里程碑:创建zabbix运行所需的用户

useradd zabbix -M -s /sbin/nologin  -u 1010

   第三个里程碑:创建所需数据库和授权用户

   _数据库分离,zabbix_与数据库不再同一台主机,数据库的安装方式,请参考我的博文。

mysql> create database zabbix character set utf8;
mysql> grant all on zabbix.* to zabbix@'172.16.1.0/255.255.255.0'  identified by  'oldboy123';
mysql> flush privileges;

第四个里程碑:下载zabbix源码包编译安装

# 安装依赖关系

yum install libdbi-dbd-mysql  mysql-devel net-snmp-devel -y 

#安装zabbix

wget https://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.2.20/zabbix-2.2.20.tar.gz
tar zxf zabbix-2.2.20.tar.gz
cd zabbix-2.2.20
./configure –prefix=/application/zabbix-2.2.20 –enable-server –enable-agent –with-net-snmp –with-libcurl –with-mysqli=mysqlnd –with-mysql=mysqlnd

make && make install

第五个里程碑:创建软连接

ln -sf /application/zabbix-2.2.20 /application/zabbix

第六个里程碑:将导入数据导入数据库

cd /server/tools/zabbix-2.0.6/database/mysql/
mysql -uzabbix -poldboy123 zabbix -h 10.0.0.51 < schema.sql
mysql -uzabbix -poldboy123 zabbix -h 10.0.0.51 < images.sql
mysql -uzabbix -poldboy123 zabbix -h 10.0.0.51 < data.sql

第七个里程碑:定义服务端口

vim /etc/services        ##末尾添加以下内容

zabbix-agent    10050/tcp               # Zabbix Agent
zabbix-agent    10050/udp               # Zabbix Agent
zabbix-trapper  10051/udp               # Zabbix Trapper
zabbix-trapper  10051/tcp               # Zabbix Trapper

第八个里程碑:修改配置文件

#vim /application/zabbix/etc/zabbix_server.conf
#egrep -v "#|^$" /application/zabbix/etc/zabbix_server.conf

LogFile=/tmp/zabbix_server.log
PidFile=/tmp/zabbix_server.pid
DBHost=172.16.1.51
DBName=zabbix
DBUser=zabbix
DBPassword=oldboy123

第九个里程碑:复制启动脚本

cd /server/tools/zabbix-2.2.20
cp -a misc/init.d/fedora/core/zabbix_server /etc/init.d/zabbix

第十个里程碑:修改启动脚本

vim /etc/init.d/zabbix_server
    BASEDIR=/application/zabbix     //zabbix的安装位置
CONFILE=$BASEDIR/etc/zabbix_server.conf //定义zabbix配置文件位置

##搜索 start这一项,修改启动选项

# functions
start() {
        if [ $RUNNING -eq 1 ]
               then
                echo “$0 $ARG: $BINARY_NAME (pid $PID) already running”
        else
                action $“Starting $BINARY_NAME: “ $FULLPATH -c $CONFILE      //这一行添加-c $CONFILE
                touch /var/lock/subsys/$BINARY_NAME
    fi
}

# 将服务写入开机自启动

echo “/etc/init.d/zabbix start” >> /etc/rc.local

第十一个里程碑:复制web代码到站点目录

rsync -az /server/tools/zabbix-2.2.20/frontends/php/  /application/nginx/html/zabbix/

注意修改站点目录的属组,否则安装的时候会有问题

chown  -R www.www /application/nginx/html/

第十二个里程碑:启动服务

[root@m01 init.d]# /etc/init.d/zabbix start
Starting zabbix_server:                                    [  OK  ]

第十三个里程碑:修改php配置文件

cd /application/php/lib/
sed -i '/^;default_charset/a\default_charset = "UTF-8"'  php.ini
sed -i '/^expose_php/cexpose_php = Off' /etc/php.ini
sed -i '/^max_execution_time/cmax_execution_time = 300'  php.ini
sed -i '/^max_input_time/cmax_input_time = 300'  php.ini
sed -i '/^memory_limit/cmemory_limit = 256M'   php.ini
sed -i '/^post_max_size/cpost_max_size = 32M'  php.ini
sed -i '/^upload_max_filesize/cupload_max_filesize = 300M'  php.ini
sed -i '/^max_file_uploads/cmax_file_uploads = 30'  php.ini
sed -i '/^;date.timezone/cdate.timezone = "PRC"'  php.ini

   修改网php配置文件后,重启php服务。

   第十四个里程碑:进行软件配置配置

      1)使用浏览器访问,配置好的web站点

 zabbix 2.2.20 安装详解(Centos6.9)

      2)检查php相关配置是否正确

zabbix 2.2.20 安装详解(Centos6.9)

      3)输入数据库的相关信息

zabbix 2.2.20 安装详解(Centos6.9) 

      4)设置本地的相关信息

zabbix 2.2.20 安装详解(Centos6.9) 

      5)确认相关信息

 zabbix 2.2.20 安装详解(Centos6.9)

      6)zabbix服务器安装完成

zabbix 2.2.20 安装详解(Centos6.9)

      7)修改模式显示为中文。

zabbix 2.2.20 安装详解(Centos6.9) 

      8)选择Chinese即可

 zabbix 2.2.20 安装详解(Centos6.9)

服务端配置到此结束。

客户端配置

   第一个里程碑:下载客户端,并进行安装

mkdir -p /application/zabbix_agents  /server/tools
cd /server/tools
wget http://www.zabbix.com/downloads/2.0.6/zabbix_agents_2.0.6.linux2_6.amd64.tar.gz
tar xf zabbix_agents_2.0.6.linux2_6.amd64.tar.gz  -C /application/zabbix_agents/

第二个里程碑:修改客户端配置文件

[root@web03 conf]# tail -4 /application/zabbix_agents/conf/zabbix_agentd.conf
LogFile=/tmp/zabbix_agentd.log
Server=172.16.1.61  #管理主机地址
ServerActive=172.16.1.61 #主动管理主机地址
Hostname=172.16.1.9   #客户机地址

第三个里程碑:将启动脚本推送到被管理端

[root@m01 scripts]# rsync -avz  /server/tools/zabbix-2.2.20/misc/init.d/fedora/core/zabbix_agentd  172.16.1.9:/etc/init.d/zabbix_agentd
sending incremental file list
zabbix_agentd

sent 1139 bytes  received 31 bytes  780.00 bytes/sec
total size is 2170  speedup is 1.85

修改启动脚本中的内容

   

     # Zabbix-Directory

        BASEDIR=/application/zabbix_agents

        CONFILE=$BASEDIR/conf/zabbix_agentd.conf

##搜索 start这一项,修改启动选项

# functions
start() {
        if [ $RUNNING -eq 1 ]
               then
                echo “$0 $ARG: $BINARY_NAME (pid $PID) already running”
        else
                action $“Starting $BINARY_NAME: “ $FULLPATH -c $CONFILE      //这一行添加-c $CONFILE
                touch /var/lock/subsys/$BINARY_NAME
    fi
}

第四个里程碑:启动服务

在启动服务之前,需要创建一个zabbix用户,不然会提示没有zabbix用户是启动不起来的

useradd zabbix -M -s /sbin/nologin  -u 1010

启动服务,并写入开机自启动

/etc/init.d/zabbix_agentd start
echo '/etc/init.d/zabbix_agentd start' >>/etc/rc.local

客户端配置到此结束。

web管理配置

   第一个里程碑:添加主机

zabbix 2.2.20 安装详解(Centos6.9) 

   第二个里程碑:全克隆主机模板,快速添加新的主机。

zabbix 2.2.20 安装详解(Centos6.9) 

   web界面的更多配置可以参照官网。https://www.zabbix.com/documentation/3.4/zh/start

 

?问题:

      改为中文界面后发现图像中的中文

zabbix 2.2.20 安装详解(Centos6.9)

原因是由于zabbix的web前端没有中文字体,所以需要给他添加一个中文字符集。

解决办法:

 1)在windwos中找到提取一共中文字体集

      在windows的资源管理器地址栏中输入 C:\Windows\Fonts

 zabbix 2.2.20 安装详解(Centos6.9)

 2)选择一个喜欢的中文字体,复制。保存一下,然后上传到服务器的zabbix站点目录下的fonts 目录中。

[root@m01 ~]# cd  /application/nginx/html/zabbix/fonts/

[root@m01 fonts]# ls
DejaVuSans.ttf

3)将上传的字体文件改名为DejaVuSans.ttf(注意原文件备份)

[root@m01 fonts]# mv   xxx.ttf  DejaVuSans.ttf

 4)然后刷新浏览器即可。