CentOS7 部署 Zabbix 监控平台———监控网络设备,Linux 主机、Windows 主机

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: Zabbix 能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。是一个基于 Web 界面的提供分布式系统监视以及网络监视功能的企业级开源解决方案。

CentOS7 部署 Zabbix 监控平台



一、Zabbix 简述


    1.监控功能

    2.Zabbix 工作原理

    3.Zabbix 重要组件

    4.Zabbix 进程

    5.Zabbix 监控架构


二、部署 Zabbix 监控平台


    1.安装 Zabbix 监控软件

    2.安装 Mariadb 数据库

    3.编辑 Zabbix 主配置文件

    4.安装 Zabbix Web 接口

    5.Zabbix Web 平台基本配置


三、部署被监控端


    1.监控路由器

    2.添加并监控 Linux 主机

    3.添加并监控 Win7 主机


一、Zabbix 简述



Zabbix 能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。是一个基于 Web 界面的提供分布式系统监视以及网络监视功能的企业级开源解决方案。 Zabbix 官方网站


1.监控功能


  • 主机的性能监控、网络设备性能监控、数据库性能监控、多种告警方式、详细的报表图表绘制。
  • 监控主机 Zabbix 有专用的 Agent,可以监控 Linux,Windows,FreeBSD 等。
  • 监控网络设备 Zabbix 通过 SNMP 协议,SSH(不常用)。


1)监控对象


  • 设备:服务器,路由器、交换机。
  • 软件:OS,网络,应用程序。


2)主机性能指标监控


  • 故障监控:Down 机,服务不可用,主机不可达。


2.Zabbix 工作原理


首先需要在被监控主机上安装 Agent 软件,用来收集各项数据信息,并发送给 Server 端,当 Server 端接收到 Agent 发送过来的信息后,会将数据存储到数据库中,然后通过 Web 界面来将数据在前端进行展示和绘图。


这里 Agent 收集数据分为主动和被动两种模式:


  • 主动:Agent 请求 Server 获取主动的监控项列表,并主动将监控项内需要检测的数据提交给 Server/Proxy。
  • 被动:Server 向 Agent 请求获取监控项的数据,Agent 返回数据。


3.Zabbix 重要组件


image.png


4.Zabbix 进程


默认情况下 Zabbix 包含五个程序:


  1. Sender:用于发送数据给 Server 或者 Proxy,通常用于耗时比较长的检查;
  2. Get:Zabbix 命令,主要用于排查使用,可以在 Server 端执行来获取远程客户端信息;
  3. Proxy:代理守护进程,相当于是一个中转站,将收集到的数据 主动/被动 的提交到 Server 上;
  4. Agent:客户端守护进程,此进程用于收集被监控端的数据,如:CPU 负载、内存、硬盘使用情况等;
  5. Server:服务端守护进程,用来接收 Agent Get Sender Server Proxy Java_Gateway 提供的数据信息。


5.Zabbix 监控架构


在实际生产坏境中,Zabbix 根据网络环境、监控规模等外界因素分为三种架构:Server-Client(直接连接)、Master-Node-Client(Node 架构)、Server-Proxy-Client(Proxy 架构),如图:

image.png


1)Server-Client 架构


  • Server-Client 架构是 Zabbix 最简单的架构,监控端和被监控端之间不经过任何代理;
  • 直接在 Zabbix Server 和 Zabbix Agent 间进行数据交互,适用于网络比较简单,设备比较少的监控环境。


2)Master-Node-Client 架构


  • Master-Node-Client 架构是 Zabbix 最复杂的架构,适用于跨网络、跨机房、设备较多的大型环境。
  • 每个 Node 同样也是一个 Server 端,Node 下面可以接 Proxy,也可以直接 接 Client。
  • Node 有自己的配置文件和数据库,其要做的是将配置信息和监控数据向 Master 同步。
  • 当 Master 发生故障或损坏, Node 可以保证架构的完整性。


3)Server-Prxoy-Client 架构


  • Proxy 是 Server、Client 间沟通的桥梁,Proxy 本身没有前端,而且其本身并不存放数据;
  • 只是用来将 Agent 发送过来的数据暂时存放,然后再提交给 Server。
  • 该架构经常是和 Master-Node-Client 架构做比较的架构,一般适用于跨机房、跨网络的中型网络架构的监控。


二、部署 Zabbix 监控平台



准备工作:


image.png


[root@localhost ~]# wget https://mirrors.aliyun.com/zabbix/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm
[root@localhost ~]# rpm -ivh zabbix-release-4.4-1.el7.noarch.rpm
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ls


修改 Zabbix 的 yum 源


[root@localhost yum.repos.d]# vim zabbix.repo
将文件所有的:
baseurl=http://repo.zabbix.com/zabbix/4.4/rhel/7/$basearch/
改为:
baseurl=http://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/4.4/rhel/7/$basearch/


image.png


1.安装 Zabbix 监控软件


[root@localhost ~]# yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent     


2.安装 Mariadb 数据库


Zabbix Web 需要数据库。在 Mariadb 中创建 Zabbix 数据库,授权 Zabbix 用户管理,增强安全性。


[root@localhost ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
[root@localhost ~]# yum -y install mariadb-server mariadb


[root@localhost ~]# systemctl start mariadb
[root@localhost ~]# mysqladmin -uroot password '123456'
[root@localhost ~]# mysql -uroot -p123456
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by '123123';
MariaDB [(none)]> exit


导入数据库脚本:


[root@localhost ~]# zcat /usr/share/doc/zabbix-server-mysql-4.4.10/create.sql.gz | mysql -uzabbix -p123123 zabbix       


3.编辑 Zabbix 主配置文件


1)指定数据库名称、用户、密码


[root@localhost ~]# systemctl start zabbix-server zabbix-agent httpd
[root@localhost ~]# netstat -anpt | grep zabbix


2)启动 Server、Agent、HTTP 服务


[root@localhost ~]# systemctl start zabbix-server zabbix-agent httpd
[root@localhost ~]# netstat -anpt | grep zabbix


4.安装 Zabbix Web 接口


1)编辑 Apache 服务针对 Zabbix 的前端配置为 /etc/httpd/conf.d/zabbix.conf 设置时区与当前系统时区一致。


[root@localhost ~]# vim /etc/httpd/conf.d/zabbix.conf
将原来的第19行修改成如下:
19          php_value date.timezone Asia/Shanghai
[root@localhost ~]# systemctl restart httpd                 # 重启 HTTP 服务


2)使用浏览器访问:http://192.168.100.110/zabbix


image.png


image.png


image.png


image.png


后两步依次点击 Next step 即可


image.png


5.Zabbix Web 平台基本配置


修改初始密码


image.png


image.png


image.png


三、部署被监控端



1.监控路由器


  • 使用 SNMP 协议来做监控,需要在路由器上做配置。


image.png


1)在被监控路由器上操作


R1#conf t
R1(config)#int f0/0
R1(config-if)#ip add 192.168.100.200 255.255.255.0
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#snmp-server community 123456 ro              #设置被服务器轮询的只读共同体
R1(config)#snmp-server host 192.168.100.110 123456          #设置发送 trap 消息的共同体


2)通过 Zabbix Web 管理界面来对路由器进行监控


1.配置 --- 主机群组 --- 创建主机群组 --- 组名:网络设备 --- 添加


image.png


2.配置 --- 主机 --- 创建主机


image.png


3.添加主机


image.png


4.模板 --- 选择 --- Template Module Generic SNMPv1 --- 选择(链接指示器)


image.png


5.宏 --- 继承以及主机宏 --- {$SNMP_COMMUNITY} 更改值 public 为123456


image.png


6.验证:主机列表中 switch 为绿色


image.png


7.查看图形显示,点击 sw1 的图形


image.png


image.png


进入原来的界面,滑倒最下面,直接点击 那个大的 添加


7.查看数据


image.png


2.添加并监控 Linux 主机



1)被监控机配置


[root@localhost ~]# rpm -ivh zabbix-agent-3.2.6-1.el7.x86_64.rpm
[root@localhost ~]# vim /etc/zabbix/zabbix_agentd.conf
根据行号做以下修改:
95  Server=192.168.100.110
136 ServerActive=192.168.100.110
147 Hostname=linux-Client
[root@localhost ~]# systemctl start zabbix-agent



2)通过 Zabbix Web 管理界面来对 Linux 主机进行监控


1.上面的 配置 然后 主机,创建主机,左边的群组记得选 所有 ,点击 创建主机


image.png


2.点击 模板 界面,链接指示器,选择如下的模板


image.png


3.不用配置 宏、配置、图形,因为 Linux 的主机默认已经提供,直接查看即可,如下:


image.png


3.添加并监控 Win7 主机



1)Win7 主机上安装 Zabbix-Agent


  1. 在 Win7 C盘创建一个名为 zabbix 的文件夹。
  2. 把相关软件 64 位的客户端程序和 conf 文件复制到 zabbix。


image.png


2)修改 Agent 配置文件


修改成如下,这些默认就有找到修改即可:
Server=192.168.100.130
ServerActive=192.168.100.130
Hostname=win-c


3)使用 CMD 命令来进行安装


  • -c:指定配置文件
  • -i:安装
  • -s:启用
  • -x:停止
  • -d:卸载


打开 CMD 命令行


进入zabbix目录:
c:\Users\Administrator> cd c:\zabbix
安装agent:
c:\zabbix> zabbix_agentd.exe -c zabbix_agentd.win.conf -i
指定agent配置文件并启动:
c:\zabbix> zabbix_agentd.exe -c zabbix_agentd.win.conf -s
查看agent服务端口10050是否开放:
c:\zabbix> netstat -a


image.png


4)通过 Zabbix Web 管理界面来对 Win7 主机进行监控


1.先创建一个群组


image.png


2.创建主机


image.png


3.选择模块


image.png


4.查看和之前的步骤也是一样


image.png


相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
3月前
|
Kubernetes Devops 持续交付
DevOps实践:使用Docker和Kubernetes实现持续集成和部署网络安全的守护盾:加密技术与安全意识的重要性
【8月更文挑战第27天】本文将引导读者理解并应用DevOps的核心理念,通过Docker和Kubernetes的实战案例,深入探讨如何在现代软件开发中实现自动化的持续集成和部署。文章不仅提供理论知识,还结合真实示例,旨在帮助开发者提升效率,优化工作流程。
|
1月前
|
安全 定位技术 数据安全/隐私保护
|
1月前
|
机器学习/深度学习 数据采集 算法
目标分类笔记(一): 利用包含多个网络多种训练策略的框架来完成多目标分类任务(从数据准备到训练测试部署的完整流程)
这篇博客文章介绍了如何使用包含多个网络和多种训练策略的框架来完成多目标分类任务,涵盖了从数据准备到训练、测试和部署的完整流程,并提供了相关代码和配置文件。
47 0
目标分类笔记(一): 利用包含多个网络多种训练策略的框架来完成多目标分类任务(从数据准备到训练测试部署的完整流程)
|
1月前
|
缓存 监控 网络协议
计算机网络的常用的网络通信命令(Windows)
本文介绍了网络技术中常用的命令,如ping用于检测网络连通性,ipconfig查看TCP/IP配置,netstat监控网络状态,arp显示和修改ARP缓存,at安排任务执行,tracert追踪路由,以及nbtstat获取NetBIOS信息。
30 1
|
2月前
|
Windows
Windows操作系统部署安装Kerberos客户端
详细介绍了在Windows操作系统上部署安装Kerberos客户端的完整过程,包括下载安装包、安装步骤、自定义安装路径、修改环境变量、配置hosts文件和Kerberos配置文件,以及安装后的验证步骤。
370 3
Windows操作系统部署安装Kerberos客户端
|
2月前
|
安全 Windows
怎样利用 Windows XP实现网络统一关机
怎样利用 Windows XP实现网络统一关机
怎样利用 Windows XP实现网络统一关机
|
3月前
|
开发框架 JavaScript .NET
【Azure 应用服务】Azure Mobile App (NodeJS) 的服务端部署在App Service for Windows中出现404 Not Found
【Azure 应用服务】Azure Mobile App (NodeJS) 的服务端部署在App Service for Windows中出现404 Not Found
|
3月前
|
存储 安全 网络安全
【Azure 环境】使用Azure中的App Service部署Web应用,以Windows为主机系统是否可以启动防病毒,防恶意软件服务呢(Microsoft Antimalware)?
【Azure 环境】使用Azure中的App Service部署Web应用,以Windows为主机系统是否可以启动防病毒,防恶意软件服务呢(Microsoft Antimalware)?
|
6天前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
24 3