IT运维:使用数据分析平台监控PowerStore存储

概述

存储在企业中一直承担着重要的角色,保证数据的安全性更是重中之重。存储的运行是否正常?我们的数据是否安全?存储管理人员的操作是否规范?这些都是企业需要关注的问题。那么该如何确保这些问题能够有效的解决?我们的选择是鸿鹄数据平台。通过鸿鹄将存储的安全日志,操作日志,告警日志集中的存储,利用其搜索功能,可以快速的定位问题,并且可以通过其丰富的报表功能进行展示。

监控目标

监控安全事件,如用户登录

监控操作事件,如用户的操作行为

监控告警事件,如存储运行状态的告警

实现以上监控的图表展示

安装vector

Vector作为数据采集器,可以接收设备的syslog日志,并转发鸿鹄平台。Vector配置方法参考下文:

扫描二维码关注公众号,回复: 16447690 查看本文章

安装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数据集的数据,比如这里我查看下存储的日志

图片

图片

配置PowerStore syslog

登录到PowerStore存储,Setting>Remote Logging>ADD

Host/IP Address 填写鸿鹄的地址

协议:默认是udp(与上文syslog.toml里一致)

端口号:默认514(与上文syslog.toml里一致)

Audit Type:全选

图片

SEND TEST MASSEGE,发送测试一个日志信息测试下鸿鹄是否收到

图片

在鸿鹄上查询下日志,发现已经收到存储发送的测试日志,至此配置syslog完成

图片

字段抽取

通常情况下,存储发送过来的日志是由多种类型的,比如登录相关日志,配置相关日志,这些日志的格式在鸿鹄中会先进行一次字段抽取,我们可以在看到默认抽取的字段,如果这些字段已经包含了你需要的,那么可以直接使用。如果有些字段并未抽取,那么就需要你自己抽取,鸿鹄支持正则表达式的方式抽取字段。

以下面的日志为例,我们进行正则表达式的编写

图片

我们可以将日志复制到正则表达式测试网站上来编写,这样能随时知道哪里写错了。以下是我使用的测试网站https://regex101.com/

图片

正则表达式如下

\w+\s\d+\s\d{2}:\d{2}:\d{2}\s\w+-\w+\s\[\d+]:\s\d+-\d+-\d+\w+\d+:\d+:\d+.\d+\s\w+-\w+\s\w+\s\w+@(?\w+)\s(?\w+)\s\[\w+@\w+\s\w+="(?\d+)"\s\w+="(?\w+)"\s\w+="(?\w+)"\s\w+="(?\w+)"\s\w+=(?"[^"]*")\s\w+=(?"[^"]*")\s\w+=(?"[^"]*")]\s(?.+)

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

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

where contains( switch._message, 'powerstore') 'powerstore'指的是你要搜索到这个写日志特定的字段,通过powerstore可以限定日志里所有包含powerstore的日志

图片

(完整代码请至文末扫码加入鸿鹄交流群,获取鸿鹄知识库)

在高阶查询中运行,成功

图片

我们运行下搜索语句测试下,可以看到我们抽取出来的字段

图片

图表创建

在进行图表展示前有一个重要的点需要提一下,一般存储在没有触发其日志时,是不会生成日志的。我们需要图表展示,那么就需要尽可能多的日志数据。我们可以在存储上进行一些操作,比如登录、创建测试卷、删除测试卷等,以便丰富日志数据。

仪表板>新建仪表板

图片

创建完成

图片

图表创建方法1

这里我会介绍两种创建图表的方式,一般建议采用第二种方式。鸿鹄支持多种图表的样式,只要搜索语句能够正常生成结果数据,那么就可以选择对应的图表。本文不会介绍所有图表的样式,只针对创建方式进行描述。第一种就是在仪表板内创建图表,方法如下:

新建图表>设备数量
选择图表类型:单值趋势图
查询语句:这个语句可以先在查询里验证,确认查找的结果是想要的
时间范围:选择30天,可以根据自己的情况调整

图片

图片

生成图表

图片

图表创建方法2

图表创建第二种是先搜索,后使用搜索的数据生成图表添加到对应的仪表盘,方法如下:

在查询里输入搜索语句

图片

图片

在查询语句运行完后,点击新建图表

图表类型:可以从各种图表类型中根据需求选择

标题:操作行为统计

选择仪表板:意思是将该图表保存到哪个仪表板

图片

添加后可以在仪表板里看到添加的图表

图片

以上两种方法大家可以根据情况选择,第二种更加直观简单。图表的展示这里我不详细展示,将搜索语句列出,可以给大家参考。

搜索语句

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

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

图片

(完整代码请至文末扫码加入鸿鹄交流群,获取鸿鹄知识库)

效果展示

图片

图片

延伸项

按照上文的图表创建,都是在图表生成时选择好图表的时间,比如30天,或者1天的数据展示,在实际场景中,如果我们查看图表时,想要所有的图表可以根据选择灵活的显示该怎么做,比如我想看1天的,想看7天的,那么这时候我们可以做一个”时间项“,方法如下:

创建时间选择

编辑

图片

添加输入

图片

输入类型:选择时间

标记名称:time_range(这个用于给图表调用)

显示标签:这个时间项显示的名字

默认标记值:这里根据自己的情况选择,我一般选择相对时间,设置成30天

图片

确定后会生成一个时间选择的项

图片

调用时间选择

选择想要调用的图表,选择编辑查询

图片

将查询时间范围改为时间标记值,标记名称time_range(上文创建的时间选择时填写的标记名称)

图片

保存后就可以在”时间选择“里选择想要查看的时间,点击应用,图表就会根据时间变化了

图片

总结

通常来讲,存储设备本身会提供自己的日志审计功能,它本身也能够支持查看,简单的搜索,但是我们再深入下看待这个事情,如果我们有1套存储,存储本身的功能能够支撑,但如果我们有10台,甚至更多的存储呢?利用鸿鹄我们可以通过syslog的方式,将存储的数据统一的存储,并且利用其搜索语句进行快速的搜索,并生成相应的图表展示,这样可以大大节省我们的运维工作。

后续工作

本次针对存储只是基于现有的日志数据进行初步的展示,后续随着日志的丰富,我们还会需要进一步的进行优化,大致方向包含

  • 多套存储设备监控,比如我们有10套存储,我们应该能够灵活的选择查看具体每套存储的情况,图表会根据我们选择的存储进行变化

  • 硬件故障监控,比如硬盘故障、控制器故障、链路故障

  • 监控的告警,在某些error事件时,主动的触发邮件的告警

猜你喜欢

转载自blog.csdn.net/Yhpdata888/article/details/132215989