基于rhel7.2的Zabbix平台搭建和部署
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于rhel7.2的Zabbix平台搭建和部署相关的知识,希望对你有一定的参考价值。
基于rhel7.2的Zabbix平台搭建和部署(二)
一、监控系统Zabbix-3.2.1的安装
zabbix-server端的操作
说明:zabbix服务器端要提前安装好LNMP环境(mysql,nginx,php5的安装目录均是/usr/local)
(1)创建zabbix运行的用户
[[email protected] ~]# groupadd zabbix
[[email protected] ~]# useradd -g zabbix
[[email protected] ~]# grep zabbix /etc/passwd
zabbix:x:1001:1001::/home/zabbix:/bin/bash
(2)安装libcurl和net-snmp等依赖包
[[email protected] ~]# yum-y install net-snmp net-snmp-devel curl-devel java-1.8.0-openjdkjava-1.8.0-openjdk-devel OpenIPMI-devel libssh2-devel
注意:OpenIPMI-devel 和libssh2-devel软件包必须使用centos在线yum软件源安装。
这里我是这样安装的:
[[email protected] ~]# yum-y install net-snmp net-snmp-devel curl-devel java-1.8.0-openjdkjava-1.8.0-openjdk-devel
[[email protected] ~]# yum install -y OpenIPMI.x86_64
[[email protected] ~]# yum install -y libssh2.x86_64
(3)安装Fping
[[email protected] src]# tar -zxvf fping-3.4.tar.gz
[[email protected] src]# cd fping-3.4
[[email protected] fping-3.4]# ./configure && make && make install
更改所属主、组,更改文件权限:
[[email protected] fping-3.4]# chown root:zabbix /usr/local/sbin/fping
[[email protected] fping-3.4]# chmod 4710 /usr/local/sbin/fping
[[email protected] fping-3.4]# ll -d /usr/local/sbin/fping
-rws--x--- 1 root zabbix 82996 Jun 5 09:25 /usr/local/sbin/fping
(4)安装zabbix Server
[[email protected] src]# tar -zxvf zabbix-3.2.3.tar.gz
[[email protected] zabbix-3.2.3]# ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-java --with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl--with-openipmi && make && make install
注意:
⑴编译时最好带上--enable-java这个参数,方便后续监控tomcat程序所用。
⑵--with-ssh2是不需要在客户端服务器上面安装Zabbix agent,如果需要使用ssh检查,需要在编译的时候加上这项,最低需要libssh2 1.0.0版本,需要安装ssh开发包
⑶--with-openipmi用户可以利用IPMI 监视服务器的物理特征,如温度、电压、电扇工作状态、电源供应等。
⑷如果添加了--enable-proxy, 那么会生成get和sender两条命令. 如下, 用于接收agent发生过来的信息, 同时发送给server。
(5)创建软连接
[[email protected] zabbix-3.2.3]# ln -s /usr/local/zabbix/bin/* /usr/local/bin/
[[email protected] zabbix-3.2.3]# ln -s /usr/local/zabbix/sbin/* /usr/local/sbin/
二、zabbix server配置与启动
(1)登入数据库,创建zabbix用户和数据库
[[email protected] zabbix-3.2.3]# mysql -uroot -p123456
创建zabbix数据库:
mysql> create database zabbix ;
Query OK, 1 row affected (0.00 sec)
创建zabbix用户并授予权限:
mysql> grant all privileges on zabbix.* to [email protected] identified by ‘zabbix‘;
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> exit;
Bye
(2)导入zabbix初始数据
先切换到zabbix解压目录下:
[[email protected] zabbix-3.2.3]# cd database/mysql
[[email protected] mysql]# pwd
/usr/src/zabbix-3.2.3/database/mysql
[[email protected] mysql]# ls
data.sql images.sql schema.sql
再进行zabbix初始数据导入:
[[email protected] mysql]# mysql -uzabbix -pzabbix -hlocalhost zabbix < schema.sql
mysql: [Warning] Using a password on the command line interface can be insecure.
[[email protected] mysql]# mysql -uzabbix -pzabbix -hlocalhost zabbix < images.sql
mysql: [Warning] Using a password on the command line interface can be insecure.
[[email protected] mysql]# mysql -uzabbix -pzabbix -hlocalhost zabbix < data.sql
mysql: [Warning] Using a password on the command line interface can be insecure.
(3)编辑 /usr/local/zabbix/etc/zabbix_server.conf
[[email protected] mysql]# vim /usr/local/zabbix/etc/zabbix_server.conf
创建zabbix日志文件和更改文件权限:
[[email protected] ~]# mkdir -p /usr/local/zabbix/logs
[[email protected] ~]# chown -R zabbix:zabbix /usr/local/zabbix
[[email protected] ~]# ll -d /usr/local/zabbix/logs
drwxr-xr-x 2 zabbix zabbix 4096 Jun 5 10:09 /usr/local/zabbix/logs
(4)启动zabbix服务
[[email protected] ~]# zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf
zabbix_server: error while loading shared libraries: libmysqlclient.so.20: cannot open shared object file: No such file or directory
出现报错,启动失败,下面分析和解决报错内容:
从以上内容可以看出,说是没发现libmysqlclient.so.20这个库文件。那我们用find命令搜索一下看一看,到底有没有这个文件:
[[email protected] ~]# find / -name libmysqlclient.so.20
/usr/src/mysql-5.7.13/libmysql/libmysqlclient.so.20
/usr/local/mysql/lib/libmysqlclient.so.20
libmysqlclient.so.20这个库文件确实存在。现在我们再去看看ld.so.conf文件,看看里面有没有libmysqlclient.so.20的路径。
[[email protected] ~]# cat /etc/ld.so.conf
include ld.so.conf.d/*.conf
可以看见里面没有libmysqlclient.so.20的路径,我们把libmysqlclient.so.20路径添加到ld.so.conf里面即可。
注明:ld.so.conf文件是系统搜索动态连接库的目录设置,在这个文件里面写下的地址系统在运行程序时会自动去这些个目录里面找需要的动态库文件
解决方法如下:
1.进入ld.so.conf文件
[[email protected] ~]# vim /etc/ld.so.conf
2.在末尾新增两行内容
3.让其修改生效
[[email protected] ~]# ldconfig
4.再次尝试启动:
[[email protected] ~]# zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf [[email protected] ~]# netstat -lnp |grep zabbix
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 13887/zabbix_server
从上图我们可以看到启动后没有报错,启动成功了,确认一下服务是否真正开启,我们可以看到zabbix_server默认监听的端口号是10051。
(5)添加开机启动脚本
[[email protected] zabbix-3.2.3]# cp misc/init.d/fedora/core/zabbix_server /etc/rc.d/init.d/zabbix_server
[[email protected] zabbix-3.2.3]# cp misc/init.d/fedora/core/zabbix_agentd /etc/rc.d/init.d/zabbix_agentd
[[email protected] ~]# chkconfig --add zabbix_agentd
[[email protected] ~]# chkconfig --add zabbix_server
[[email protected] ~]# chkconfig zabbix_server on
[[email protected] ~]# chkconfig zabbix_agentd on
(6)修改zabbix开机启动脚本中的zabbix安装目录
编辑服务端配置文件:
[[email protected] ~]# vim /etc/rc.d/init.d/zabbix_server
//zabbix安装目录
//pid文件路径
编辑客户端配置文件:
[[email protected] ~]# vim /etc/rc.d/init.d/zabbix_agentd
(7)重载systemctl,并重新启动zabbix_server服务
[[email protected] ~]# systemctl daemon-reload
[[email protected] ~]# /etc/init.d/zabbix_server stop
Stopping zabbix_server (via systemctl): [ OK ]
[[email protected] ~]# netstat -lnp |grep zabbix_server
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 13887/zabbix_server
[[email protected] ~]# killall -9 zabbix_server
[[email protected] ~]# netstat -lnp |grep zabbix_server
[[email protected] ~]# /etc/init.d/zabbix_server start
Starting zabbix_server (via systemctl): [ OK ]
[[email protected] ~]# netstat -lnp |grep zabbix_server
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 14122/zabbix_server
(8)在防火墙上开启10051端口例外
[[email protected] ~]# firewall-cmd --permanent --add-port=10051/tcp
success
[[email protected] ~]# firewall-cmd --reload
success
三、配置zabbix web页面
(1)在安装目录将frontends拷贝到指定的web root
[[email protected] src]# cd zabbix-3.2.3
[[email protected] zabbix-3.2.3]# cp -r frontends/php/ /usr/local/nginx1.10/html/zabbix
[[email protected] zabbix-3.2.3]# chown -R www:www /usr/local/nginx1.10/html/zabbix
注1:/usr/local/nginx/html为Nginx默认站点目录
注2:www为Nginx运行账户
注3:PHP需要至少开启扩展:
gd,bcmath,ctype,libXML,xmlreader,xmlwriter,session,sockets,mbstring,gettext,mysql
(2)查看是否包括了上面所提到的所有扩展模块
注:从上图里看到的扩展和注3进行对比,少一个都不行,少一个你都没有继续做下去的必要了。
我这里可以对比出,全部的扩展模块都存在了。
(3)在页面上安装zabbix_server
说明:访问Web界面http://192.168.8.117/zabbix,进行相关web配置,配置完成后使用默认用户admin(密码:zabbix)登陆即可。
第一步:进入ZABBIX WEB安装画面
点击“next step”
第二步:进入ZABBIX检测画面
点击“next step”
第三步:对数据库进行设置,这里如果数据库在本地的话端口可以使用0
密码:zabbix
点击“next step”
第四步:进行zabbix server 细节的设置 这一步可以默认
点击“next step”
第五步:查看配置情况
点击“next step”
第六步:完成安装
点击“finish”
第七步:登入zabbix
账号:admin 密码:zabbix
注:把上图username中zabbix改为admin!
第八步:登入zabbix后画面
至此 ZABBIX的基础安装完成。
本文出自 “圣骑士控魔之手” 博客,请务必保留此出处http://wutengfei.blog.51cto.com/10942117/1932376
以上是关于基于rhel7.2的Zabbix平台搭建和部署的主要内容,如果未能解决你的问题,请参考以下文章