Management for replication of data stored in a data storage environment including a system and method for failover protection of software agents operating in the environment
First Claim
Patent Images
1. A software agent failure tolerant computer architecture for managing resources for transfer of data stored in a data storage environment including at least two data storage systems, and wherein data is replicated from one of the at least two data storage systems to at least one other data storage system of the at least two data storage systems, the architecture comprising:
- a data transfer server;
one or more primary software agents hosted on said data storage system comprising independent storage devices, said primary software agent in communication with the data transfer server, the primary software agent configured to perform data transfer operations in response to commands from the data transfer server;
one or more failover software agents, each failover software agent residing on a host that is different from each other failover software agent and each primary software agent, in communication over a network with the primary software agents, the data transfer server, and at least one of the two data storage systems, the failover software agents being remote from the primary software agent and wherein each of said failover software agents is configured to execute scripts residing on a host with one of the primary software agents or one of the failover software agents to control host applications, wherein said primary software agent further represents a failover software agent for another of said primary software agents in another one of said data storage systems;
a failover protocol for determining an order in which said primary software agents and said failover software agents, within a communication path of a data transfer, are designated to take over the data transfer operation and the primary software agent or failover software agent designated to take over the data transfer executes scripts residing on a host with a failed primary software agent to control host applications residing on the host with the failed primary software agent to put the replication data in condition for the designated primary software agent or designated failover software agent to push and pull replication data during the replication in response to one or more data transfer commands when a failure of one or more of said primary software agents or said failover software agents is determined, said protocol being determined during a configuration of said computer architecture.
9 Assignments
0 Petitions
Accused Products
Abstract
A system and method for management for data replication in a data storage environment is disclosed. The system includes an architecture, software, and methodology for recovering from failure of software agents, which are operational in the data storage environment, by an ordered allocation of non-failed software agents to compensate for the failed agents.
-
Citations
17 Claims
-
1. A software agent failure tolerant computer architecture for managing resources for transfer of data stored in a data storage environment including at least two data storage systems, and wherein data is replicated from one of the at least two data storage systems to at least one other data storage system of the at least two data storage systems, the architecture comprising:
-
a data transfer server; one or more primary software agents hosted on said data storage system comprising independent storage devices, said primary software agent in communication with the data transfer server, the primary software agent configured to perform data transfer operations in response to commands from the data transfer server; one or more failover software agents, each failover software agent residing on a host that is different from each other failover software agent and each primary software agent, in communication over a network with the primary software agents, the data transfer server, and at least one of the two data storage systems, the failover software agents being remote from the primary software agent and wherein each of said failover software agents is configured to execute scripts residing on a host with one of the primary software agents or one of the failover software agents to control host applications, wherein said primary software agent further represents a failover software agent for another of said primary software agents in another one of said data storage systems; a failover protocol for determining an order in which said primary software agents and said failover software agents, within a communication path of a data transfer, are designated to take over the data transfer operation and the primary software agent or failover software agent designated to take over the data transfer executes scripts residing on a host with a failed primary software agent to control host applications residing on the host with the failed primary software agent to put the replication data in condition for the designated primary software agent or designated failover software agent to push and pull replication data during the replication in response to one or more data transfer commands when a failure of one or more of said primary software agents or said failover software agents is determined, said protocol being determined during a configuration of said computer architecture. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A software agent failure tolerant computer architecture for managing resources for replication of data stored in a data storage environment including at least two data storage systems, and wherein data is replicated from one of the at least two data storage systems to at least one other data storage system of the at least two data storage systems, the architecture comprising:
-
a data replication management server; one or more software agents, designated as primary software agents, hosted on said data storage system, said data storage system comprising independent storage devices, said primary software agents in communication with at least one of the two data storage systems and the data replication management server, the primary software agents configured to perform data replication operations in response to commands from the data replication management server; one or more failover software agents, each failover software agent residing on a host that is different from each other failover software agent and each primary software agent, in communication over a network with at least one of the primary software agents, the data replication management server, and at least one of the two data storage systems, the failover software agents being remote from the primary software agents and wherein each of said failover software agents is configured to execute scripts residing on a host with one of the primary software agents or one of the failover software agents on the host to control host applications, wherein said primary software agent further represents a failover software agent for another of said primary software agents in another one of said data storage systems; a failover protocol for determining an order in which said primary software agents and said failover software agents, within a communication path of a data transfer, are designated to take over the data transfer and the primary software agent or failover software agent designated to take over the data transfer operation executes scripts residing on the host with a failed primary software agent to control host applications residing on the host with the failed primary software agent to put the replication data in condition for the software agent to push and pull replication data during the replication in response to one or more data transfer commands when a failure of one or more of said primary software agents or said failover software agents is determined, said protocol being determined during a configuration of said computer architecture. - View Dependent Claims (7, 8, 9)
-
-
10. A method for managing fault-tolerant resources for replication of data stored in a data storage environment including at least two data storage systems, and wherein data is replicated from one of the at least two data storage systems to at least one other data storage system of the at least two data storage systems, and at least one software agent in communication with at least one data replication management server for managing the fault tolerant resources, the method comprising:
-
configuring one or more software agents as failover agents, each failover software agent residing on a host that is different from each other software agent, that are in remote communication over a network with at least one other software agent designated as a primary software agent, and wherein each of said failover software agents is configured to execute scripts residing on a host with one of the primary software agents or one of the failover software agents to control host applications, the host being in communication with the data replication management server, and at least one of the two data storage systems, wherein said primary software agent further represents a failover software agent for another of said primary software agents in another one of said data storage systems; establishing a failover protocol for determining an order in which said software agents, within a communication path of a data transfer, are designated to take over the data transfer and the primary software agent or the failover software agent designated to take over the data transfer operation executes scripts residing on the host with a failed primary software agent to control host applications residing on the host with the failed primary software agent to put the replication data in condition for the software agent to push and pull replication data during the replication in response to one or more data transfer commands when a failure of one or more of said software agents is determined, said protocol being determined during configuration of said computer architecture. - View Dependent Claims (11, 12, 13)
-
-
14. A software agent failure tolerant computer system for managing resources for replication of data stored in a data storage environment including at least two data storage systems, and wherein data is replicated from one of the at least two data storage systems to at least one other data storage system of the at least two data storage systems, the system comprising:
-
a data replication management server; at least one software agent, designated as a primary software agent, hosted on said data storage system, said primary software agent in communication with at least one of the two data storage systems and the data replication management server, the primary software agent configured to perform data replication operations in response to commands from the data replication management server; one or more failover software agents, each failover software agent residing on a host that is different from each other failover software agent and each primary software agent, in communication over a network with the primary software agent, the data replication management server, and at least one of the two data storage systems, the failover software agents being remote from the primary software agent and wherein each of said failover software agents is configured to execute scripts residing on a host with one of the primary software agents or one of the failover software agents to control host applications, wherein said primary software agent further represents a failover software agent for another of said primary software agents in another one of said data storage systems; and a computer-executable program for carrying out a failover protocol for determining an order in which said primary software agents and said failover software agents, within a communication path of a data transfer, are designated to take over the data transfer and the primary software agent or the failover software agent designated to take over the data transfer operation executes scripts residing on the host with a failed primary software agent to control host applications residing on the host with the failed primary software agent to put the replication data in condition for the software agent to push and pull replication data during the replication in response to one or more data transfer commands when a failure of one or more of said software agents is determined. - View Dependent Claims (15, 16, 17)
-
Specification