NAS文件存储是阿里云提供给用户的云上高性能文件系统存储服务。数据安全和性能是用户对文件存储服务最关注的两大因素,经常有用户反映以下这些情况:
- 我想查看自己的文件存储服务性能指标(吞吐,iops等等)
- 我想了解自己的文件系统内数据操作分布(读、写、新建、删除)
- 我的文件系统内某某文件怎么没了?(文件误删除)
为了更好地服务用户,让用户清晰地了解到自己的文件系统在云上的运行状况,我们新推出了“NAS日志分析”功能,旨在帮助用户更好地管理文件系统资源。通过该功能,用户可以方便地跟踪系统性能问题,记录文件系统上的数据操作情况,审计文件删除等相关操作,有效监控各区域内文件系统资源大盘和明细信息,实时报警等。
NAS日志分析功能是阿里云文件存储(NAS)和日志服务(SLS)联合研发出的一个内建于NAS控制台内的日志分析功能,该日志分析服务能够实时写入10M/s 的日志数据,并实时分析每秒1000万行的日志记录,计算处理延时在秒级别以内。
1. 如何开通
目前NAS日志分析功能已全面对NAS用户开放,进入NAS控制台开箱即用。
具体步骤如下:
步骤一,登录阿里云官网NAS控制台
步骤二,在左侧导航栏找到“日志分析”一栏,点击“日志管理”
步骤三,进行日志授权
“NAS日志分析”功能涉及到使用用户自己的日志存储(由日志服务SLS提供),需要用户授权NAS服务将日志数据写入日志存储的相关权限。
用户需要如下操作:
点击“日志分析”->“日志管理”一栏,在右侧主页中点击“授权入口”,授权阿里云NAS服务可以写入您的日志存储数据。
在跳转的授权页面中,点击“同意授权”。
步骤五,创建相应文件系统的日志转储
相关授权操作完成后,即可创建您相应文件系统的日志转储,将对应文件系统的运行日志导入您自己的日志存储(Log Store)中,以进行后续的日志分析工作。
至此,您已完成了NAS日志分析功能的完整配置。NAS日志数据已经导入到您自己的日志存储中,日志服务会在后台为您的NAS日志数据进行分析,随后您即可看到相关的日志分析信息。
2. 使用指南
在用户完成上述的服务开通和配置后,用户即可浏览相关的日志分析数据。
2.1 日志管理
登录阿里云官网NAS控制台,在左侧导航栏中点击“日志分析”->“日志管理”一栏,展示NAS日志分析功能的日志管理视图
上图右侧列表中列出的2个文件系统表明已经由用户配置了日志分析功能,可以通过左侧的分析视图查询这2个文件系统相关的日志分析数据。
在列表的右侧有“操作”一栏,其中:
“点击前往”链接去往该日志最终存储的日志服务(SLS)控制台,在那里用户可以进行更细化的日志分析行为;
“停止”可以让用户手动关停某个文件系统的日志分析服务,该文件系统将从日志管理列表中移除,并停止日志数据的采集过程。
2.2 日志视图
用户在对已经配置了日志分析服务的文件系统进行一段时间的数据访问和操作后,系统会产生相关的访问日志,并采集相关日志数据,将其转储到日志服务(SLS)的Log Store中,日志服务对采集到的日志数据进行数据分析,随后,用户就可以通过日志视图查询到相关的分析和统计数据。
如上图左侧红框所示,目前提供了三个维度的文件系统日志分析视图:
总览视图:总览该区域内各个文件系统的总体指标、操作分布、客户端分布等
明细视图:详细展示具体的读写数据流、操作趋势、平均读写大小、异常状态等
审计视图:展示文件系统的创建、删除、读取、写入的审计信息等
2.2.1 总览视图
总览视图展示相应区域内文件系统资源访问的整体情况,包括分析的文件系统个数、总的写入流量和读取流量、最近访问的客户端个数、每个文件系统的客户端分布情况、创建、删除、读写数据的整体分布情况等。
2.2.2 明细视图
明细视图详细展示具体文件系统的数据操作细节。
写->读数据流
展示了每个文件系统数据流入流出的情况,图表左侧表示客户端向文件系统写入数据,右侧表示客户端从文件系统读出数据。
最近访问的文件数量
展示了每个文件系统内最近访问的文件数量
操作趋势
展示了每个文件系统(NFS类型)在操作过程中单位时间内NFS协议的交互次数。
写/读操作流量趋势
展示了每个文件系统在读写数据时单位时间内的数据流量统计
平均写/读操作大小
展示了每个文件系统在读写数据时单位时间内平均单次IO的读写数据块大小
读写客户端Top
展示了客户端对相关文件系统操作的分布和热度
操作错误Top客户端
展示了客户端在与文件系统的NFS协议交互中返回错误状态的分布情况,这个“错误”不代表服务端异常,而是正常的协议交互错误,比如:客户端ls某个文件,而该文件不存在。
这个指标可以在一定程度上反向指导上层业务是否发生异常或者存在bug,比如,我们曾经遇到过一个客户案例,其有一个后台批处理应用频繁遍历若干不存在的目录,该指标值会瞬间拉升,最终发现是由于批处理进程存在一个遍历目录的bug,将路径拼错,导致业务暂停,造成了一定的损失。通过该指标,再结合相关报警,可以从数据源头感知业务的变化,从而帮助业务系统快速发现问题,解决问题。
热点操作分布
展示了每个文件系统常见操作的分布情况,这些常见操作包括创建目录(mkdir)、读目录(ls,遍历目录下的文件)、写(write)、读(read)、删除(rm)、重命名(rename)、以及其他。
热门文件
展示了每个文件系统内被访问频次较高的文件的分布情况,目前仅分析到文件所在inode,并没有给出文件在文件系统内的全路径,用户可以使用debugfs等相关工具根据文件inode反查pathname
异常操作分布
展示了每个文件系统内异常操作的分布情况,如鉴权失败、网络错误、读写错误等
操作状态分布
展示了每个文件系统内整体操作的分布情况
2.2.3 审计视图
审计视图展示各文件系统内的敏感操作的审计信息和历史记录
创建操作数
展示了每个文件系统在统计时间内的创建文件数量和分布
删除文件数
展示了每个文件系统在统计时间内的删除文件数量和分布
读取文件数
展示了每个文件系统在统计时间内的读取文件数量和分布
写入文件数
展示了每个文件系统在统计时间内的写入文件数量和分布
文件操作趋势图
在时间轴上展示了区域内所有文件系统的常见操作的分布和趋势,常见操作包括读文件、写文件、删除文件、创建文件等。
最近被删除文件列表
展示了该区域内最近发生删除操作的目录的历史列表,列表中包含了被删除文件所在父目录的inode、所在文件系统、执行删除操作的来源IP、挂载文件系统的NFS版本号、该目录下最近删除文件数目等信息
最近创建的文件
展示了该区域内最近发生创建操作的目录的历史列表,列表中包含了被创建文件所在父目录的inode、所在文件系统、执行创建操作的来源IP、挂载文件系统的NFS版本号、该目录下最近创建文件数目等信息
最近写文件Top
展示了该区域内最近发生写操作的文件Top榜,列表中包含了写操作所在文件系统、写操作文件inode、统计时间内的写数据大小、执行写操作的客户端数量、挂载文件系统的NFS版本号等信息
最近读文件Top
展示了该区域内最近发生读操作的文件Top榜,列表中包含了读操作所在文件系统、读操作文件inode、统计时间内的读数据大小、执行读操作的客户端数量、挂载文件系统的NFS版本号等信息
2.3 日志字段详解
在用户完成日志配置后,文件系统的访问日志将转储到日志服务(SLS)的Log Store中,通过“日志管理”列表中的操作栏“点击前往”可以进入SLS详情页查看具体的NAS日志数据,其具体日志字段释义如下:
字段名 |
字段值 |
字段含义 |
ArgIno |
226 |
文件系统inode号 |
AuthRc |
0 |
授权返回码 |
NFSProtocolRc |
0 |
NFS协议返回码 |
OpList |
null |
NFSv4 Procedures编号 |
Proc | 1 | NFSv3 Procedures编号 |
RWSize |
-1 |
读写大小,单位字节 |
RequestId |
5ACF5CD506EAC7A508F056DF |
请求ID |
ResIno |
null |
lookup的资源inode号 |
SourceIp | 172.18.159.169 |
客户端IP |
User | *********** | 用户ID |
Vers |
3 |
NFS协议版本号 |
Vip |
172.18.158.178 |
服务端IP |
Volume |
******** | 文件系统ID |
microtime |
1523539157201995 |
请求发生时间,单位微秒 |
3. 注意事项
- 关于日志分析是否跨区域
不跨区域。
NAS日志分析功能目前以区域(Region)划分,如华北1、华北2、华东1、华东2,不同区域产生各自的日志分析视图,同一个区域内的多个文件系统的日志数据做聚合分析,目前暂不支持对跨区域的文件系统做聚合分析。
- 关于文件系统类型的支持
目前NAS日志分析功能仅支持NFS协议类型,后续会支持SMB等其他类型。
- 关于日志分析结果的延迟
正常情况下,NAS日志从被采集到转储,到最终分析出结果,最大延迟在10s以内。
- 关于收费
NAS日志分析功能,目前处于申请公测阶段,在此期间,该功能不会产生任何费用。在公测阶段结束后,NAS可以免费将日志数据开放给用户,但日志存储和日志分析需要使用日志服务(SLS)的相关功能,其计费标准可以参考现行日志服务(SLS)的计费说明。