概述
在企业日常运维中,设备种类繁多,日志格式各异,日志量巨大,大量的告警,我们面临着如何统一的存放这些日志?如何对海量的日志进行查看,分析?传统的日志设备无法满足日志格式各异的数据接入,并且能进一步对收集的日志进行分析的需求,我们最终选定鸿鹄,它可以完美的解决掉这些痛点。
本文针对网络设备部分的日志进行收集以及分析,帮助运维人员快速的定位故障、安全问题。
监控目标
收集基础架构中的交换机、防火墙等网络设备的日志
监控网络设备的登录安全
监控网络设备的配置安全
监控网络设备接口情况
架构描述
组件描述
网络设备:交换机、路由器、防火墙等支持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网络设备上的配置命令一般为:
在全局模式下<config>
我这里的实际配置命令
字段抽取
H3C交换机由于有自己特定的日志格式,鸿鹄并不会抽取所有字段,因此要针对H3C交换机的日志格式进行数据抽取。字段抽取的逻辑是,先通过sql语句创建视图,视图生成后我们就可以直接调用视图里的字段,它实际日志仍旧存放在原数据集。
我们先分析下H3C交换机的日志格式。官方解释日志格式如下:
我们实际的日志格式分析,需要抽取的字段
switch_syslog,这里是需要新建的视图名称
switch._time 脚本中由第六行开始switch均指的需要抽取数据的原数据集,这里需要根据你的数据集名称替换
在高阶查询中运行,成功
在视图里可以查看到我们创建的switch_syslog的视图
我们运行下搜索语句测试下,同时在红色部分可以看到我们抽取出来的字段
图表展示
仪表板>新建仪表板
创建完成
设备变更次数统计
新建图表>设备变更次数统计
选择图表类型:饼图
查询语句:这个语句可以先在查询里验证,确认查找的结果是想要的
时间范围:选择30天,可以根据自己的情况调整
生成图表后,可以查看到近30天内,哪些设备变更配置多少次。
目的:比如最近一个月内并没有维护,设备变更次数过多的设备就存在异常,通过查询看看哪些人登录了,做了什么,就可以判断这些行为是否正常,是否合规。
设备登录次数统计
新建图标>用户登录次数统计
选择图表类型:条状图
查询语句:这个语句可以先在查询里验证,确认查找的结果是想要的
时间范围:选择30天,可以根据自己的情况调整
生成图表后,可以查看到近30天内,哪些设备登录了多少次
目的:比如最近一个月内并没有维护,设备登录次数过多的设备就存在异常,通过查询看看哪些人登录了,做了什么,就可以判断这些行为是否正常,是否合规。
用户登录事件图表
新建图标>用户登录事件图表
选择图表类型:表格(由于我这里需要展示明细,所以选择表格的方式)
查询语句:这个语句可以先在查询里验证,确认查找的结果是想要的
时间范围:选择30天,可以根据自己的情况调整
生成图表后,可以查看到具体哪个时间,哪个设备,哪个用户从哪个IP登录
目的:比如在非维护时间段或者非工作时间段,登录设备就存在异常,通过查询看看哪些人在这个时间段登录设备,从而判断这些行为是否正常,是否合规。
设备配置变更图表
新建图标>设备配置变更图表
选择图表类型:表格(由于我这里需要展示明细,所以选择表格的方式)
查询语句:这个语句可以先在查询里验证,确认查找的结果是想要的
时间范围:选择30天,可以根据自己的情况调整
生成图表后,可以查看到具体哪个时间,哪个用户,哪个设备,执行了哪个命令
目的:比如在非维护时间段或者非工作时间段,变更设备配置,通过查询看看哪些人在这个时间段登录设备,进行了哪些配置,从而判断这些行为是否正常,是否合规。
搜索语句
以下列出所有本文中的搜索语句,供参考
小提示:搜索语句命令部分会调用抽取的字符段,如果未抽取字符段,会出现报错。
效果图
图表创建完成后,我们选择“网格布局”对图表布局进行优化调整,最终生成的效果如下