zabbix 了解下

640?wx_fmt=gif

关于 zabbix 百度百科是这么解释的:zabbix([`zæbiks])是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。


zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。


zabbix由2部分构成,zabbix server与可选组件zabbix agent。


zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。


本次搭建由于服务器网络限制以及由于网络端口策略所限制,所以还使用了 Nginx 去代理。是在纯离线的环境下搭建的。


其实很多企业中服务器是不根本直接去开放公网的,这就意味着我们没办法去直接使用 yum 的方式去安装。不管是采用 rpm 包、二进制包、源码包等都是需要我们下载好上传到服务器上,之后在进行安装。我是提前就把安装包都下载好了。


640?wx_fmt=png


本次搭建采用的是 lamp 的方式去搭建的。由于完全是离线环境,所以包下载起来有点麻烦。安装包有源码包,二进制包和 rpm 包。


 
 

1、关闭系统默认防火墙
setenforce 0
sed -i -r "/^SELINUX=/c SELINUX=disabled" /etc/selinux/config
which systemctl && systemctl stop firewalld
which systemctl && systemctl disable firewalld
which systemctl && systemctl stop iptables || service iptables stop
which systemctl && systemctl disable iptables || chkconfig iptables off

 
 

2.安装MySQL,上传下载好的rpm文件到服务器并安装
yum install -y mysql-community-client-5.7.24-1.el6.x86_64.rpm \
mysql-community-common-5.7.24-1.el6.x86_64.rpm \
mysql-community-libs-5.7.24-1.el6.x86_64.rpm \
mysql-community-libs-compat-5.7.24-1.el6.x86_64.rpm \
mysql-community-server-5.7.24-1.el6.x86_64.rpm

备:也可以用 rpm 包强制安装 rpm -ivh * --force --nodeps

 
 

3.启动MySQL数据库
service mysqld start
chkconfig mysqld on
service mysqld status
chkconfig --list mysqld

 
 

3.修改root密码并登录数据库
sudo grep 'temporary password' /var/log/mysqld.log
mysql -uroot -p
mysql> ALTER USER root@localhost IDENTIFIED BY 'tigegao';
mysql> exit;


接下来需要安装 httpd,下载好包。


640?wx_fmt=png


 
 

# 安装pcre
tar vxzf pcre-8.42.tar.gz
cd pcre-8.42
./configure
make
make install
echo $?命令查看命令执行结果是否

tar -vxf apr-1.6.5.tar.gz
cd apr-1.6.5
./configure --prefix=/usr/local/apr
echo $?
make
echo $?
make install
echo $?


tar -vxf apr-util-1.6.1.tar.gz
cd apr-util-1.6.1
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
echo $?
make && make install && echo $?


tar -vxf httpd-2.4.37.tar.gz
cp -a apr-1.6.5 httpd-2.4.37/srclib/apr
cp -a apr-util-1.6.1 httpd-2.4.37/srclib/apr-util/
cd httpd-2.4.37
./configure --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
echo $?
make && make install && echo $?

 
 

4.启动httpd
默认安装路径:/usr/local/apache2/

# 编辑配置文件增加以下行
vim /usr/local/apache2/conf/httpd.conf
ServerName 0.0.0.0:80

# 启动httpd
/usr/local/apache2/bin/apachectl -k start

-k start 启动
-k restart 重新启动
-k stop 停止

安装PHP支持(版本要求5.4.0 或以上),zabbix前端会去进行检测,如果版本太低,前端会无法正常配置的。提前下载好离线包:

640?wx_fmt=png

 
 

为了安装效率更快,可以先把php的源码包挪出去,再执行:
rpm -ivh *

之后进行源码编译PHP5.6.40并安装

cp -frp /usr/lib64/libldap* /usr/lib/

cd php-5.6.40

./configure --enable-bcmath --enable-mbstring --enable-fpm --enable-mbstring \
--with-apxs2=/usr/local/apache2/bin/apxs --enable-sockets --with-mysql --with-gettext \
--with-ldap --with-png-dir --with-jpeg-dir --with-freetype-dir --with-gd

make && make install && echo $?

3.设置PHP
# copy配置文件
cp php-5.6.40/php.ini-production /usr/local/lib/php.ini

# 编辑httpd.conf
vim /usr/local/apache2/conf/httpd.conf
添加:
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>

# 重启httpd服务
/usr/local/apache2/bin/apachectl -k stop
/usr/local/apache2/bin/apachectl -k start

4.测试PHP
vim /usr/local/apache2/htdocs/index.php
<?php
phpinfo();
?>

http://主机ip/index.php(用nginx去代理访问)


好了到此,lamp 就搭建完毕了,接下来需要安装 zabbix 的相关包。


640?wx_fmt=png


 
 

1.把源码包zabbix-4.0.3.tar.gz mv挪出去,直接用 rpm -ivh * 进行安装

 
 

2.创建初始数据库
mysql -uroot -p
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'tigergao';
mysql> quit;

3.导入初始架构和数据,系统将提示您输入新创建的密码。这里是在linux命令行下执行的,并不是mysql命令行。
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix

4.为Zabbix server配置数据库
vim /etc/zabbix/zabbix_server.conf
DBPassword=tigergao

5.处理zabbix PHP databases support faild问题
处理方法:安装Mysqli模块

单独来编译mysqli,mysqli是优化过的mysql函数库,MYSQL版本不能低于4.1.12
用phpize生成configure文件,然后编译安装

cd php-5.6.40/ext/mysqli
/usr/local/bin/phpize
./configure
make
make install

注意:该处默认是没有configure文件的,需要用phpize文件去生成configure文件的。生成之后在用./configure去编译。

6.为Zabbix前端配置PHP,这个是前端界面必须要求至少达到的参数。
vim /usr/local/lib/php.ini
post_max_size = 8M # 改为16MB
max_execution_time = 30 # 改为300
max_input_time = 60 # 改为300
date.timezone = Asia/Shanghai
always_populate_raw_post_data = -1
extension=mysqli.so # 增加本行

# 重启httpd服务
/usr/local/apache2/bin/apachectl -k stop
/usr/local/apache2/bin/apachectl -k start

7.将前端页面文件放到httpd目录
wget https://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/4.0.3/zabbix-4.0.3.tar.gz
tar -vxf zabbix-4.0.3.tar.gz
cp -a zabbix-4.0.3/frontends/php/* /usr/local/apache2/htdocs/

 
 

8.配置Zabbix前端,浏览器登录zabbix登录的链接,进行配置前端。
http://服务器ip/index.php
1.欢迎页面:Next step
2.环境检查:Next step
3.数据库信息:填入密码,如果数据库是在本机安装的可以保持默认
4.服务器详细信息:可以保持默认
5.安装前总计:Next step
6.Instll根据提示下载配置文件并放入指定路径
7.完成,会自动跳转登录界面,默认登录账号密码:Admin\zabbix--登录为完成之后记得要设置密码

9.启动Zabbix服务端和Agent
service zabbix-server start
service zabbix-agent start
chkconfig zabbix-server on
chkconfig zabbix-agent on

service zabbix-server status
service zabbix-agent status
chkconfig --list zabbix-server
chkconfig --list zabbix-agent

server端配置:

640?wx_fmt=png

agente端配置:

640?wx_fmt=png

由于服务器8086端口没有被开放出来,只开放了80端口。所以用 nginx 80 端口代理 8086端口。httpd的配置文件监听的是8086端口。

640?wx_fmt=png

nginx代理配置如下:

640?wx_fmt=png

登录前端:

http://服务器ip/index.php

用户名:Admin

密码:zabbix

640?wx_fmt=png

640?wx_fmt=png


640?wx_fmt=png

640?wx_fmt=png

可以自定义一些简单的监控并形成监控图形。

640?wx_fmt=png

640?wx_fmt=png

当然,zabbix 还可以监控数据库,服务器,交换机等等,称得上是一款监控利器了,还需要去深入研究,这样才能够玩的更好。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值