红联Linux门户
Linux帮助

CentOS 6.0下Zabbix分布式监控系统的初步搭建

发布时间:2015-04-02 22:20:54来源:linux网站作者:zhangran

搞了整整一天,各种问题。搭建环境为LAMP,我天真的用LNMP去搭建,结果死活运行不起来zabbix的前台页面。

还有PHP的时区问题、MySQL的连接问题。今天从开始安装,尽量整理重现碰到的所有问题,以及后续的解决办法。


1.Linux系统安装,用的是CentOS 6.0 minimal ,安装过程就不写了,参考本站相关的安装文档,在Linux入门栏目中。


2.环境搭建 LAMP

apache我直接使用的yum安装

yum -y install httpd

PHP同样也是yum 安装,也可以用源码。

yum安装

yum install php php-fpm php-gd php-bcmath php-ctype php-xml php-xmlreader php-xmlwriter php-session php-net-socket php-mbstring php-gettext php-mysqli

我这里采用的是mysql数据库,如果是别的数据,可以做相应更改,

ibm_db2

Required if IBM DB2 is used as Zabbix backend database.

mysqli

Required if MySQL is used as Zabbix backend database.

oci8

Required if Oracle is used as Zabbix backend database.

pgsql

Required if PostgreSQL is used as Zabbix backend database.

sqlite3

Required if SQLite is used as Zabbix backend database.

数据库我直接用的下载好的包

mysql-cluster-gpl-7.2.8-linux2.6-x86_64.tar.gz      也可以yum安装,效果一样

创建mysql 用户和组

[root@localhost ~]# tar -zxvf mysql-cluster-gpl-7.2.8-linux2.6-x86_64.tar.gz

[root@localhost mysql]# useradd -r -g mysql mysql

更改文件夹用户以及用户组

[root@localhost mysql]# chown -R mysql .

[root@localhost mysql]# chgrp -R mysql .

复制mysql配置文件

[root@localhost mysql]# cp support-files/my-large.cnf /etc/my.cnf

初始化数据库

[root@localhost mysql]# ./scripts/mysql_install_db --user=mysql

添加数据库开机启动

[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysqld

[root@localhost mysql]# chkconfig --add mysqld

添加环境变量

vi /etc/profile

最后面加上两句

PATH=$PATH:/usr/local/mysql/bin

export PATH

mysql 安装完成,启动成功。

[root@localhost mysql]# service mysqld start

Starting MySQL... SUCCESS!

创建zabbix数据库  创建zabbix 数据库用户

mysql> create database zabbix character set utf8 collate utf8_bin;

Query OK, 1 row affected (0.03 sec)

mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';

Query OK, 0 rows affected (0.02 sec)

mysql> quit

Bye

问题汇总

[root@localhost create]# mysql -u root

-bash: mysql: command not found

[root@localhost create]#  ln -s /usr/local/mysql/bin/mysql /usr/bin

原因:这是由于系统默认会查找/usr/bin下的命令,如果这个命令不在这个目录下,当然会找不到命令,我们需要做的就是映射一个链接到/usr/bin目录下,相当于建立一个链接文件。

到此,LAMP环境正式搭建完毕,接下来是zabbix服务端的安装。


3.Zabbix服务端安装

图省事的可以直接按照官方教程来安装,https://www.zabbix.com/documentation/2.2/manual/installation/install_from_packages

但是我安装好以后,没发现有中文版,英文看着实在迷糊,所以安装一个有中文版的版本(2.2.2)。

[root@localhost create]# yum install zabbix-server-mysql*2.2 zabbix-web-mysql*2.2

安装完成后,进入/usr/share/doc/zabbix-server-mysql-2.2.2/create/ 导入数据库

[root@localhost create]# cd /usr/share/doc/zabbix-server-mysql-2.2.2/create/

依次运行下列三条命令,导入数据库

[root@localhost create]# mysql -uroot zabbix < schema.sql

[root@localhost create]# mysql -uroot zabbix < images.sql

[root@localhost create]# mysql -uroot zabbix < data.sql

修改zabbix配置文件

[root@localhost create]# vi /etc/zabbix/zabbix_server.conf

其中,修改以下字段

DBSocket=/tmp/mysql.sock --------- 根据你真实mysql.sock修改

DBHost=localhost --------- 一般不动

DBName=zabbix --------- 刚才建立的zabbix数据库

DBUser=zabbix --------- 数据库账号

DBPassword=zabbix --------- 数据库密码

修改完成保存退出,然后启动zabbix服务。

[root@localhost create]# service zabbix-server start

Starting Zabbix server: [ OK ]

下面就可以直接访问 http://IP地址/zabbix 进行安装了


问题汇总

1.按照官方教程安装的,可以直接访问网页安装,但是按照我的方法安装的,貌似没有前台页面。

从官网下载RPM包,我对应版本是2.2.2 http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-web-2.2.2-1.el6.noarch.rpm

然后本地解压,得到两个文件夹

其中usr文件夹下的就是前台页面,etc文件夹下的是配置文件,复制到对应目录就可以访问了。

2. 访问不到的问题,首先看看apache是不是启动了,对应的还有php-fpm mysql 服务,是否关掉了iptables防火墙,也可以添加规则开启。

3. 出现下面问题,是由于php.ini没有配置时区

编辑/etc/php.ini date.timezone = PRC 重启服务。

4.数据库无法连接,这个问题困扰了我一天

首先,检查/var/lib/mysql/mysql.sock 存不存在,如果没有,做个软连接过去

[root@localhost conf]# ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock

如果还报错,可能是SELinux没关的原因,关掉重启就好,我就碰到这两种问题,其余的没碰到。

SELinux关闭方法:

修改/etc/selinux/config 文件

将SELINUX=enforcing改为SELINUX=disabled

重启机器即可

zabbix默认登陆账户 Admin 密码zabbix

安装正式完成!