前言:
本人小白,第一次工作就遇到了以前从未听说过的zabbix,一脸懵逼甚至有点想笑,所以拿起键盘就开始各种百度,各种寻求大佬,最后在zabbix中文社区加了一个群,得到了很多帮助,在此感谢各位。特别感谢昵称是:希望科技,的大佬,我下面这个方法就是在他的指导下完成的,希望对各位也有帮助。
【小白在学习的路上,大神勿喷,有想指导指导我的,先谢谢留言!】
基础信息:
LINUX版本:CentOS 7
Zabbix版本:3.2.6
===============================================================================
一、安装 CentOS 7
关闭selinux #setenforce 0 临时关闭
需要关闭 selinux,一定要关闭这个,开启selinux会引起一连串问题,甚至zabbix的discovery功能也不能正常使用;
命令如下:
# sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
确认是否修改成功;命令如下:
# grep SELINUX /etc/selinux/config
然后重启系统即可
# reboot
关闭防火墙
systemctl start firewalld.service#启动firewall
systemctl stop firewalld.service#停止firewall
systemctl disable firewalld.service#禁止firewall开机启动
安装YUM源:cd /etc/yum.repos.d/
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo(此处如果提示没有wget,则安装)
yum -y install wget
yum clean all
yum makecache
二、安装 LAMP
1、安装MySQL
从最新版本的linux系统开始,默认的是 Mariadb而不是mysql!
使用系统自带的repos安装很简单:
# yum install -y mariadb mariadb-server
启动mariadb
# systemctl start mariadb
之前的服务管理命令还可以用
# service mariadb start
设置开机自启动
# systemctl enable mariadb
安全初始化,设置root密码等
# mysql_secure_installation
测试登录
# mysql -uroot -p123456 //密码123456
2.安装Apache软件
# yum -y install httpd
# systemctl start httpd.service
# systemctl enable httpd.service
# systemctl status httpd.service //检查一下状态
“enabled”表示httpd服务已设为开机启动,“active(running)”则表示httpd服务正在运行中。
3.安装PHP
# yum -y install php
安装php-mysql
php-mysql是一个用于让PHP程序使用MySQL数据库的模块。要安装该模块,使用命令:
# yum -y install php-mysql
# systemctl restart httpd //重启httpd服务
安装完成后,PHP会生成配置文件/etc/httpd/conf.d/php.conf,因为该配置文件在/etc/httpd/conf.d目录下,所以它会被Apache所读取。PHP还会生成配置文件/etc/httpd/conf.modules.d/10-php.conf,该配置文件也会被Apache所读取,它的设定让Apache可以加载PHP模块。不过,PHP软件本身的配置文件其实是/etc/php.ini。
可以测试: 为了测试Apache能不能正常调用PHP,在/var/www/html目录下新建一个phpinfo.php文档,内容如下所示:
//其中的是PHP程序的语法,phpinfo ();则是PHP程序提供的一个函式库,该函式库可以显示出你这个web服务器的相关信息。
访问 http://ip /phpinfo.php
参考网页 http://www.linuxidc.com/Linux/2015-06/118818.htm
三、安装 Zabbix
安装包下载地址:http://www.zabbix.com/download.php
1.官方文档:https://www.zabbix.com/documentation/3.2/manual/installation/install_from_packages
2.导入源:
rpm -ivh http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
3.安装zabbix包
yum -y install zabbix-server zabbix-server-mysql zabbix-web-mysql
4.我们给本机也安装上客户端
yum -y install zabbix-agent
5.初始化数据库
mysql> CREATE DATABASE zabbix DEFAULT CHARACTER SET utf8 COLLATE utf8_bin;
Query OK, 1 row affected (0.00 sec)
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix'; //密码是 zabbix
Query OK, 0 rows affected (0.00 sec)
mysql> quit
导入数据
进入到这个目录
#cd /usr/share/doc/zabbix-server-mysql-3.2.6
#ls
AUTHORS ChangeLog COPYING create.sql.gz NEWS README
运行命令
# zcat create.sql.gz | mysql -uroot –p123456 zabbix //zabbix 对应数据库中新建的 zabbix库
6.启动zabbix server服务
# vim /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
实际上我的配置文件修改的是DBHost和DBPassword去掉前面的#号。
启动zabbix服务,设置开机自启动
#systemctl start zabbix-server
#systemctl enable zabbix-server
7. 编辑zabbix前端的php配置
vim /etc/httpd/conf.d/zabbix.conf
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/Shanghai //主要去掉# 改成上海
调整时间同步:安装 ntpdate , yum -y install ntpdate
#ntpdate cn.pool.ntp.org
NTP参考链接:http://www.linuxidc.com/Linux/2015-11/124911.htm
启动apache服务,设置开机自启动
#systemctl start httpd
#systemctl enable httpd
8.登陆zabbix
http://IP/zabbix/
http://IP/zabbix/setup.php
默认用户名/密码:Admin/zabbix
图片下文字显示□□ 解决方法:
参考:
http://www.cnblogs.com/enjoycode/p/zabbix_3_installation_on_centos_7.html
Win+R打开运行,输入fonts,回车进入Windows字体目录,找到微软雅黑-常规字体,复制出来将文件名修改为msyh.ttf,然后上传到/usr/share/zabbix/fonts
上传成功后,编辑
vim /usr/share/zabbix/include/defines.inc.php
将'graphfont' 修改为msyh
修改后 define('ZBX_GRAPH_FONT_NAME', 'msyh'); // font file name
也可直接执行命令:
查看字体配置# grep FONT_NAME /usr/share/zabbix/include/defines.inc.php -n
45:define('ZBX_GRAPH_FONT_NAME', 'graphfont'); // font file name
93:define('ZBX_FONT_NAME', 'graphfont');
确认字体名称是否可以替换
# grep graphfont /usr/share/zabbix/include/defines.inc.php -n
45:define('ZBX_GRAPH_FONT_NAME', 'graphfont'); // font file name
93:define('ZBX_FONT_NAME', 'graphfont');
执行快捷替换
# sed -i "s/graphfont/msyh/g" /usr/share/zabbix/include/defines.inc.php
确认是否替换成功
# grep FONT_NAME /usr/share/zabbix/include/defines.inc.php -n
45:define('ZBX_GRAPH_FONT_NAME', 'msyh'); // font file name
93:define('ZBX_FONT_NAME', 'msyh');
欢迎进群:747509472 交流学习,感谢指教!