本文由ilanniweb提供友情赞助,首发于烂泥行天下
想要获得更多的文章,可以关注我的微信ilanniweb
这个月又快过完了,最近也比较忙,没时间写文章,今天挤点时间把zabbix3.0安装与配置的文章写下来。
其实zabbix3.0的安装很简单,但是由于个人比较懒,所以一直不喜欢使用源码方式进行安装,而且管理的服务器多了,源码安装也感觉不方便,所以现在大部分安装软件我都会首先选择yum或者apt-get方式进行。
本篇文章,我也不多介绍zabbix3.0安装的详细步骤了,只列出centos、ubuntu下zabbix3.0的相关安装命令以及zabbix的基本配置。
zabbix3.0对OS的要求:mysql5.0以上版本、apache1.3以上版本、php5.4以上版本。
注意:这个要求很重要。
一、zabbix server3.0在centos 7上安装
根据zabbix server3.0官方要求,目前zabbix server3.0在centos6 OS上不能进行yum安装。如果一定要在centos6 OS上进行安装zabbix server3.0的话,强烈建议通过源码方式进行编译安装,同时还需要注意PHP的版本。
考虑到这些因素,所以在此我们是在centos7 OS上进行yum安装zabbix server3.0。
注意:尽管zabbix server3.0在centos6 OS上不能yum方式进行安装,但是zabbix-agent3.0在centos6 OS上是可以进行yum安装的。
1.1 搭建lamp环境
在centos7上安装zabbix server3.0之前,我们首先搭建zabbix所需要的lamp环境。
下载最新的yum源,如下:
wget -P /etc/yum.repos.d http://mirrors.aliyun.com/repo/Centos-7.repo
在开始安装之前,还需要说明下centos7自带的mysql是mariadb,我们可以通过如下命令查看:
yum search mysql|tac
现在开始安装lamp环境,使用如下命令:
yum -y install mariadb mariadb-server php php-mysql httpd
通过上图,我们可以很明显的看出centos7默认安装的是php5.4、httpd2.4和maradb5.5,这个完全符合zabbix3.0对软件版本的要求。
lamp安装完毕后,我们现在来配置mysql数据库。
设置开机自启动mysql,并启动mysql,使用如下命令:
systemctl enable mariadb
systemctl start mariadb
初始化mysql数据库,并配置root用户密码。使用如下命令:
mysql_secure_installation
注意:在上图中的Enter current passwdord for root处,我们直接敲回车键即可。因为centos7上mysql的默认root用户密码为空。
上图中主要是为root用户配置密码,并刷新相关权限。
上图中主要是配置匿名用户、test用户以及root用户远程连接等相关配置。
mysql初始化完毕后,我们现在来创建zabbix数据库及其用户,使用如下命令:
mysql -uroot -p'ilanni' -e "create database zabbix default character set utf8 collate utf8_bin;"
mysql -uroot -p'ilanni' -e "grant all on zabbix.* to 'zabbix'@'%' identified by 'zabbix';"
现在来测试刚刚创建的zabbix用户,是否可以连接mysql数据库,如下:
mysql -uzabbix -pzabbix
show databases;
通过上图,我们可以很明显的看出zabbix用户是可以正常连接数据库的。
启动apache以及开放80端口,如下:
systemctl start httpd
netstat –tunl
firewall-cmd --zone=public --add-port=80/tcp –permanent
firewall-cmd --reload
注意:centos7的防火墙和centos6的防火墙很不一样。
到此lamp环境已经全部搭建完毕。
1.2 安装zabbix server3.0
lamp环境搭建完毕后,我们现在开始正式安装zabbix3.0。
安装zabbix3.0所需要EPEL源和zabbix的yum源,如下:
rpm -ivh http://mirrors.aliyun.com/epel/7/x86_64/e/epel-release-7-6.noarch.rpm
rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
以上安装完毕后,我们现在来正式安装zabbix3.0,使用如下命令:
yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-get
通过上图,我们可以很明显的看出目前zabbix server是3.0.2版本的。
以上安装完毕后,我们现在开始进行zabbix的相关配置。
导入zabbix数据库结构,如下:
cd /usr/share/doc/zabbix-server-mysql-3.0.2/
zcat create.sql.gz | mysql -uroot -pilanni zabbix
数据库导入完毕后,我们现在来修改zabbix sever的配置文件,如下:
vim /etc/zabbix/zabbix_server.conf
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_server.pid
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
AlertScriptsPath=/usr/lib/zabbix/alertscripts
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
上述配置文件中,我们只需要关注DBHost、DBName、DBUser、
DBPassword几项即可。这几项是配置zabbix server连接mysql数据库的参数。
以上修改完毕后,我们再来修改下zabbix.conf文件。如下:
vim /etc/httpd/conf.d/zabbix.conf
Alias /zabbix /usr/share/zabbix
<Directory "/usr/share/zabbix">
Options FollowSymLinks
AllowOverride None
Require all granted
<IfModule mod_php5.c>
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value always_populate_raw_post_data -1
php_value date.timezone Asia/Chongqing
</IfModule>
</Directory>
其中php_value date.timezone Asia/Chongqing主要是定义php的时区。
以上修改完毕后,我们把把zabbix-server加入开机启动,并启动zabbix-server,如下:
systemctl enable zabbix-server
systemctl start zabbix-server
最后重启apache,如下:
systemctl restart httpd
然后访问http://192.168.1.9/zabbix/setup.php这个地址,如下:
通过上图,我们可以很明显的看出zabbix3.0已经被正确安装。
当然上述的访问地址也是可以自定义的,我们只需要修改zabbix.conf文件中的alias即可,如下:
vim /etc/httpd/conf.d/zabbix.conf
修改完毕后,记得重启apache,如下:
systemctl restart httpd
此时访问地址已经更改为http://192.168.1.9/ilanni/setup.php,如下:
到此有关centos7上安装zabbix server 3.0的上半部分已经完毕,下半部分见第三章《配置zabbix3.0》。
二、zabbix server3.0在ubuntu 15上安装
在ubuntu 15上安装zabbix server 3.0就简单的多了,我们也是直接使用apt-get方式进行的。注意:zabbix server3.0在 ubuntu 15与ubuntu 14上安装方法是一样的。
首先安装相关的软件,如下:
sudo apt-get -y install gettext unzip rar
下载zabbix server3.0仓库文件,并安装如下:
dpkg -i zabbix-release_3.0-1+trusty_all.deb
开始安装zabbix server,使用如下命令:
sudo apt-get update
sudo apt-get -y install zabbix-server-mysql zabbix-frontend-php zabbix-get
以上是设置mysql数据库root用户的密码。
以上安装完毕后,我们现在来创建zabbix数据库及其用户,如下:
mysql -uroot -p'ilanni' -e "create database zabbix default character set utf8 collate utf8_bin;" && mysql -uroot -p'ilanni' -e "grant all on zabbix.* to 'zabbix'@'%' identified by 'zabbix';"
现在来测试刚刚创建的zabbix用户,是否可以连接mysql数据库,如下:
mysql -uzabbix -pzabbix
show databases;
以上安装及测试完毕后,我们现在开始进行相关的配置。
导入zabbix数据库结构,如下:
cd /usr/share/doc/zabbix-server-mysql
zcat create.sql.gz | mysql -uroot -p'ilanni' zabbix
数据库导入完毕后,我们现在来修改zabbix sever的配置文件,如下:
vim /etc/zabbix/zabbix_server.conf
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_server.pid
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
AlertScriptsPath=/usr/lib/zabbix/alertscripts
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
上述配置文件中,我们只需要关注DBHost、DBName、DBUser、
DBPassword几项即可。这几项是配置zabbixserver连接mysql数据库的参数。
以上修改完毕后,我们再来修改下zabbix.conf文件。如下:
vim /etc/apache2/conf-enabled/zabbix.conf
<IfModule mod_alias.c>
Alias /zabbix /usr/share/zabbix
</IfModule>
<Directory "/usr/share/zabbix">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
<IfModule mod_php5.c>
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value always_populate_raw_post_data -1
php_value date.timezone Asia/Chongqing
</IfModule>
</Directory>
其中php_value date.timezone Asia/Chongqing主要是定义php的时区。这个和centos7下的配置基本一致。
以上修改完毕后,我们把把zabbix-server加入开机启动,并启动zabbix-server,如下:
sudo systemctl enable zabbix-server
sudo systemctl start zabbix-server
最后重启apache,如下:
sudo systemctl restart apache2.service
然后访问http://192.168.1.231/zabbix/setup.php这个地址,如下:
通过上图,我们可以很明显的看出zabbix server 3.0已经被正确安装。
到此有关ubuntu上安装zabbix server 3.0的上半部分已经完毕,下半部分见第三章《配置zabbix3.0》。
三、配置zabbix
在第一、二章节中,我们已经安装zabbix server3.0的上半部分,这个章节我们来继续安装和配置zabbix。
注意:本章节我们不再进行文字解释,全部都是图片。
打开前面的显示的zabbix3.0的网页,点击下一步,如下:
上图中需要填写的是,我们前面创建的zabbix数据库已经用户和密码。
四、安装zabbix agent
前面我们安装了zabbix server3.0,本章节我们介绍安装zabbix agent端。zabbix agent的安装比较简单,我们只需要安装相应的仓库,然后执行安装命令即可。
4.1 安装zabbix agent
在centos os上安装agent,使用如下命令:
rpm -ivh http://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/6/x86_64/zabbix-release-3.0-1.el6.noarch.rpm
yum clean all
yum -y install zabbix zabbix-agent
在ubuntu os上安装agent,使用如下命令:
dpkg -i zabbix-release_3.0-1+trusty_all.deb
sudo apt-get -y install zabbix-agent
4.2 配置zabbix agent
zabbix agent的配置很简单,只需要修改zabbix agent配置文件中的Server、ServerActive和Hostname这三项即可。
其中Server、ServerActive是zabbix server服务器的IP地址,Hostname是被监控端的IP地址,如下:
vim /etc/zabbix/zabbix_agentd.conf
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=192.168.1.231
ServerActive=192.168.1.231
Hostname=192.168.1.124
Include=/etc/zabbix/zabbix_agentd.d/
以上配置完毕后,我们在zabbix web端添加该监控机器时,只需要把honst name与该配置文件中的hostname对应即可。如下:
到此zabbix agent就已经安装完毕。
五、zabbix web中文显示与优化
本章节分为两部分,第一部分是配置zabbix web中文显示,第二部分是优化显示的中文。
5.1 zabbix web中文显示
默认情况下zabbix web显示的是英文,实际上zabbix是支持中文的,我们可以通过修改web端源文件来开启中文。
修改/usr/share/zabbix/include/locales.inc.php文件,把zh_CN所在行的false改为true即可,如下:
vim /usr/share/zabbix/include/locales.inc.php +55
最后后点击zabbix web监控网页端右上角人头头像,在弹出的选项卡选择中文语言即可。如下:
注意:如果是在ubuntu OS上面配置文件修改完毕后,在zabbix web后台还是会显示,不支持中文的话,说明ubuntu OS没有安装中文语言包。如下:
我们只需要按照以下三步进行操作,即可解决上述问题。
第一步,安装中文包,如下:
sudo apt-get -y install language-pack-zh-hant language-pack-zh-hans
第二步,配置相关环境变量:
vim /etc/environment
在环境变量文件中增加语言和编码的设置:
LANG="zh_CN.UTF-8"
LANGUAGE="zh_CN:zh:en_US:en"
第三步,重新设置本地配置:
dpkg-reconfigure locales
现在重启下apache和zabbix-server两个服务就可以,如下:
sudo systemctl restart apache2.service
sudo systemctl restart zabbix-server.service
更换语言后,如果发现图形出现乱码,我们做如下修改即可。
修改/usr/share/zabbix/include/defines.inc.php文件的第45行和第93行,如下:
vim /usr/share/zabbix/include/defines.inc.php
define('ZBX_GRAPH_FONT_NAME','mysh');
define('ZBX_FONT_NAME', 'mysh');
然后下载自己喜欢的字体,改名为msyh放到/usr/share/zabbix/fonts目录下即可。
5.2 中文显示优化
以上做完之后,你会发现尽管zabbix web支持中文,但是有些地方翻译的很不到位。如下:
据小道消息,zabbix官方的中文翻译是一位使用繁体中文的华人工程师进行翻译的。
所以在github上有大神对此进行了重新翻译,github连接地址如下:https://github.com/duanzhanling/zabbix-zh_CN
安装方法如下:
wget https://github.com/echohn/zabbix-zh_CN/archive/master.zip
unzip master.zip
rm /usr/share/zabbix/locale/zh_CN/LC_MESSAGES/frontend.mo
cp zabbix-zh_CN-master/frontend.mo /usr/share/zabbix/locale/zh_CN/LC_MESSAGES/frontend.mo
现在重启下apache和zabbix_server两个服务就可以,如下:
sudo systemctl restart apache2.service
sudo systemctl restart zabbix-server.service
通过上图可以看到,最新的翻译比以前好多了。