• IT运维:使用数据分析平台监控H3C交换机


    概述

    在企业日常运维中,设备种类繁多,日志格式各异,日志量巨大,大量的告警,我们面临着如何统一的存放这些日志?如何对海量的日志进行查看,分析?传统的日志设备无法满足日志格式各异的数据接入,并且能进一步对收集的日志进行分析的需求,我们最终选定鸿鹄,它可以完美的解决掉这些痛点。

    本文针对网络设备部分的日志进行收集以及分析,帮助运维人员快速的定位故障、安全问题。

    监控目标

    收集基础架构中的交换机、防火墙等网络设备的日志

    监控网络设备的登录安全

    监控网络设备的配置安全

    监控网络设备接口情况

    架构描述

    图片

    组件描述

    网络设备:交换机、路由器、防火墙等支持syslog方式的设备

    鸿鹄平台:Vector用于数据采集器。数据集,用于不同数据存放。查询,用于查询数据集中的数据。

    数据导入流程

    网络设备通过syslog方式,将数据发送到鸿鹄平台;Vector采集数据后,存放到数据集,为查询提供数据。

    Syslog数据导入配置

    注意,需要鸿鹄平台能访问互联网。

    在鸿鹄中配置 Syslog 数据采集

    安装Vector

    图片

    查看安装后vector版本,确认安装成功

    vector安装好后,直接执行vector 时,系统首先会去/usr/bin下寻找命令,如果不在这个目录中,就会找不到了。这个时候我们就需要为这些找不到的命令建立一个链接文件,链接到/usr/bin下  

    图片

    (具体代码请加入鸿鹄技术交流群,至知识库中获取)

    登录鸿鹄平台,数据管理>新建数据集

    图片

    图片

    编辑数据源名称,选择数据集范围为上面创建的“switch”,此时会启用

    图片

    创建syslog.toml脚本,需要调整字段

    address = "0.0.0.0:514":0.0.0.0表示接收所有主机发送过来的syslog,514表示接收的端口(syslog默认为514)

    mode = "udp":表示接收syslog的协议syslog默认为udp)

    ._target_table = "switch" : 表示上文你创建的数据集名称

    address = "172.20.6.111:9092":鸿鹄的IP和相应的端口

    图片

    运行修改的syslog脚本,注意保持运行状态。

    图片

    (具体代码请加入鸿鹄技术交流群,至知识库中获取)

    登录交换机触发syslog(注:登录交换机输入命令都会自动触发syslog)。登录鸿鹄平台查看数据是否导入到switch数据集。如下图事件计数已经显示数据导入成功

    图片

    查询下通过vector导入到switch数据集的数据

    图片

    图片

    网络设备配置syslog

    H3C交换机syslog配置

    需要开启日志,并将日志发送到鸿鹄平台。默认情况下syslog是通过udp514端口发送日志

    图片

    将 IP 地址为 172.20.6.111的主机用作日志主机,使用 loghost 通道发送信息(可选,系统缺省为

    loghost 通道),使用 local5 作为日志主机记录工具。

    图片

    注意:这里可以指定发送日志的源地址,可以不指定,一般情况下为了方便辨识,建议指定

    图片

    注意:如果是要通过管理口发送日志,管理口由于配置了VPN-Instance,需要指定VPN-Instance

    图片

    配置输出规则:允许所有模块、级别高于等于 informational 的日志信息输出到日志主机。

    图片

    我这里的实际配置命令

    图片

    Cisco交换机syslog配置

    在Cisco网络设备上的配置命令一般为:

    在全局模式下

    图片

    我这里的实际配置命令

    图片

    字段抽取

    H3C交换机由于有自己特定的日志格式,鸿鹄并不会抽取所有字段,因此要针对H3C交换机的日志格式进行数据抽取。字段抽取的逻辑是,先通过sql语句创建视图,视图生成后我们就可以直接调用视图里的字段,它实际日志仍旧存放在原数据集。

    我们先分析下H3C交换机的日志格式。官方解释日志格式如下:

    图片

    我们实际的日志格式分析,需要抽取的字段

    图片

    switch_syslog,这里是需要新建的视图名称

    switch._time 脚本中由第六行开始switch均指的需要抽取数据的原数据集,这里需要根据你的数据集名称替换

    图片

    在高阶查询中运行,成功

    图片

    在视图里可以查看到我们创建的switch_syslog的视图

    图片

    我们运行下搜索语句测试下,同时在红色部分可以看到我们抽取出来的字段

    图片

    图表展示

    仪表板>新建仪表板

    图片

    创建完成

    图片

    设备变更次数统计

    新建图表>设备变更次数统计

    选择图表类型:饼图

    查询语句:这个语句可以先在查询里验证,确认查找的结果是想要的

    时间范围:选择30天,可以根据自己的情况调整

    图片

    图片

    生成图表后,可以查看到近30天内,哪些设备变更配置多少次。

    目的:比如最近一个月内并没有维护,设备变更次数过多的设备就存在异常,通过查询看看哪些人登录了,做了什么,就可以判断这些行为是否正常,是否合规。

    图片

    设备登录次数统计

    新建图标>用户登录次数统计

    选择图表类型:条状图

    查询语句:这个语句可以先在查询里验证,确认查找的结果是想要的

    时间范围:选择30天,可以根据自己的情况调整

    图片

    图片

    生成图表后,可以查看到近30天内,哪些设备登录了多少次

    目的:比如最近一个月内并没有维护,设备登录次数过多的设备就存在异常,通过查询看看哪些人登录了,做了什么,就可以判断这些行为是否正常,是否合规。

    图片

    用户登录事件图表

    新建图标>用户登录事件图表

    选择图表类型:表格(由于我这里需要展示明细,所以选择表格的方式)

    查询语句:这个语句可以先在查询里验证,确认查找的结果是想要的

    时间范围:选择30天,可以根据自己的情况调整

    图片

    图片

    生成图表后,可以查看到具体哪个时间,哪个设备,哪个用户从哪个IP登录

    目的:比如在非维护时间段或者非工作时间段,登录设备就存在异常,通过查询看看哪些人在这个时间段登录设备,从而判断这些行为是否正常,是否合规。

    图片

    设备配置变更图表

    新建图标>设备配置变更图表

    选择图表类型:表格(由于我这里需要展示明细,所以选择表格的方式)

    查询语句:这个语句可以先在查询里验证,确认查找的结果是想要的

    时间范围:选择30天,可以根据自己的情况调整

    图片

    图片

    生成图表后,可以查看到具体哪个时间,哪个用户,哪个设备,执行了哪个命令

    目的:比如在非维护时间段或者非工作时间段,变更设备配置,通过查询看看哪些人在这个时间段登录设备,进行了哪些配置,从而判断这些行为是否正常,是否合规。

    图片

    搜索语句

    以下列出所有本文中的搜索语句,供参考

    小提示:搜索语句命令部分会调用抽取的字符段,如果未抽取字符段,会出现报错。

    图片

    效果图

    图表创建完成后,我们选择“网格布局”对图表布局进行优化调整,最终生成的效果如下

    图片

    图片

  • 相关阅读:
    关于MyBatisPlus框架下出现xml里面定义的方法无法被正确识别以及提示调用mysql存储过程时参数无效的问题
    centos docker中无法安装软件的解决方法
    Profinet转Ethernet IP网关在汽车配件生产中的应用
    修改ctags让fzf.vim插件显示C,C++方法声明的标签
    Linux0.11内核源码解析01
    jvm双亲委派机制详解
    UML图记忆技巧
    Git 开源的版本控制系统-07-gitignore 指定忽略版本管理的文件
    uniapp iOS 真机调试
    [PAT练级笔记] 23 Basic Level 1023 组个最小数
  • 原文地址:https://blog.csdn.net/Yhpdata888/article/details/132721000