Zabbix4.2版本部署及使用

Zabbix监控部署应用

第1章 zabbix简介

Zabbix是一个企业级的开源分布式监控解决方案,由一个国外的团队持续维护更新,软件可以自由下载使用,运作团队靠提供收费的技术支持赢利。
官方网站:http://www.zabbix.com
Zabbix通过C/S模式采集数据,通过B/S模式在web端展示和配置。
被监控端:主机通过安装agent方式采集数据,网络设备通过SNMP方式采集数据
Server端:通过收集SNMP和agent发送的数据,写入MySQL数据库,再通过php+apache在web前端展示。
Zabbix运行条件:
Server:
Zabbix Server需运行在LAMP(Linux+Apache+Mysql+PHP)环境下,对硬件要求低
Agent:
目前已有的agent基本支持市面常见的OS,包含Linux、HPUX、Solaris、Sun、windows
SNMP:

Zabbix优点

  1. zabbix易于部署,运行稳定。
  2. 对于基础监控例如,内存,cpu,磁盘等基础监控项还是很准确。
  3. 报警机制较为方便,对比prometheus的报警配置,个人感觉zabbix的报警配置更加方便。
  4. 方便管理,适用于大规模集群。本人在之前使用并管理300台以上机器,对于这种中型架构完全没压力。

缺点
5. 功能不够完善,对于容器,云等架构的监控还不是很完善。在此不如prometheus监控。
6. 监控界面简单,适合运维人员管理,不适于给客户观看。当然可以结合grafana使用,grafana是目前一款不错的作图软件,本身支持zabbix,prometheus等数据源。
7. 数据存贮方面。zabbix默认一般是Mysql,对于大数据量级别不适于应用。相较而言prometheus本身就是TSDB时序性数据库,不管是时序性,还是大数据存贮,或是秒及处理速度,都更占优势。

第2章 zabbix安装(内网环境

本部署文档基于centos6系统

2.1 环境准备(基于4.2版本)

资源下载地址:
https://opsx.alibaba.com/mirror ##阿里源
https://mirrors.tuna.tsinghua.edu.cn/ ##清华源需要下载的包
在这里插入图片描述
mysql下载:
https://www.mysql.com/
在这里插入图片描述
在这里插入图片描述
选择自己需要的版本
下载

Zabbix的两种架构,直接与代理,前者适用于小集群,后者适用于中大集群

 一种为server端直接对agent端进行监控方式。这种方式又分为主动模式和被动模式,主动模式为agent端定期主动向server端提交监控数据,被动模式为server端定期找agent端索要数据。少量机器时可用被动模式,大量机器时用主动模式。
 另一种为proxy代理模式。此模式用于大集群,异地机房监控。可实现分布式跨网段监控,每地机房一个proxy代理节点,分担server端压力同时,实现跨网段监控。

两种架构节点部署准备


在这里插入图片描述

2.2 搭建本地yum仓库

少量机器可通过手动部署,机器较多是使用本地源部署较为方便。本人部署集群为300+

  1. 启动http的服务
# `service httpd start`
  1. 创建zabbix源
# cd /etc/yum.repos.d/
# vim zabbix.repo
[zabbix]                                                   #自定义名字
name=Zabbix
baseurl=http://192.168.x.x/zabbix/zabbix_rpm              #http地址及rpm包存放路径
enabled=1                                                  #设置此源是否可用,1为可用
gpgcheck=0                                                 #设置此源是否校验,0为否
  1. 将所用的安装包放到httpd站点目录 /var/www/html/ 下,对应zabbix源中的存放路径
    在这里插入图片描述
  2. 用rpm方式安装需createrepo,该软件用来生成rpm依赖及分组信息
# cd /var/www/html/
# createrepo ./   #此步骤需在html每个子目录下均执行

在这里插入图片描述
5. 访问http网址查看
在这里插入图片描述
在这里插入图片描述
6. 将自己创建的源文件,发送到各个节点。
集群数量多,使用ansible

scp /etc/yum.repos.d/ zabbix.repo

2.3 server端安装中间件

yum clean all
yum -y --nogpgcheck -C install httpd mysql-server php55w php55w-mysql php55w-common php55w-gd php55w-mbstring php55w-mcrypt php55w-devel php55w-xml php55w-bcmath

 注意事项:mysql安装失败查看大小写
 如有组件安装失败,检查是否有自带版本,先卸载再安装。

2.4 服务端zabbix安装及配置

yum -y --nogpgcheck -C install zabbix-web zabbix-server-mysql zabbix-web-mysql zabbix-get zabbix-java-gateway wqy-microhei-fonts net-snmp net-snmp-utils
1. 配置mysql

复制mysql配置文件

\cp /usr/share/mysql/my-medium.cnf /etc/my.cnf
# vim /etc/security/limits.conf 
      * soft nofile 4096  
      * hard nofile 4096
# vim /etc/my.cnf
[mysqld]
connect_timeout=60
wait_timeout=5000                   
max_connections=1000                #最大连接数
max_allowed_packet=50M
max_connect_errors=500

启动MySQL

/etc/init.d/mysqld start

创建用户并授权

create database zabbix character set utf8 collate utf8_bin;
grant all on zabbix.* to zabbix@'localhost' identified by 'zabbix';
flush privileges;
exit

导入zabbix中sql

zcat /usr/share/doc/zabbix-server-mysql-4.2.0/create.sql.gz|mysql -uzabbix -pzabbix zabbix
2. 修改php配置文件
sed -i.ori 's#max_execution_time = 30#max_execution_time = 300#;s#max_input_time = 60#max_input_time = 300#;s#post_max_size = 8M#post_max_size = 16M#;910a date.timezone = Asia/Shanghai' /etc/php.ini
3. 配置zabbix-server配置文件
# vim /etc/zabbix/zabbix_server.conf
DBName=zabbix                  #数据库名称
DBPassword=zabbix              #数据库密码
DBUser=zabbix                  #用户名
StartPollers=5                 #填写范围0-100,默认5 。轮询处理监控项的进程数,增加太大会影响服务器本身性能,保持此参数的值尽可能低,20000个监控项大概控制在80左右即可。
StartTrappers=5                #负责处理agents和proxy推送过来的数据的进程数,默认为5,如果zabbix-agent监控类型较多需要加大此参数
StartDiscoverers=200           #自动发现子进程实例数,默认为1,范围0-250
StartHTTPPollers=1             #HTTP进程轮询实例个数,默认1,范围0-1000,web监控不多选择默认即可
CacheSize=8G                   #缓存大小,单位字节。用于存储主机、监控项、触发器数据的共享内存大小,默认8M最大8G。根据自身zabbix业务需求配置合理的参数。
CacheUpdateFrequency=60        #zabbix缓存更新频率,单位秒。设置范围1-3600
HistoryCacheSize=2G            #历史数据缓存大小,单位字节
TrendCacheSize=2G              #趋势数据缓存大小,单位字节。用于存储趋势数据的共享内存大小
5. html文件配置
cp -R /usr/share/zabbix/ /var/www/html/
6. 文件授权
chmod -R 755 /etc/zabbix/web                      #   修改目录权限
chown -R apache.apache /etc/zabbix/web             #  修改属组
7. 启动服务
echo "ServerName 127.0.0.1:80">>/etc/httpd/conf/httpd.conf             # 配置用户名
/etc/init.d/httpd start
/etc/init.d/zabbix-server start
8. 加入开机自启动
# vim /etc/rc.local
/etc/init.d/mysqld start
/etc/init.d/httpd start
/etc/init.d/zabbix-server start

2.5 网页配置

  1. 浏览器登陆网页管理地址
# http://192.168.x.x/zabbix/
  1. 检查php、mysql完整性
  2. 填写用户名、密码
zabbix 默认用户名: Admin   #注意首位大写
       密码:zabbix

2.6 Zabbix客户端安装配置

  1. 下载agent客户端
yum install -y zabbix-agent-4.2.0-1.el6.x86_64.rpm
  1. 修改agent配置
# vim /etc/zabbix/zabbix_agentd.conf
Server=127.0.0.1         #被动模式,修改为server端ip
ServerActive=            #主动模式,修改为server端ip
  1. 启动agent端
/etc/init.d/zabbix-agent start
echo "/etc/init.d/zabbix-agent start" >> /etc/rc.local

2.7 自动发现与自动注册(推荐使用)

自动发现:服务端server自动发现局域网中的所有客户端agent
优点:方便找到所有客户端,不会遗漏
缺点:一旦agent过多,server压力山大,每隔一段时间,server都会扫描一遍局域网的所有机器。
自动注册:所有客户端Agent主动去服务端server登记注册一下(在本文章就不写了复制图片太麻烦了)
优点:对服务端的压力最低
缺点:配置过程稍微复杂

2.7.1 自动发现配置(推荐使用自动发现,配置改动少)

客户端agent配置
不需要任何配置,只要沿用前面的配置即可。
服务端server配置
不需要任何配置,只要沿用前面的配置即可。

1. 配置自动发现规则—发现主机

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2. 配置添加主机动作—添加主机

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.8 查看监控数据

1. 最新数据

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2. 图形监控

在这里插入图片描述

解决中文乱码
查看监控数据时,出现乱码的解决办法(server端操作)

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
yum -y install wqy-microhei-fonts
\cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf

2.9 自定义监控模板

1. 创建模板

模板的功能:一处创建,处处使用
在这里插入图片描述
自定义名称
在这里插入图片描述

2. 创建应用集

搜索自己创建的模板
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3. 创建监控项

在这里插入图片描述
自定义名称
在这里插入图片描述

4. 添加触发器

在这里插入图片描述
自定义名称,添加表达式
在这里插入图片描述
表达式
在这里插入图片描述
在这里插入图片描述

5. 图形

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6. 给主机添加自定义模板

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

7. 监测查看图形

在这里插入图片描述

8. 聚合图形

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

9. 添加到仪表盘

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

10. 创建幻灯片

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.10 web监测

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.3 分布式监控

1. 功能:

能够减轻服务端的压力,zabbix proxy可以分担压力。zabbix server只能在同一个局域网监控,zabbix proxy可以实现跨网段监控。
在这里插入图片描述

2. 安装准备

在这里插入图片描述

3. 所需安装包

rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/6/x86_64/zabbix-release-3.0-1.el6.noarch.rpm
yum -y install zabbix-proxy-mysql 

4. 安装配置数据库

zabbix proxy需要数据库存储相关的配置信息,但是不存储监控数据(只存在server上)

 [root@m01 ~]# mysql
# 创建proxy用的数据库
create database zabbix_proxy character set utf8 collate utf8_bin;
# 创建proxy用的账户
grant all privileges on zabbix_proxy.* to zabbix@'172.16.1.%' identified by 'zabbix';
# 退出mysql命令行

5. 导入proxy使用sql文件

[root@web01 ~]# ls /usr/share/doc/zabbix-proxy-mysql-3.0.9/
AUTHORS  ChangeLog  COPYING  NEWS  README  schema.sql.gz
[root@m01 ~]# zcat /server/schema.sql.gz|mysql -uzabbix_proxy –pzabbix zabbix_proxy

6. 配置zabbix proxy

# vim /etc/zabbix/zabbix_proxy.conf
Server=127.0.0.1       #配置server端ip地址
Hostname=bj-proxy   #此名称需要与将来在server端web页面上代理程序名称一致,名称自定义。
DBHost=localhost        #指向proxy数据库地址
DBUser=zabbix           #数据库用户
DBPassword=             #数据库密码
ConfigFrequency=600     #配置文件同步server端间隔时间
DataSenderFrequency=1   #数据同步间隔
开启进程
/etc/init.d/zabbix-proxy start

7. zabbix Agent配置

使用proxy代理,将agent端配置文件地址修改为相应的proxy端地址
sed -i 's#172.16.1.61#172.16.1.8#g' /etc/zabbix/zabbix_agentd.conf
重启
/etc/init.d/zabbix-agent restart

8. 网页操作

将proxy代理节点注册到zabbix server

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

[参考文档]

https://blog.csdn.net/zzhlinux911218/article/details/85127444
https://blog.csdn.net/AtlanSI/article/details/82154610

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

可耐的牛牛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值