一、为什么要用zabbix
zabbix 是最近比较流行的一款开源的系统监控软件,他的特点是配置简单,可以直接通过web界面进行管理和维护,同时能够自定义监控的数据和图形,从使用上使比较轻松的,但是她也有不足的地方,如报警功能比较弱,对于一些特别出图需求无法做到。在实际的生产场景中,可以根据自己的需求进行合理的选择。
二、zabbix的安装
zabbix官方更新版本的速度是比较快的,到目前为止已经更新到了3.4的版本,最新的版本还是测试版,在生产环境我们最好使用3.0的长期支持版本。对于3.0以上的版本,官方是要求PHP在5.4以上才行,对于这一点需要注意。
https://www.zabbix.com/life_cycle_and_release_policy
zabbix是一个CS架构的系统,需要有一个服务端,被监控的设备上需要安装客户端的agent软件,当然zabbix也支持snmp,fping,端口监视等方法去监控远程服务器或网络状态。
准备安装环境
zabbix的服务端需要有一个本地数据库,监控的数据和信息都存在本地的数据库中,同时由于是利用web界面进行管理,我们有需要安装Apache或者nginx。
我目前所使用的服务端和客户端都是是 CentOS6.5,数据库使用mysql.
同时安装过程中,我们需要关闭selinx和防火墙,当然如果生产环境需要用到防火墙,我们可以在客户端上加上一条防火墙规则(因为客户端是被动接受服务端的请求,默认使用10050端口)
# iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 10050 -j ACCEPT
2.安装eple源和zabbix 所要用到的依赖包。
直接使用阿里云的epel:
wget -O
/etc/yum
.repos.d
/epel
.repo http:
//mirrors
.aliyun.com
/repo/epel-6
.repo
设置主机名,主机名的配置需要统一规划好,早后面配置的时候需要识别主机名,同时,如果没有内网DNS,需要绑定hosts。
安装所需要的软件包,这里所用的web服务是Apache:
yum install httpd mysql mysql-server gcc gcc-c++ glibc mysql-devel libxml2-devel libcurl curl curl-devel net-snmp net-snmp-devel libssh3-devel OpenIPMI-devel
3. 安装或升级php
这里的epel源默认安装的是php5.3的版本,配置zabbix服务端要求5.4以上,需要对此版本进行升级.升级php需要配置一个remi源。这个步骤请参考我之前转载的php升级的方法:
http://tryingstuff.blog.51cto.com/4603492/1854343
rpm -i http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
使用yum 安装更高版本的php:
yum install --enablerepo=remi --enablerepo=remi-php56 php php-gd php-xml php-mbstring php-bcmath php-pdo php-mysql -y
3.配置LAMP环境
/etc/init.d/httpd start
cp /usr/share/mysql/my-medium.cnf /etc/my.cnf
vim /etc/my.cnf
将下面的配置放到mysqld 模块下:
default-storage-engine = innodb
innodb_file_per_table
collation-server = utf8_general_ci
init-connect = 'SET NAMES utf8'
character-set-server = utf8
启动mysql : /etc/init.d/mysqld start
编写phpinfo.php 测试lamp是否成功加载我们需要的模块,或者直接执行 ”php -m“.
cd /var/www/html
vim phpinfo.php
1 <?php
2 phpinfo();
3 ?>
在网页访问 http://local-ip/phpinfo.php测试,测试成功后删除此文件。
4.配置zabbix服务端数据库
这里我们下载官方3.2版本的源码进行编译安装。在解压的安装包中包含了zabbixd的数据库文件
对数据库进行如下操作:
mysql mysql> create database zabbix; mysql> grant all on zabbix.* to zabbix@localhost identified by'zabbix'; mysql> flush privileges; mysql> exit
在解压后的database/mysql目录中
导入zabbix的数据,注意顺序:
cd 到下载解压的zabbix目录中:
cd /software-tools/zabbix-3.2.1/database/mysql
依次导入数据库:<单实例数据库不用指定socket>
mysql -u zabbix -pzabbix zabbix -S /data/3306/mysql.sock <schema.sql mysql -u zabbix -pzabbix zabbix -S /data/3306/mysql.sock <p_w_picpaths.sql mysql -u zabbix -pzabbix zabbix -S /data/3306/mysql.sock <data.sql
5. 安装Zibbix
安装zabbix 客户端 agent,使用yum安装对应版本的agent需要先配置zabbix的yum源,或者直接下载rpm包安装。
yum install -y http://repo.zabbix.com/zabbix/3.2/rhel/6/x86_64/zabbix-release-3.2-1.el6.noarch.rpm yum install zabbix-agent –y
注意:安装zabbix_agent 会自动生成一个zabbix的用户,而服务端需要用到这个用户,如果没有安装安装agent需要手动创建该用户。
安装server端:
cd /software-tools/zabbix-3.2.1
编译参数,<如果需要Java参数模块,需要加上,这里没有加 --enable-java >
./configure --prefix=/usr/local/zabbix_server --enable-server --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2--with-openipmi --with-ssh3
make install
6.修改zabbix配置文件
到源码包中将文件拷贝到apache的网站访问目录,并命名为zabbix
mv /software-tools/zabbix-3.2.1/frontends/php
授权:
chown -R apache:apache /var/www/html
修改zabbix配置文件,确保以下配置参数和数据库对应:
vim /usr/local/zabbix_server/etc/zabbix.conf 68 DBHost=localhost #host对应,默认是注释状态 78 DBName=zabbix 94 DBUser=zabbix 102 DBPassword=zabbix #默认密码是注释状态,需要打开
配置好的状态:
[root@localhost etc]# grep "^[a-Z]" zabbix_server.conf LogFile=/tmp/zabbix_server.log DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=zabbix
7. 指定配置文件启动zabbix (启动前检查是否有zabbix用户)
/usr/local/zabbix_server/sbin/zabbix_server -c /usr/local/zabbix_server/etc/zabbix_server.conf
网页登录本地IP/zabbix 即可进入web页面进行安装
8. Web界面安装后续配置
如果web界面出现错误配置提示:需要修改php的配置文件,按照提示修改/etc/php.ini文件参数为要求的参数即可。
如果缺少某些模块,可以使用yum的方式指定yum仓库直接添加:
yum install --enablerepo=remi --enablerepo=remi-php56 php-bcmath gd -y
重启httpd后安装检查将会通过。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。