Service-level monitoring for storage applications
First Claim
1. A storage area network (SAN), comprising:
- one or more host systems running a plurality of applications;
a plurality of storage devices;
a SAN fabric comprising a plurality of fabric components for coupling the one or more host systems to the storage devices;
a system configured to implement a task group monitor for a plurality of tasks, wherein each task is scheduled by a corresponding one of the plurality of applications to execute on the SAN, and wherein the task group monitor is configured to;
form a separate task group for each one of the plurality of tasks, such that each separate task group comprises a plurality of components selected from at least two of a host system, a storage device, and a SAN fabric component, wherein each component in the separate task group is designated to participate in performing the task for which the separate task group was formed;
store information for each separate task group to identify the respective components and the respective task for each separate task group;
monitor all of the components in all the separate task groups, wherein for each separate group, the components of the separate task group are monitored for a period of time in advance of the scheduled execution of the respective task in order to detect conditions affecting the scheduled execution of the respective task in advance of the scheduled execution of the respective task; and
in response to detecting a condition pertaining to one of the monitored component;
based on the stored information for the separate task groups, identify one or more of the tasks whose scheduled executions are affected by the detected condition in advance of the scheduled executions of the one or more tasks affected by the detected condition; and
generate one or more alerts identifying the one or more tasks whose scheduled executions are affected by the detected condition in advance of the scheduled executions of the one or more tasks.
10 Assignments
0 Petitions
Accused Products
Abstract
Embodiments of a system and method for providing service-level monitoring for applications in SANs. Embodiments may identify what applications are running on which hosts in a SAN, automatically identify which paths the applications use through the storage infrastructure to reach their storage, and may monitor SAN components of the paths. One embodiment may provide a task group monitor that monitors groups of SAN components and reports problems detected on group members at the application level. Embodiments may proactively monitor SAN infrastructure including the hardware and/or software components of storage, hosts, fabric, etc. needed for scheduled application tasks such as backup tasks and may alert the operator when problems are detected. Thus, embodiments correlate detected infrastructure problems directly to the applications that are affected, allowing these problems to be addressed at the application level, and prior to scheduled execution of tasks. One embodiment may be implemented in a SAN management system.
-
Citations
23 Claims
-
1. A storage area network (SAN), comprising:
-
one or more host systems running a plurality of applications; a plurality of storage devices; a SAN fabric comprising a plurality of fabric components for coupling the one or more host systems to the storage devices; a system configured to implement a task group monitor for a plurality of tasks, wherein each task is scheduled by a corresponding one of the plurality of applications to execute on the SAN, and wherein the task group monitor is configured to; form a separate task group for each one of the plurality of tasks, such that each separate task group comprises a plurality of components selected from at least two of a host system, a storage device, and a SAN fabric component, wherein each component in the separate task group is designated to participate in performing the task for which the separate task group was formed; store information for each separate task group to identify the respective components and the respective task for each separate task group; monitor all of the components in all the separate task groups, wherein for each separate group, the components of the separate task group are monitored for a period of time in advance of the scheduled execution of the respective task in order to detect conditions affecting the scheduled execution of the respective task in advance of the scheduled execution of the respective task; and in response to detecting a condition pertaining to one of the monitored component; based on the stored information for the separate task groups, identify one or more of the tasks whose scheduled executions are affected by the detected condition in advance of the scheduled executions of the one or more tasks affected by the detected condition; and generate one or more alerts identifying the one or more tasks whose scheduled executions are affected by the detected condition in advance of the scheduled executions of the one or more tasks. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A system, comprising:
-
a processor; and a memory comprising program instructions, wherein the program instructions are executable by the processor to; form a separate task group for each one of a plurality of tasks, such that each separate task group comprises a plurality of components selected from at least two of a host system, a storage device, and a storage area network (SAN) fabric component coupling one or more host systems to one or more storage devices, wherein; each component in the separate task group is designated participate in performing the task for which the separate task group was formed, and wherein each one of the plurality of tasks is scheduled to execute on the SAN by one of several applications running on one or more host systems of the SAN; store information for each separate task group to identify the respective components and the respective task for each separate task group; monitor all of the components in all the separate task groups, wherein for each separate task group, the components of the separate task group are monitored for a period of time in advance of a scheduled execution time of the respective task in order to detect conditions affecting the scheduled execution of the respective task in advance of the scheduled execution time of the respective task; and in response to detecting a condition pertaining to one of the monitored components; based on the stored information for the separate task groups, identify one or more of the tasks whose scheduled executions are affected by the detected condition in advance of the scheduled execution times of the one or more tasks affected by the detected condition; and generate one or more alerts identifying the one or more tasks whose scheduled executions are affected by the detected condition in advance of the scheduled execution times of the one or more tasks. - View Dependent Claims (7, 8, 9)
-
-
10. A system, comprising:
-
a processor; and a memory comprising program instructions, wherein the program instructions are executable by the processor to; monitor a plurality of Storage Area Network (SAN) components selected from at least two of a host system, a storage device, and a storage area network (SAN) fabric component coupling one or more host systems to one or more storage devices, wherein; there is a specific task scheduled to execute on the SAN by one of several applications running on one or more host systems of the SAN such that each one of the plurality of SAN components is designated to participate in performing the specific task; said monitoring is performed for all the designated components for the specific task for a period of time in advance of a scheduled execution time of the specific task in order to detect conditions affecting the scheduled execution of the specific task in advance of the scheduled execution time of the specific task; and store information for the specific task to identify the specific task and the components designated to participate in performing the specific task; wherein said monitoring and said storing are performed for a plurality of separate specific tasks; in response to detecting a condition pertaining to one of the monitored component; based on the stored information for each specific task, identify each specific task whose scheduled execution is affected by the detected condition in advance of the scheduled execution time of the task affected by the detected condition; and generate one or more alerts identifying the specific tasks whose scheduled executions are affected by the detected condition in advance of the scheduled execution time of the affected specific task.
-
-
11. A system, comprising:
-
means for grouping one or more Storage Area Network (SAN) components selected from at least two of a host system, a storage device, and a storage area network (SAN) fabric component coupling one or more host systems to one or more storage devices, wherein; there is a specific task scheduled to execute on the SAN by one of several applications running on one or more host systems of the SAN such that each one of the grouped SAN components is designated to participate in performing the specific task; means for monitoring all the grouped SAN components for the specific task for a period of time in advance of a scheduled execution time of the specific task in order to detect conditions affecting scheduled execution of the specific task in advance of the scheduled execution time of the specific task; and means for storing information for the group to identify the specific task and the components designated to participate in performing the specific task; wherein said grouping and said storing are performed for a plurality of separate specific tasks; means for identifying, based on the stored information for the separate task groups and in response to detecting a condition pertaining to one of the monitored components, one or more of the specific tasks whose scheduled executions are affected by the detected condition in advance of the scheduled execution times of the one or more tasks affected by the detected condition; means for generating one or more alerts identifying the specific tasks whose scheduled executions are affected by the detected condition in advance of the scheduled execution time of the affected specific task in response to detecting the condition affecting scheduled execution of the specific tasks. - View Dependent Claims (12)
-
-
13. A network system, comprising:
-
a network comprising a plurality of network components; a computer system coupled to the network and configured to; form a group comprising one or more of the network components designated to in participate in performing a data transfer task scheduled to execute on the network, wherein the one or more network components form a network path for the scheduled data transfer task, and wherein the group comprises at least two of a host system, a storage device, and a SAN fabric component; store information for the group to identify the designated network components and the data transfer task; monitor all the one or more network components in the group for the scheduled data transfer task for a period of time in advance of a scheduled execution time of the data transfer task in order to detect conditions affecting the scheduled execution of the data transfer task in advance of the scheduled execution time of the data transfer task; and wherein said monitoring and said storing are performed for a plurality of separate specific data transfer tasks; in response to detecting a condition pertaining to one of the monitored network components; based on the stored information for each group, identify each specific data transfer task whose scheduled execution is affected by the detected condition in advance of the scheduled execution time of the data transfer task affected by the detected condition; and generate one or more alerts for the data transfer tasks identifying the specific data transfer tasks whose scheduled executions are affected by the detected condition in advance of the scheduled execution time of the affected data transfer tasks. - View Dependent Claims (14, 15)
-
-
16. A method, comprising:
-
a Storage Area Network (SAN) application on a host system of a SAN scheduling a task for execution on the SAN; generating a task group comprising one or more SAN components of the SAN designated to participate in performing the scheduled task, wherein the task group comprises at least two of a host system, a storage device, and a SAN fabric component; storing information for the task group to identify the designated components and the scheduled task; monitoring all the SAN components in the task group in advance of a scheduled execution time of the task in order to detect conditions affecting the scheduled execution of the task in advance of the scheduled execution time of the task; and in response to detecting a condition pertaining to one of the monitored components; based on the stored information for the task group, identify the task whose scheduled execution is affected by the detected condition in advance of the scheduled execution time of the task affected by the detected condition; and generating an alert identifying the task whose scheduled execution is affected by the detected condition in advance of the scheduled execution time of the task. - View Dependent Claims (17, 18, 19)
-
-
20. A computer-accessible storage medium comprising program instructions, wherein the program instructions are computer-executable to implement:
-
generating a task group comprising Storage Area Network (SAN) components of a SAN designated to participate in performing a task, wherein; an application on a host system scheduled the task for execution on the SAN, and the task group contains at least two of a host system, a storage device, and a storage area network (SAN) fabric component coupling one or more host systems to one or more storage devices; storing information for the task group to identify the designated components and the task; monitoring all the SAN components in the task group in advance of a scheduled execution time of the task in order to detect conditions affecting the scheduled execution of the task in advance of the scheduled execution time of the task; and in response to detecting a condition pertaining to one of the monitored components; based on the stored information for the task group, identify the task whose scheduled execution is affected by the detected condition in advance of the scheduled execution time of the task affected by the detected condition; and generating an alert identifying the task whose scheduled execution is affected by the detected condition in advance of the scheduled execution time of the task. - View Dependent Claims (21, 22, 23)
-
Specification