Centos 6.8下安装zabbix 3.2.3 (一)

此处只是记录安装步骤,安装环境不同可能会出现一些不同的报错,遇到报错先看清楚报错信息,根据实际情况调整就行。

理论性的东西以及安装方法可以多参考官方文档https://www.zabbix.com/documentation/3.2/manual

1、系统环境

    操作系统:centos 6.8 minimal

    软件版本:zabbix 3.2.3

    web环境:lamp(httpd 2.4.4,mysql 5.6.21,php 5.6.3)

2、系统初始化配置

    yum源更换(根据需求自己调整,我用的是阿里的yum源)

    minimal系统缺少一些软件,可以安装几个常用的(vim,wget,gcc)

    关闭selinux,防火墙添加允许80

3、安装lamp环境

    参考站内链接:lamp安装

4、安装net-snmp

    编译zabbix需要加–with-net-snmp,所以先编译一个net-snmp

编译net-snmp用到了--with-python-modules,minimal系统编译这个
会提示缺少setuptools,先安装一个setuptools
wget https://bootstrap.pypa.io/ez_setup.py -O - | python

下面安装net-snmp
tar -zxvf net-snmp-5.6.2.1.tar.gz
cd net-snmp-5.6.2.1
./configure --prefix=/usr/local/net-snmp \
--enable-developer --with-mib-modules=ucd-snmp/diskio \
-enable-mfd-rewrites --with-perl-modules \
--with-python-modules
make && make install

加下系统变量:
echo "export PATH=$PATH:/usr/local/net-snmp/bin" >> /etc/profile
source /etc/profile
做几个软连接方便使用:
ln -s /usr/local/net-snmp/bin/snmp* /usr/local/bin/
ln -s  /usr/local/net-snmp/lib/libnetsnmp* /usr/lib/
ln -s  /usr/local/net-snmp/lib/libnetsnmp* /usr/lib64/

复制一个从源码中复制一个snmpd.conf到下面目录,并启动
/usr/local/net-snmp/sbin/snmpd -c /usr/local/net-snmp/share/snmp/snmpd.conf

还可以给以上命令添加到rc.local开机启动:
echo "/usr/local/net-snmp/sbin/snmpd -c /usr/local/net-snmp/share/snmp/snmpd.conf" >> /etc/rc.local

5、安装zabbix

    自己去zabbix官网下载zabbix-3.2.3.tar.gz就可以

tar zxvf zabbix-3.2.3.tar.gz
cd zabbix-3.2.3
groupadd zabbix
useradd -g zabbix zabbix -s /sbin/nologin
ln -s /usr/local/curl/bin/curl* /usr/local/bin #方便--with-libcurl使用
./configure --prefix=/usr/local/zabbix --enable-agent --enable-server \
--sysconfdir=/etc/zabbix \
--with-mysql=/usr/local/mysql/bin/mysql_config \
--with-net-snmp --with-libcurl --with-libxml2
make && make install

--enable-agent和--enable-server是指明编译zabbix启用server和agent功能,
如果需要用proxy代理功能可以增加一个--enable-proxy

如果你也用minimal系统安装,手动编译安装的lamp有些库文件软链接没设置好,可能
会导致编译时报错,自己根据实际情况调整 就行。

安装完成以后设置两个常用软链接和zabbix对应的服务端口

添加系统链接:
ln -s /usr/local/zabbix/sbin/* /usr/local/sbin/
ln -s /usr/local/zabbix/bin/* /usr/local/bin/

添加zabbix服务对应端口
vim /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

防火墙开启10051端口。10050是agent端监听,10051是server端监听。

修改下zabbix一些配置文件:

vim /etc/zabbix/zabbix_server.conf
DBName=zabbix #数据库名称
DBUser=zabbix #数据库用户名
DBPassword=password #数据库密码
ListenIP=0.0.0.0 #数据库ip地址
AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts #zabbix运行脚本存放目录
:wq! #保存退出
vi /etc/zabbix/zabbix_agentd.conf
Include=/etc/zabbix/zabbix_agentd.conf.d/
UnsafeUserParameters=1 #启用自定义key
:wq! #保存退出

添加启动脚本:
cd /usr/local/src/zabbix-3.0.0/misc/init.d/tru64
cp zabbix_* /etc/rc.d/init.d/
chmod u+x /etc/rc.d/init.d/zabbix_*

zabbix 3.2.3安装完成,下边进行数据库的创建和还原。

6、创建zabbix使用的mysql数据库

mysql -u root -p
mysql> create database zabbix character set utf8;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'password';
mysql> flush privileges;
还原数据库:
data.sql(初始数据库)  images.sql(图片库)  schema.sql(表结构),按照下边顺序还原就行。
mysql> use zabbix;
mysql> source /usr/local/src/zabbix-3.2.3/database/mysql/schema.sql
mysql> source /usr/local/src/zabbix-3.2.3/database/mysql/images.sql
mysql> source /usr/local/src/zabbix-3.2.3/database/mysql/data.sql

按照创建还原顺序执行就行,创建好以后开始zabbix前台页面的配置。

7、zabbix前段web页面配置

/usr/local/src/zabbix-3.2.3
拷贝前段php程序到你创建的站点根目录。此处站点自己创建,就不展示了,
我是在 httpd-vhosts.conf中创建的站点。
cp -r frontends/php/* /usr/local/apache/htdocs/zabbix/

此时可以先启动zabbix的server和agent服务:

/etc/init.d/zabbix_server start
/etc/init.d/zabbix_agentd start

接下来打开网址,根据提示一步一步安装。安装第一步会提示php的一些相关设置,此处就不截图了,自己根据提示

修改php.ini中的参数就行。后边参数自己看这设置,一看就明白的就不截图说明了。

安装完成登录截图如下:

8、语言调整

默认安装好是英文,此时图片上显示的字体是没问题的。如果调整文中文,图片显示中文的地方可能会显示方框,用默认的DejaVuSans.ttf这个字体

会出问题的,此时需要调整下字体文件。

方法如下:下载一个msyh.ttf字体文件,或者从自己的windows系统上的字体库里拷贝一个ttf字体文

件,上传到/usr/local/apache/htdocs/zabbix/fonts

然后修改一下地方:

vim /usr/local/apache/htdocs/zabbix/include/defines.inc.php
45行修改如下:
define('ZBX_GRAPH_FONT_NAME',           'DejaVuSans'); // font file name
define('ZBX_GRAPH_FONT_NAME',           'msyh'); // font file name
93行修改如下:
define('ZBX_FONT_NAME', 'DejaVuSans');
define('ZBX_FONT_NAME', 'msyh');

修改过以后,按照下图修改:

以上是zabbix 3.2.3的安装过程,后续在继续添加代理模式、以及监控windows服务器、网络设备等方法。

理论性的东西多参考官方文档https://www.zabbix.com/documentation/3.2/manual