博客是我工作的好帮手,遇到困难就来博客找资料
分类: 系统运维
2017-02-08 18:02:20
Zabbix3.x比较之前的2.0界面有了很大的变化,但是安装部署过程与2.x基本完全一样。
1、Zabbix2.x安装图解教程
2、
3、zabbix软件包下载
zabbix-3.0.1.tar.gz
上传zabbix-3.0.1.tar.gz到服务器/usr/local/src目录下面
安装部署:
请参考
一、创建、导入zabbix数据库
cd /usr/local/src #进入软件包下载目录
tar zabbix-3.0.1.tar.gz #解压
cd /usr/local/src/zabbix-3.0.1/database/mysql #进入mysql数据库创建脚本目录
ls #列出文件,可以看到有schema.sql、images.sql、data.sql这三个文件
mysql -u root -p #输入密码,进入MySQL控制台
create database zabbix character set utf8; #创建数据库zabbix,并且数据库编码使用utf8
insert into mysql.user(Host,User,Password) values('localhost','zabbix',password('123456')); #新建账户zabbix,密码123456
flush privileges; #刷新系统授权表
grant all on zabbix.* to 'zabbix'@'localhost' identified by '123456' with grant option; #允许账户zabbix能从本机连接到数据库zabbix
flush privileges; #再次刷新系统授权表
use zabbix #进入数据库
source /usr/local/src/zabbix-3.0.1/database/mysql/schema.sql #导入脚本文件到zabbix数据库
source /usr/local/src/zabbix-3.0.1/database/mysql/images.sql #导入脚本文件到zabbix数据库
source /usr/local/src/zabbix-3.0.1/database/mysql/data.sql #导入脚本文件到zabbix数据库
注意:请按照以上顺序进行导入,否则会出错。
exit #退出
或者这样导入
mysql -uzabbix -p123456 -hlocalhost zabbix < /usr/local/src/zabbix-3.0.1/database/mysql/schema.sql
mysql -uzabbix -p123456 -hlocalhost zabbix < /usr/local/src/zabbix-3.0.1/database/mysql/images.sql
mysql -uzabbix -p123456 -hlocalhost zabbix < /usr/local/src/zabbix-3.0.1/database/mysql/data.sql
cd /usr/lib64/mysql #32位系统为/usr/lib/mysql,注意系统版本同,文件版本可能不一样,这里是16.0.0
ln -s libmysqlclient.so.16.0.0 libmysqlclient.so #添加软连接
ln -s libmysqlclient_r.so.16.0.0 libmysqlclient_r.so #添加软连接
二、安装zabbix
1、添加用户:
groupadd zabbix #创建用户组zabbix
useradd zabbix -g zabbix -s /bin/false #创建用户zabbix,并且把用户zabbix加入到用户组zabbix中
2、安装依赖包 #CentOS使用yum命令安装
yum install net-snmp-devel curl curl-devel mysql-devel
备注:以上软件包如果在安装Web环境LAMP或者LNMP时已经安装过,此步骤可忽略
3、安装zabbix
ln -s /usr/local/lib/libiconv.so.2 /usr/lib/libiconv.so.2 #添加软连接
/sbin/ldconfig #使配置立即生效
cd /usr/local/src/zabbix-3.0.1 #进入安装目录
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-net-snmp --with-libcurl --enable-proxy --with-mysql=/usr/bin/mysql_config #配置
make #编译
make install #安装
ln -s /usr/local/zabbix/sbin/* /usr/local/sbin/ #添加系统软连接
ln -s /usr/local/zabbix/bin/* /usr/local/bin/ #添加系统软连接
说明:find / -name mysql_config 查找位置,如果没有mysql_config,需要安装yum install mysql-devel
4、添加zabbix服务对应的端口
vi /etc/services #编辑,在最后添加以下代码
# Zabbix
zabbix-agent 10050/tcp # Zabbix Agent
zabbix-agent 10050/udp # Zabbix Agent
zabbix-trapper 10051/tcp # Zabbix Trapper
zabbix-trapper 10051/udp # Zabbix Trapper
:wq! #保存退出
5、修改zabbix配置文件
cd /usr/local/zabbix/etc
vi /usr/local/zabbix/etc/zabbix_server.conf
DBName=zabbix #数据库名称
DBUser=zabbix #数据库用户名
DBPassword=123456 #数据库密码
ListenIP=localhost #数据库ip地址
AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts #zabbix运行脚本存放目录
:wq! #保存退出
vi /usr/local/zabbix/etc/zabbix_agentd.conf
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/
UnsafeUserParameters=1 #启用自定义key
:wq! #保存退出
6、添加开机启动脚本
cp /usr/local/src/zabbix-3.0.1/misc/init.d/fedora/core/zabbix_server /etc/rc.d/init.d/zabbix_server #服务端
cp /usr/local/src/zabbix-3.0.1/misc/init.d/fedora/core/zabbix_agentd /etc/rc.d/init.d/zabbix_agentd #客户端
chmod +x /etc/rc.d/init.d/zabbix_server #添加脚本执行权限
chmod +x /etc/rc.d/init.d/zabbix_agentd #添加脚本执行权限
chkconfig zabbix_server on #添加开机启动
chkconfig zabbix_agentd on #添加开机启动
7、修改zabbix开机启动脚本中的zabbix安装目录
vi /etc/rc.d/init.d/zabbix_server #编辑服务端配置文件
BASEDIR=/usr/local/zabbix/ #zabbix安装目录
:wq! #保存退出
vi /etc/rc.d/init.d/zabbix_agentd #编辑客户端配置文件
BASEDIR=/usr/local/zabbix/ #zabbix安装目录
:wq! #保存退出
三、配置web站点
cd /usr/local/src/zabbix-3.0.1
cp -r /usr/local/src/zabbix-3.0.1/frontends/php /usr/local/nginx/html/zabbix
chown -R /usr/local/nginx/html/zabbix
备注:/usr/local/nginx/html为Nginx默认站点目录 www为Nginx运行账户
service zabbix_server start #启动zabbix服务端
service zabbix_agentd start #启动zabbix客户端
四、修改php配置文件参数
1、vi /etc/php.ini #编辑修改
post_max_size =16M
max_execution_time =300
max_input_time =300
:wq! #保存退出
2、vi /usr/local/php/etc/php-fpm.conf #编辑修改
request_terminate_timeout = 300
:wq! #保存退出
service php-fpm reload #重启php-fpm
五、安装web
在浏览器中打开:
下面是部分安装截图
Next step
系统运维 温馨提醒:qihang01原创内容©版权所有,转载请注明出处及原文链接
检查系统环境设置,必须全部都为ok,才能继续
Next step
配置MySQL数据库信息
Database:MySQL
Database host:localhost
Database port:3306
Database name:zabbix
User:zabbix
Password:123456
Next step
Next step
Next step
Finish 安装完成
账号:admin
密码:zabbix
Sign in 登录
如下图所示
修改web界面为中文
1、修改系统配置文件,让web页面支持简体中文显示
vi /usr/local/nginx/html/zabbix/include/locales.inc.php #编辑修改
'zh_CN' => array('name' => _('Chinese (zh_CN)'), 'display' => false),
修改为
'zh_CN' => array('name' => _('Chinese (zh_CN)'), 'display' => true),
:wq! #保存退出
2、替换监控图像上系统默认的字体 #默认字体不支持中文,如果不替换,图像上会显示乱码
在Windows系统中的C:\Windows\Fonts目录中复制出一个中文字体文件,例如msyh.ttf
把字体文件msyh.ttf上传到zabbix站点根目录下fonts文件夹中
例如:/usr/local/nginx/html/zabbix/fonts
备份默认的字体文件:DejaVusSans.ttf-bak
修改msyh.ttf名称为DejaVusSans.ttf
最后,修改配置信息,把默认语言修改为中文
Language:Chinese(zh_CN) #简体中文
至此,Zabbix3.x安装图解教程完成。
Zabbix 3.0 只支持CentOS 7.0以上版本,所以先在虚拟机中安装好CentOS 7.0 x64,并设置好IP,允许虚拟机联网。
1、安装Mariadb数据库服务
**安装数据库服务,以前是Mysql,CentOS 7.0后是Mariadb**
# yum install -y mariadb mariadb-server
# systemctl start mariadb
# systemctl enable mariadb
**初始化数据库安全设置,全按Y,当第1次按Y时,是设置root密码**
# mysql_secure_installation
# mysql -uroot -p123456
2、配置Zabbix安装源与安装Zabbix
# rpm -ivh
**安装zabbix-server-mysql 与 zabbix-web-mysql会自动安装相关的依赖包如PHP之类的**
# yum install zabbix-server-mysql zabbix-web-mysql php php-devel
3、初始化Zabbix 数据库
# mysql -uroot -p123456
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by '123456';
mysql> quit;
# cd /usr/share/doc/zabbix-server-mysql-3.0.8/
**导入默认的数据库文件**
# zcat create.sql.gz |mysql -uroot -p123456 zabbix
4、修改 Zabbix Server 配置与启动 Zabbix Server
# vi /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=123456
**快捷操作命令:**
# sed -i "s/# DBHost/DBHost/g" zabbix_server.conf
# sed -i "s/# DBPassword=/DBPassword=zabbix/g" zabbix_server.conf
**启动zabbix-server服务**
# systemctl start zabbix-server
**开机自启动zabbix-server服务**
# systemctl enable zabbix-server
5、启动 zabbix 管理界面
**编辑PHP配置**
# vi /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
**快捷修改命令**
# sed -i "s/# php_value date.timezone Europe\/Riga/php_value date.timezone Asia\/Shanghai/g" /etc/httpd/conf.d/zabbix.conf
**启动Apache服务**
# systemctl start httpd
**开机启动Apache服务**
# systemctl enable httpd
6、完善系统部分配置
解决Zabbix server is not running
**需要关闭 selinux,一定要关闭这个,开启selinux会引起一连串问题,甚至zabbix的discovery功能也不能正常使用**
# sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
**确认是否修改成功**
# grep SELINUX /etc/selinux/config
**然后重启系统即可**
# reboot
开启Zabbix中文显示
# vi /usr/share/zabbix/include/locales.inc.php
**在第55行开启zh_CN语言显示:**
'zh_CN' => ['name' => _('Chinese (zh_CN)'), 'display' => false],
**修改为:**
'zh_CN' => ['name' => _('Chinese (zh_CN)'), 'display' => true],
处理中文界面乱码问题-微软雅黑 字体文件名为:msyh
先把 微软雅黑:msyh 字体文件上传到:/usr/share/zabbix/fonts/
**查看字体配置**
# 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');
时间不对问题处理方法
a、系统时区设置的不对,可以尝试用命令
# timedatectl set-timezone "Asia/Shanghai"
b、编辑修改 vim /etc/php.ini 文件
date.timezone ="Asia/Shanghai"
c、确保前面的vim /etc/httpd/conf.d/zabbix.conf 修改成如下值
php_value date.timezone Asia/Shanghai
Zabbix监控端安装
Lamp环境安装
安装epel和remi源
#rpm –Uvh
# rpm -Uvh
安装LAMP 基础环境
# yum install --enablerepo=remi--enablerepo=remi-php56 php php-opcache php-devel php-mbstring php-mcryptphp-mysqlnd php-phpunit-PHPUnit php-pecl-xdebug php-pecl-xhprof php-mysqlphp-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc php-bcmath
# yum –y install httpd php mysql mysql-server httpd-manual mod_ssl mod_perl mod_auth_mysqlmysql-connector-odbc mysql-devel libdbi-dbd-mysql
启动并设置开机自启
Chkconfig mysqld on
/etc/init.d/mysqld start
Chkconfig httpd on
/etc/init.d/httpd start
yum -yinstall gcc gcc-c++ autoconf net-snmp net-snmp-develcurl-devel
#rpm –ivh
#yum install zabbix-server-mysql zabbix-web-mysql
mysql -uroot -p
mysql> create database zabbixcharacter set utf8 collate utf8_bin;
mysql> grant all privileges onzabbix.* to zabbix@localhost identified by '
mysql> quit;
zcat/usr/share/doc/zabbix-server-mysql-3.0.*/create.sql.gz | mysql -uzabbix -pzabbix
vi /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=
# /etc/init.d/zabbix-server start
# chkconfig on zabbix-server
# cp /usr/share/doc/zabbix-web-3.0.8/httpd22-example.conf /etc/httpd/conf.d/zabbix.conf
Vi /etc/php.ini 设置相应的值
max_execution_time 300
memory_limit 128M
post_max_size 16M
upload_max_filesize 2M
max_input_time 300
always_populate_raw_post_data -1
bcmath.scale = 1
date.timezone Asia/Shanghai
l至此zabbix服务器端安装完毕,可用浏览器访问zabbixserver_IP/zabbix 使用Admin密码zabbix来登录 zabbix控制台,注意服务器防火墙配置
3.2Zabbix被监控端安装
Yum install zabbix-agent
Chkconfig zabbix-agent on
Zabbix 3.0 只支持CentOS 7.0以上版本,所以先在虚拟机中安装好CentOS 7.0 x64,并设置好IP,允许虚拟机联网。
1、安装Mariadb数据库服务
**安装数据库服务,以前是Mysql,CentOS 7.0后是Mariadb**
# yum install -y mariadb mariadb-server
# systemctl start mariadb
# systemctl enable mariadb
**初始化数据库安全设置,全按Y,当第1次按Y时,是设置root密码**
# mysql_secure_installation
# mysql -uroot -p123456
2、配置Zabbix安装源与安装Zabbix
# rpm -ivh
**安装zabbix-server-mysql 与 zabbix-web-mysql会自动安装相关的依赖包如PHP之类的**
# yum install zabbix-server-mysql zabbix-web-mysql php php-devel
3、初始化Zabbix 数据库
# mysql -uroot -p123456
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by '123456';
mysql> quit;
# cd /usr/share/doc/zabbix-server-mysql-3.0.8/
**导入默认的数据库文件**
# zcat create.sql.gz |mysql -uroot -p123456 zabbix
4、修改 Zabbix Server 配置与启动 Zabbix Server
# vi /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=123456
**快捷操作命令:**
# sed -i "s/# DBHost/DBHost/g" zabbix_server.conf
# sed -i "s/# DBPassword=/DBPassword=zabbix/g" zabbix_server.conf
**启动zabbix-server服务**
# systemctl start zabbix-server
**开机自启动zabbix-server服务**
# systemctl enable zabbix-server
5、启动 zabbix 管理界面
**编辑PHP配置**
# vi /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
**快捷修改命令**
# sed -i "s/# php_value date.timezone Europe\/Riga/php_value date.timezone Asia\/Shanghai/g" /etc/httpd/conf.d/zabbix.conf
**启动Apache服务**
# systemctl start httpd
**开机启动Apache服务**
# systemctl enable httpd
6、完善系统部分配置
解决Zabbix server is not running
**需要关闭 selinux,一定要关闭这个,开启selinux会引起一连串问题,甚至zabbix的discovery功能也不能正常使用**
# sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
**确认是否修改成功**
# grep SELINUX /etc/selinux/config
**然后重启系统即可**
# reboot
开启Zabbix中文显示
# vi /usr/share/zabbix/include/locales.inc.php
**在第55行开启zh_CN语言显示:**
'zh_CN' => ['name' => _('Chinese (zh_CN)'), 'display' => false],
**修改为:**
'zh_CN' => ['name' => _('Chinese (zh_CN)'), 'display' => true],
处理中文界面乱码问题-微软雅黑 字体文件名为:msyh
先把 微软雅黑:msyh 字体文件上传到:/usr/share/zabbix/fonts/
**查看字体配置**
# 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');
时间不对问题处理方法
a、系统时区设置的不对,可以尝试用命令
# timedatectl set-timezone "Asia/Shanghai"
b、编辑修改 vim /etc/php.ini 文件
date.timezone ="Asia/Shanghai"
c、确保前面的vim /etc/httpd/conf.d/zabbix.conf 修改成如下值
php_value date.timezone Asia/Shanghai
Zabbix监控端安装
Lamp环境安装
安装epel和remi源
#rpm –Uvh
# rpm -Uvh
安装LAMP 基础环境
# yum install --enablerepo=remi--enablerepo=remi-php56 php php-opcache php-devel php-mbstring php-mcryptphp-mysqlnd php-phpunit-PHPUnit php-pecl-xdebug php-pecl-xhprof php-mysqlphp-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc php-bcmath
# yum –y install httpd php mysql mysql-server httpd-manual mod_ssl mod_perl mod_auth_mysqlmysql-connector-odbc mysql-devel libdbi-dbd-mysql
启动并设置开机自启
Chkconfig mysqld on
/etc/init.d/mysqld start
Chkconfig httpd on
/etc/init.d/httpd start
yum -yinstall gcc gcc-c++ autoconf net-snmp net-snmp-develcurl-devel
#rpm –ivh
#yum install zabbix-server-mysql zabbix-web-mysql
mysql -uroot -p
mysql> create database zabbixcharacter set utf8 collate utf8_bin;
mysql> grant all privileges onzabbix.* to zabbix@localhost identified by '
mysql> quit;
zcat/usr/share/doc/zabbix-server-mysql-3.0.*/create.sql.gz | mysql -uzabbix -pzabbix
vi /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=
# /etc/init.d/zabbix-server start
# chkconfig on zabbix-server
# cp /usr/share/doc/zabbix-web-3.0.8/httpd22-example.conf /etc/httpd/conf.d/zabbix.conf
Vi /etc/php.ini 设置相应的值
max_execution_time 300
memory_limit 128M
post_max_size 16M
upload_max_filesize 2M
max_input_time 300
always_populate_raw_post_data -1
bcmath.scale = 1
date.timezone Asia/Shanghai
l至此zabbix服务器端安装完毕,可用浏览器访问zabbixserver_IP/zabbix 使用Admin密码zabbix来登录 zabbix控制台,注意服务器防火墙配置
3.2Zabbix被监控端安装
Yum install zabbix-agent
Chkconfig zabbix-agent on
1. 首先登陆到数据库,选择zabbix数据库,查看Admin用户。
mysql> use zabbix
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> select * from users\G
*************************** 1. row ***************************
userid: 1
alias: Admin
name: Zabbix
surname: Administrator
passwd: e2798af12a7a0f4f70b4d69efbc25f4d
url:
autologin: 1
autologout: 0
lang: en_US
refresh: 30
type: 3
theme: default
attempt_failed: 0
attempt_ip: 210.51.19.2
attempt_clock: 1421286613
rows_per_page: 50
从查询结果可以看出Admin的密码是一串加密MD5值,因为我们只要替换这个MD5值即可。
2. 生成一个字符串的MD5值。
echo -n redhat|openssl md5
(stdin)= e2798af12a7a0f4f70b4d69efbc25f4d
此处添加-n参数是保证数值唯一
3. 替换Admin的密码
mysql> update users set passwd='e2798af12a7a0f4f70b4d69efbc25f4d' where userid='1';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0