共计 5554 个字符,预计需要花费 14 分钟才能阅读完成。
一、配置
角色 | IP | 主机名 | 虚拟 IP |
Zabbixserver 主节点 | 10.36.1.55 | Compute51 | 10.36.1.101 |
Zabbixserver 从节点 | 10.36.1.56 | Compute52 | |
mysql 数据库主节点 | 10.36.1.1 | Controller1 | 10.36.1.100 |
mysql 数据库从节点 | 10.36.1.17 | Controller2 |
二、安装
本次部署完全是参照 zabbix 官方文档进行部署
https://www.zabbix.com/documentation/3.0/manual/installation/install_from_packages
一、MYSQL 数据库准备
在我的生产环境里,已经存在有一套 mysql 高可用的环境在这里,我只需要创建 zabbix 所需的库
1、创建 zabbix 数据库
shell> mysql -uroot -p<your root password>
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@10.36.1.100 identified by ‘zabbix’;
mysql> flush privileges
mysql> quit;
说明:10.36.1.100 是访问数据库的 VIP 地址(也就是虚拟 IP,不要理解成了 VIP 会员哈)
二、回到 zabbix server 的安装
1、下载 zabbix_3.2.1.orig.tar.gz
下载链接:http://repo.zabbix.com/zabbix/3.2/Ubuntu/pool/main/z/zabbix/zabbix_3.2.1.orig.tar.gz
2、解压
tar -zxvf zabbix-3.2.0.tar.gz
3、创建一个普通账户:zabbix 用于运行 zabbix 服务
groupadd zabbix
useradd -g zabbix zabbix
4、创建一个 zabbix 数据库
就在刚才,已经创建好了一个数据库,名称为 zabbix。
4.1、开始蛋疼的问题来了,我说测试一下用 zabbix 这个账户登录数据库居然提示没有权限
解决办法:
之前我们在授权的时候是执行了:
grant all privileges on zabbix.* to zabbix@10.36.1.100 identified by ‘zabbix’;
下面,我用 root 登入数据库,执行:
grant all privileges on zabbix.* to zabbix@localhost identified by ‘zabbix’;
flush privileges
再试试登录:
mysql -uzabbix -pzabbix
尼玛,可以登录了。OK,那就先这样,我们等会再来说这个问题
4.2、好吧,那继续往下走,导入 zabbix 数据到 zabbix 数据库里
先把 zabbix-3.2.1.tar.gz 文件 scp 下发到数据库服务器的 /root/ 目录里,然后解压
scp zabbix-3.2.1.tar.gz root@10.36.1.1:/root (我的数据库主节点的 IP 是 10.36.1.1)
接着进入解压完 zabbix-3.2.1.tar.gz 的目录 /root/zabbix-3.2.1/database/mysql
root@compute51:~/zabbix-3.2.1/database/mysql# pwd
/root/zabbix-3.2.1/database/mysql
root@compute51:~/zabbix-3.2.1/database/mysql# ls -l
total 3064
-rw-r–r– 1 zabbix zabbix 1032494 Sep 30 17:47 data.sql
-rw-r–r– 1 zabbix zabbix 1978341 Sep 30 17:43 images.sql
-rw-r–r– 1 zabbix zabbix 122134 Sep 30 17:47 schema.sql
看到 3 个文件没有?先别管干嘛用的,导入再说吧!
切记:注意导入顺序 schema——>images——>data
mysql -uzabbix -pzabbix zabbix < schema.sql
mysql -uzabbix -pzabbix zabbix < images.sql
mysql -uzabbix -pzabbix zabbix < data.sql
导入完成以后,登录数据库看看 zabbix 库有没有数据
mysql -uzabbix -pzabbix
use zabbix
show tables;
牛逼!居然有了,那么我这里就不截图了哈!!
5、下面开始配置源
配置 Zabbix server 和 agent
./configure –enable-server –enable-agent –with-mysql –with-libcurl –with-libxml2
这个配置,我就按照官方的了,我也不需要太多的功能,基本就这样吧!
悲催了,配置的时候会检查环境,但是有很多依赖包没有安装,那么先安装相关依赖包吧
apt-get update
apt-get -y install make
apt-get -y install gcc
apt-get -y install libghc-hsql-mysql-dev
apt-get install libmysqlclient18
apt-get -y install libxml2-dev
apt-get install libcurl3-dev
apt-get install libsnmp-dev
configure 中的一些选项到底是啥玩意?看看帮助吧!!
./configure –help
–enable-ipv6 Turn on support of IPv6
–enable-server Turn on build of Zabbix server
–enable-agent Turn on build of Zabbix agent and client utilities
–with-mysql[=ARG] use MySQL client library [default=no], optionally
specify path to mysql_config
If you want to use Net-SNMP library:
–with-net-snmp[=ARG] use Net-SNMP package [default=no], optionally
specify path to net-snmp-config
If you want to use XML library:
–with-libxml2[=ARG] use libxml2 client library [default=no], optionally
specify path to xml2-config
If you want to use cURL library:
–with-libcurl[=DIR] use cURL package [default=no], optionally specify
path to curl-config
6、下面开始编译安装
make install
安装完成后会默认的安装守护程序的二进制文件路径在:(/usr/local/sbin zabbix_server,zabbix_agentd zabbix_proxy)
客户端在 /usr/local/bin/ 二进制文件(zabbix_get zabbix_sender)
当然,这个是默认的,在 configure 的时候可以用 –prefix 指定安装目录
7、安装完成后检查各配置文件是否存在
/usr/local/etc/zabbix_agentd.conf 客户端文件
/usr/local/etc/zabbix_server.conf 服务端文件
8、下面编辑 zabbix_server.conf 配置文件,指定数据库
# vim /usr/local/etc/zabbix_server.conf
DBHost=10.36.1.100 #我这里用的是独立数据库
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
9、继续,下面安装 Zabbix web 界面
PHP 文件复制
Zabbix 前端是用 PHP 编写的, 所以它需要一个 PHP 支持网络服务器运行。安装是通过简单地复制网络服务器的 PHP 文件从前端 / PHP HTML 文档目录。
常见的 Apache web 服务器的 HTML 文档目录位置包括:
/usr/local/apache2/htdocs (默认目录安装 Apache 时)
/srv/www/htdocs (OpenSUSE, SLES)
/var/www/html (Fedora, RHEL, CentOS)
/var/www (Debian, Ubuntu)
9.1、安装 apache2,并拷贝 php 文件(php 文件在解压后的 zabbix-3.2.1 目录里)
apt-get -y -install apache2
cd var/www/html
mkdir zabbix #创建一个目录
chown zabbix:zabbix zabbix/ #将这个目录的
cp -R /root/zabbix-3.2.1/frontends/php/* /var/www/html/zabbix
9.2、安装 PHP5 和配置 Zabbix 前端 PHP
apt-get install php5
apt-get install php5-gd
apt-get install php5-mysql
vim /etc/php5/apache2/php.ini
打开 php.ini 配置文件后续修改的配置项如下:
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 Europe/Riga (date.timezone = Asia/Shanghai #去掉“;”,添加 Asia/Shanghai)
之所以要配置 php.ini 中的内容,是确保所有软件先决条件得到满足。
10、下面开始安装前端
通过火狐浏览器打开 http://10.36.1.55/zabbix/setup.php
10.1、进来以后会看到 zabbix3.2 的欢迎界面
直接点击 netx step
10.2、然后来到检查先决条件的界面,确保所有软件先决条件得到满足之后选择下一步继续。
10.3、接着来到数据库配置
我这里使用的是独立数据库,而且是之前搭建好的一套 mysql 高可用。
还记得之前执行过这条命令不?grant all privileges on zabbix.* to zabbix@localhost identified by ‘zabbix’;
那么现在进入到两台数据库里分别执行如下命令:
grant all privileges on zabbix.* to zabbix@slave identified by’zabbix’;
flush privileges;
10.4、下面开始配置数据库信息
databases host 10.36.1.100 (VIP)
port 3306
database name :zabbix
user:zabbix
password:zabbix
至此基本上大功告成
一些 Zabbix 相关教程集合:
CentOS 7.2 安装部署 Zabbix 3.0.4 详解 http://www.linuxidc.com/Linux/2016-11/137671.htm
Ubuntu 14.04 下 Zabbix2.4.5 源码编译安装 http://www.linuxidc.com/Linux/2015-05/117657.htm
安装部署分布式监控系统 Zabbix 2.06 http://www.linuxidc.com/Linux/2013-07/86942.htm
《安装部署分布式监控系统 Zabbix 2.06》http://www.linuxidc.com/Linux/2013-07/86942.htm
CentOS 7.0 x64 下 Zabbix 3.0 安装笔记 http://www.linuxidc.com/Linux/2016-11/137044.htm
Zabbix 分布式监控系统实践 http://www.linuxidc.com/Linux/2013-06/85758.htm
CentOS 6.3 下 Zabbix 监控 apache server-status http://www.linuxidc.com/Linux/2013-05/84740.htm
CentOS 6.3 下 Zabbix 监控 MySQL 数据库参数 http://www.linuxidc.com/Linux/2013-05/84800.htm
64 位 CentOS 6.2 下安装 Zabbix 2.0.6 http://www.linuxidc.com/Linux/2014-11/109541.htm
ZABBIX 的详细介绍:请点这里
ZABBIX 的下载地址:请点这里
本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-12/138107.htm