路径跟踪的方法、设备和系统的制作方法

文档序号:7867159阅读:293来源:国知局
专利名称:路径跟踪的方法、设备和系统的制作方法
技术领域
本发明涉及计算机应用技术领域,特别涉及一种路径跟踪的方法、设备和系统。
背景技术
随着计算机技术以及网络技术的高速发展,对存储性能的要求也越来越高。在存储性能提升的过程中,缓存、固态硬盘、集群等技术不断的被引入。但是无论采用何种技术,软件性能调优都是存储性能优化中不可缺失的一环。软件性能调优是指通过监控获取到反映系统性能的运行数据,例如高峰并发数、系统的响应速度情况、网络流量、每类请求在总的请求中所占的百分比等,并对这些数据进行分析,进而实现性能问题定位。在存储系统中,I/O (In/Out,输入/输出)路径及其相关信息可以揭示存储设备各个方面的性能,是软件调优的重要性能监控指标。通过对I/o路径及其相关信息的分析 可以找到存储设备中I/o潜在或已经出现的问题,进而发现性能瓶颈和问题所在。所以怎样实现对存储设备中I/o路径的跟踪是需要解决的问题。

发明内容
为了实现对存储系统中I/O的路径跟踪,本发明实施例提供了一种路径跟踪的方法、设备和系统。所述技术方案如下第一方面,提供了一种路径跟踪的方法,所述方法包括存储性能监控SPM下发监控控制命令到集群网络连接存储SNAS中的指定节点,其中,所述监控控制命令中携带I/O路径的跟踪规则,所述I/O路径的跟踪规则包括每秒跟踪的I/O数和跟踪的I/O操作类型,使所述指定节点及所述SNAS中的其它各节点能够根据所述I/O路径的跟踪规则对本节点的I/O进行跟踪;所述SPM接收所述SNAS中的指定节点上报的本节点及所述其它节点上报的I/O路径的跟踪消息;所述SPM根据接收到的所述I/O路径的跟踪消息,输出可视化的所述I/O路径的分解过程,以及所述I/O路径的性能关键信息。在第一方面的第一种可能的实施方式中,所述存储性能监控SPM下发监控控制命令到集群网络连接存储NAS中的指定节点之后,还包括所述指定节点中的集群管理系统CM接收所述监控控制命令,并对所述监控控制命令进行解析,得到I/O路径的跟踪规则,使所述指定节点中的协议层子系统根据所述I/O路径的跟踪规则进行I/O路径跟踪;所述指定节点中的CM接收所述I/O路径经过的各节点中的各级子系统上报的I/O路径的跟踪消息,并将所述I/O路径的跟踪消息上报给所述SPM。在第一方面的第一种可能的实施方式中的第一种可能的实施方式中,所述指定节点中的协议层子系统接收所述指定节点中的CM发送的所述I/O路径的跟踪规则;所述指定节点中的协议层子系统根据所述I/O路径的跟踪规则,将所述需要跟踪的I/O打上预设标识,其中,所述预设标识会随所述I/o路径传递到所述I/O路径经过的各节点中的各级子系统,使所述各级子系统根据所述预设标识将所述I/o路径的跟踪消息上报到所述指定节点的CM。
第二方面,提供了一种存储性能监控系统,所述系统包括控制模块,用于下发监控控制命令到集群网络连接存储SNAS中的指定节点,其中,所述监控控制命令中携带I/O路径的跟踪规则,使所述指定节点及所述SNAS中的其它各节点能够根据所述I/O路径的跟踪规则对本节点的I/O进行跟踪;接收模块,用于接收所述SNAS中的指定节点上报的本节点及所述其它节点上报的I/O路径的跟踪消息;输出模块,用于根据接收到的所述I/O路径的跟踪消息,输出可视化的所述I/O路径的分解过程以及所述I/O路径的性能信息。第三方面,提供了一种节点设备,所述设备包括集群管理系统CM和协议层子系统;所述CM,用于接收存储性能监控SPM下发的监控控制命令,并对所述监控控制命令进行解析,得到节点设备的I/O路径的跟踪规则,使所述协议层子系统根据所述I/O路径的跟踪规则对本节点的I/O进行跟踪,其中,所述监控控制命令中携带I/O路径的跟踪规则;所述CM,还用于接收所述指定节点中的各级子系统上报的所述各级子系统的I/O路径的跟踪消息,并将所述I/O路径的跟踪消息上报给所述SPM。在第三方面的第一种可能的实施方式中,所述协议层子系统,用于接收所述CM发 送的所述节点设备的I/o路径的跟踪规则,根据所述I/O路径的跟踪规则,将所述需要跟踪的I/o打上预设标识,其中,所述预设标识会随I/O路径传递到所述I/O路径经过的各节点中的各级子系统,使所述各级子系统根据所述预设标识将所述I/o路径的跟踪消息上报到所述CM。第四方面,提供了一种路径跟踪的系统,所述系统包括上述所述的存储性能监控系统和上述所述的节点设备。本发明实施例提供的技术方案带来的有益效果是本发明实施例通过SPM下发监控控制命令到集群网络连接存储SNAS中的指定节点,其中,所述监控控制命令中携带I/o路径的跟踪规则,使所述指定节点及所述SNAS中的其它各节点能够根据所述I/O路径的跟踪规则对本节点的I/O进行跟踪;所述SPM接收所述SNAS中的指定节点上报的本节点及所述其它节点上报的I/O路径的跟踪消息;所述SPM根据接收到的所述I/O路径的跟踪消息,输出可视化的所述I/O路径的分解过程,以及所述I/O路径的性能关键信息。从而实现了对存储系统中I/O路径的跟踪。


为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本发明实施例中提供的一种路径跟踪的方法流程图;图2a是本发明实施例中提供的一种路径跟踪的方法流程图;图2b是本发明实施例中提供的一种非分组子系统上报消息流程图;图2c是本发明实施例中提供的一种分组并行子系统上报消息流程图;图2d是本发明实施例中提供的一种SPM展示的多路I/O的总时延柱形图;图2e是本发明实施例中提供的一种SPM展示的单路I/O的时延树状图;图3是本发明实施例中提供的一种存储性能监控系统结构示意图4是本发明实施例中提供的一种节点设备结构示意图;图5是本发明实施例中提供的一种存储性能监控系统结构示意图;图6是本发明实施例中提供的一种节点设备结构示意图;图7是本发明实施例中提供的一种路径跟踪系统示意图。
具体实施例方式为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
参见图1,本发明实施例中提供的一种路径跟踪的方法流程图,所述方法包括101 :存储性能监控SPM下发监控控制命令到集群网络连接存储SNAS中的指定节点,其中,所述监控控制命令中携带I/o路径的跟踪规则,使所述指定节点及所述SNAS中的其它各节点能够根据所述I/O路径的跟踪规则对本节点的I/O进行跟踪;其中,所述I/O路径的跟踪规则包括但不限于每秒跟踪的I/O数和跟踪的I/O操作类型等。102 :所述SPM接收所述SNAS中的指定节点上报的本节点及所述其它节点上报的I/o路径的跟踪消息;103 :所述SPM根据接收到的所述I/O路径的跟踪消息,输出可视化的所述I/O路径的分解过程以及所述I/o路径的性能信息。本发明实施例提供的技术方案带来的有益效果是SPM下发监控控制命令到SNAS(Scale-out Network Attached Storage,集群网络连接存储)中的指定节点,其中,所述监控控制命令中携带I/O路径的跟踪规则,使所述指定节点及所述SNAS中的其它各节点能够根据所述I/O路径的跟踪规则对本节点的I/O进行跟踪;所述SPM接收所述SNAS中的指定节点上报的本节点及所述其它节点上报的I/O路径的跟踪消息;所述SPM根据接收到的所述I/O路径的跟踪消息,输出可视化的所述I/O路径的分解过程,以及所述I/O路径的性能关键信息。从而实现了对存储系统中I/O路径的跟踪。参见图2a,本发明实施例中提供的一种路径跟踪的方法,该方法包括201 =SPM下发监控控制命令到SNAS中的指定节点。本实施例中,SPM通过指定节点监控SNAS的I/O处理,其中,指定节点可以为SNAS中的任一节点,SPM既可以部署在SNAS内的任意节点内,也可以部署在SNAS外部独立的PC或节点上,对此本实施例不做具体限定。其中,监控控制命令中携带I/O路径的跟踪规则,该规则包括但不限于每秒跟踪的I/O数和跟踪的I/O操作类型等。具体的,SPM与指定节点中的CM (Cluster Management,集群管理系统)进行通信,并通过CM下发监控控制命令。202 :所述指定节点中的CM接收监控控制命令,并对所述监控控制命令进行解析,得到I/o路径的跟踪规则。本实施例中,SNAS中的节点内部涉及的各级处理子系统包括CM,协议层子系统,CA (Client Agent,客户代理),MDS (Meta-Data Service,兀数据服务),DS (Data Service,数据服务),NOFS (Not Only File System,一种本地文件系统)。其中,CM负责与SPM通信,并接收SPM下发的监控控制命令。本实施例中,指定节点中的CM在接收到SPM下发的监控控制命令后,对所述监控控制命令进行解析,得到I/o路径的跟踪规则,使所述指定节点中的协议层子系统根据所述I/O路径的跟踪规则进行I/O路径跟踪。同时,CM获取监控控制命令中的所述需要跟踪的所述SNAS中的其它各节点的节点标识,所述指定节点中的CM根据所述需要跟踪的所述SNAS中的其它各节点的节点标识,将所述监控控制命令发送到对应节点中的协议层,使所述需要跟踪的所述SNAS中除所述指定节点外的其它各个节点根据所述监控控制命令对本节点的I/O进行跟踪。203 :所述指定节点中的协议层子系统接收所述指定节点中的CM发送的所述I/O路径的跟踪规则。协议层子系统是SNAS系统中I/O路径的入口,所以需要将I/O路径的跟踪规则发送给协议层子系统,使协议层子系统按照指定的I/o路径的跟踪规则,发起I/O路径跟踪。 在本实施例中仅以指定节点中的协议层子系统对I/O路径进行跟踪的过程进行说明,其他需要进行跟踪的节点中的协议层子系统对I/o路径进行跟踪的过程相似,本实施例中不再赘述。204 :所述指定节点中的协议层子系统根据所述I/O路径的跟踪规则,将所述需要跟踪的I/O打上预设标识。本实施例中,根据SPM下发的监控控制命令,可以对所有的I/O实行路径跟踪,也可以对其中的一部分I/o实行路径跟踪。在协议层子系统,根据I/O路径的跟踪规则,对需要实施路径跟踪的I/o打上预设标识。其中,协议层子系统对于要跟踪的I/O打上的预设标识的结构如下
typedef struct tagSESSIONINFO
{
U 64 ui Session ID;
U'32 ui NodeNo;
U8 uiSubSystemID;
} SESSION—INFO。其中,U64 UiSessionID是每路1/0的唯一标识,U32 uiNodeNo是节点编号,用于唯一标识当前节点,U8 uiSubSystemID是子系统标识,用于唯一标识当前子系统。本实施例中,预设标识由协议层子系统生成,传递给下层的各级子系统调用,即预设标识会随所述I/o路径传递到所述1/0路径经过的各节点中的各级子系统,使所述各级子系统根据所述预设标识将所述I/o路径的跟踪消息上报到所述指定节点的CM。205 :1/0路径经过的各节点中的各级子系统根据所述预设标识将所述1/0路径的跟踪消息上报到所述指定节点的CM。本实施例中,各级子系统在1/0跟踪过程中,通过调用第一函数SPM_UpdateSessionInfo和第二函数SPM_SendIOTSysMsg发送I/O路径的跟踪消息。其中,第一函数用于刷新预设标识SESSI0N_INF0的结构信息,在每个子系统入口处调用。对于不同的I/O操作类型,子系统可能会有多个入口,这种情况下需要在每个入口调用此函数。第二函数用于子系统上报I/O路径的跟踪消息,该I/O路径的跟踪消息包括6种消息类型子系统入口消息1、子系统出口消息2、调用开始消息3、调用结束消息4、分组开始消息5、分组结束消息6。本实施例中,所述各子系统上报的I/O路径跟踪的消息中的数据包括但不限于I/o的路径编号SID、上报的消息类型、节点标识、子系统标识、关联节点标识、关联子系统标识、相对时间、绝对时间或线程ID中的至少一种。如表I所示的路径跟踪的消息中的数据表I[00SS权利要求
1.一种路径跟踪的方法,其特征在于,所述方法包括 存储性能监控SPM下发监控控制命令到集群网络连接存储SNAS中的指定节点,其中,所述监控控制命令中携带I/O路径的跟踪规则,使所述指定节点及所述SNAS中的其它各节点能够根据所述I/O路径的跟踪规则对本节点中的I/O进行跟踪; 所述SPM接收所述SNAS中的指定节点上报的本节点及所述其它节点上报的所述I/O路径的跟踪消息; 所述SPM根据接收到的所述I/O路径的跟踪消息,输出可视化的所述I/O路径的分解过程以及所述I/O路径的性能信息。
2.根据权利要求1所述的方法,其特征在于,所述SPM下发监控控制命令到SNAS中的指定节点之后,还包括 所述指定节点中的集群管理系统CM接收所述监控控制命令,并对所述监控控制命令进行解析,得到I/O路径的跟踪规则,使所述指定节点中的协议层子系统根据所述I/O路径的跟踪规则进行I/O路径跟踪; 所述指定节点中的CM接收所述I/O路径经过的各节点中的各级子系统上报的I/O路径的跟踪消息,并将所述I/O路径的跟踪消息上报给所述SPM。
3.根据权利要求2所述的方法,其特征在于,所述指定节点中的集群管理系统CM解析监控控制命令,并对所述监控控制命令进行解析,得到I/O路径的跟踪规则之后,还包括 所述指定节点中的协议层子系统接收所述指定节点中的CM发送的所述I/O路径的跟踪规则; 所述指定节点中的协议层子系统根据所述I/O路径的跟踪规则,将所述需要跟踪的I/O打上预设标识,其中,所述预设标识会随所述I/O路径传递到所述I/O路径经过的各节点中的各级子系统,使所述各级子系统根据所述预设标识将所述I/O路径的跟踪消息上报到所述指定节点的CM。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述指定节点中的集群管理系统CM解析监控控制命令,并对所述监控控制命令进行解析,得到I/O路径的跟踪规则之后,还包括 所述指定节点中的CM获取所述监控控制命令中的所述需要跟踪的所述SNAS中的其它各节点的节点标识; 所述指定节点中的CM根据所述需要跟踪的所述SNAS中的其它各节点的节点标识,将所述监控控制命令发送到对应节点中的协议层,使所述需要跟踪的所述SNAS中除所述指定节点外的其它各个节点根据所述监控控制命令对本节点中的I/O进行跟踪。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述I/O路径的跟踪消息包括I/O的路径编号SID、上报的消息类型、所述指定节点的节点标识、所述指定节点的子系统标识、所述指定节点的关联节点标识、所述指定节点的关联子系统标识和相对时间中的至少一种。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述SPM根据接收到的所述I/O路径的跟踪消息,输出可视化的I/O的分解过程以及所述I/O路径的性能信息,包括 所述SPM根据所述I/O路径的跟踪消息的逻辑关系,将所述I/O路径的跟踪消息进行预处理,将所述I/O路径的跟踪消息以图表或柱形图的形式输出。
7.一种存储性能监控系统,其特征在于,所述系统包括 控制模块,用于下发监控控制命令到集群网络连接存储SNAS中的指定节点,其中,所述监控控制命令中携带I/O路径的跟踪规则,使所述指定节点及所述SNAS中的其它各节点能够根据所述I/O路径的跟踪规则对本节点的I/O进行跟踪; 接收模块,用于接收所述SNAS中的指定节点上报的本节点及所述其它节点上报的I/O路径的跟踪消息; 输出模块,用于根据接收到的所述I/O路径的跟踪消息,输出可视化的所述I/O路径的分解过程以及所述I/O路径的性能信息。
8.根据权利要求7所述的系统,其特征在于,所述I/O路径的跟踪消息包括1/0的路径编号SID、上报的消息类型、所述指定节点的节点标识、所述指定节点的子系统标识、所述指定节点的关联节点标识、所述指定节点的关联子系统标识和相对时间中的至少一种。
9.根据权利要求7或8所述的系统,其特征在于,所述输出模块具体用于 根据所述I/O路径的跟踪消息的逻辑关系,将所述I/O路径的跟踪消息进行预处理,将所述I/o路径的跟踪消息以图表或柱形图的形式输出。
10.一种节点设备,其特征在于,所述设备包括集群管理系统CM和协议层子系统; 所述CM,用于接收存储性能监控SPM下发的监控控制命令,并对所述监控控制命令进行解析,得到节点设备的I/O路径的跟踪规则,使所述协议层子系统根据所述I/O路径的跟踪规则对本节点的I/O进行跟踪,其中,所述监控控制命令中携带I/O路径的跟踪规则; 所述CM,还用于接收所述指定节点中的各级子系统上报的所述各级子系统的I/O路径的跟踪消息,并将所述I/O路径的跟踪消息上报给所述SPM。
11.根据权利要求10所述的设备,其特征在于, 所述协议层子系统,用于接收所述CM发送的所述节点设备的I/O路径的跟踪规则,根据所述I/O路径的跟踪规则,将所述需要跟踪的I/O打上预设标识,其中,所述预设标识会随I/O路径传递到所述I/O路径经过的各节点中的各级子系统,使所述各级子系统根据所述预设标识将所述I/O路径的跟踪消息上报到所述CM。
12.根据权利要求10-11任一项所述的设备,其特征在于, 所述CM,还用于获取监控控制命令中的所述需要跟踪的所述SNAS中的其它各节点的节点标识;根据所述需要跟踪的所述SNAS中的其它各节点的节点标识,将所述监控控制命令发送到对应节点中的协议层,使所述需要跟踪的所述SNAS中除所述指定节点外的其它各个节点根据所述监控控制命令对本节点的I/O进行跟踪。
13.一种路径跟踪的系统,其特征在于,所述系统包括如权利要求7-9任一项所述的存储性能监控系统和如权利要求10-12任一项所述的节点设备。
全文摘要
本发明公开了一种路径跟踪的方法、设备和系统,属于计算机应用技术领域。所述方法包括SPM下发监控控制命令到集群网络连接存储SNAS中的指定节点,其中,所述监控控制命令中携带I/O路径的跟踪规则,使所述指定节点及所述SNAS中的其它各节点能够根据所述I/O路径的跟踪规则对本节点中的I/O进行跟踪;所述SPM接收所述SNAS中的指定节点上报的本节点及所述其它节点上报的路径跟踪的数据;所述SPM根据接收到的所述路径跟踪的数据,输出可视化的所述I/O路径的分解过程,以及所述I/O路径的性能关键信息。从而实现了对存储系统中I/O路径的跟踪和I/O路径及其性能关键信息的可视化。
文档编号H04L29/08GK103024000SQ20121050497
公开日2013年4月3日 申请日期2012年11月30日 优先权日2012年11月30日
发明者胡志远, 佘彦杰 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1