[go: nahoru, domu]

US20040181707A1 - Method and apparatus for seamless management for disaster recovery - Google Patents

Method and apparatus for seamless management for disaster recovery Download PDF

Info

Publication number
US20040181707A1
US20040181707A1 US10/387,188 US38718803A US2004181707A1 US 20040181707 A1 US20040181707 A1 US 20040181707A1 US 38718803 A US38718803 A US 38718803A US 2004181707 A1 US2004181707 A1 US 2004181707A1
Authority
US
United States
Prior art keywords
primary
computer resource
storage
processor
resource
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US10/387,188
Inventor
Akira Fujibayashi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to US10/387,188 priority Critical patent/US20040181707A1/en
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Assigned to HITACHI, LTD reassignment HITACHI, LTD ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: FUJIBAYASHI, AKIRA
Priority to JP2003428626A priority patent/JP4432488B2/en
Publication of US20040181707A1 publication Critical patent/US20040181707A1/en
Priority to US11/228,859 priority patent/US7191358B2/en
Priority to US11/471,118 priority patent/US7290167B2/en
Priority to US11/904,061 priority patent/US7661019B2/en
Priority to US12/652,408 priority patent/US7865768B2/en
Priority to US12/955,053 priority patent/US8103901B2/en
Priority to US13/346,924 priority patent/US8412977B2/en
Priority to US13/783,487 priority patent/US9104741B2/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/275Synchronous replication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2069Management of state, configuration or failover
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/008Reliability or availability analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/22Arrangements for detecting or preventing errors in the information received using redundant apparatus to increase reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability

Definitions

  • This invention is generally related to the field of clustering systems and remote mirroring technology.
  • clustering systems to accomplish fault-tolerance and/or load-balancing is becoming increasingly popular.
  • a clustering system may provide redundant resources so that if one portion of the system experiences failure, another portion can take over affected tasks or otherwise provide recovery from the failure.
  • a clustering system may use its redundant resources to process tasks in a more distributed manner, allowing different portions of the system to work in parallel in accomplishing tasks.
  • a typical clustering system may be made up of two or more nodes, each having its own processing and storage capabilities.
  • a primary node may comprise of a server and associated storage devices, while a secondary node may also comprise of another server and associated storage devices.
  • the secondary node may be created to be similar to the primary node, in terms of processing, storage, and other capabilities.
  • the clustering system may maintain exact correspondence between the data storage of the primary node and the data storage of the secondary node, such that any write or read to data storage at the primary node is replicated at the secondary node. If the primary node fails as it performs its various tasks, the secondary node may take over the tasks performed by the primary node.
  • a secondary node may take over and serve web server functions in place of the failed primary node.
  • a web site supported by such a system thus continues to operate with little or no down time. Web site visitors may continue to visit the associated web site as if no failure had occurred.
  • providing a primary and a secondary node of similar capabilities allows the secondary node to be capable of taking over the tasks previously performed by the primary node.
  • the secondary node may have lesser capabilities than the primary node. For example, if the secondary node is only designed to temporarily take over the tasks of the primary node, or if the secondary node is only designed to record periodic snap shots of the data storage of the primary node, it may be sufficient to create the secondary node with lesser capabilities. This may be especially true if the cost associated with creating a similarly capable secondary node is to be avoided, or if failure of the primary node is not expected to extend beyond a certain amount of time. Thus, depending on the situation, the required capabilities of the secondary node may vary.
  • the correspondence between the data storage of a primary node and the data storage of a secondary node storage may also be referred to as remote mirroring. This is especially the case if the data storage of the primary node is at a geographically distant location from the data storage of the secondary node.
  • Remote mirroring may be carried out by different portions of a system.
  • a host such as a server
  • a storage system such as a storage area network (SAN)
  • SAN storage area network
  • remote mirroring may require separate software and equipment installation and/or configuration, in addition to that required by other parts of the clustering system.
  • the multiple nodes of a clustering system must be established by a system administrator.
  • the system administrator must decide exactly what should be the processing, storage, and other capabilities of the secondary node, install or identify available resources meeting those capabilities, install required software, and perform necessary configurations to set up the clustering system.
  • These steps involve factors that can be overwhelmingly complex and difficult to analyze for the system administrator, even if that person is an expert.
  • the administrator may only be able to make a rough guess, in an ad hoc manner, as to what storage capability is needed for the secondary node.
  • the required storage capability of the secondary node may vary from situation to situation, and it may not always be ideal to simply mimic the storage capability of the primary node.
  • the present invention provides a method, apparatus, article of manufacture, and system for establishing redundant computer resources.
  • the method comprises storing device information relating to the processor devices and the storage devices and topology information relating to topology of the network, identifying at least one primary computer resource, the at least one primary computer resource including at least one primary processor device and at least one portion of storage implemented in at least one primary storage device, selecting at least one secondary computer resource suitable to serve as a redundant resource corresponding to the at least one primary computer resource based on the device information and the topology information, the at least one secondary computer resource including at least one secondary processor device and at least one portion of storage implemented in at least one secondary storage device, and assigning the at least one secondary computer resource as a redundant resource corresponding to the at least one primary computer resource.
  • the at least one secondary computer resource may be selected such that the at least one secondary storage device also has storage-based remote mirroring function and is accessible from the at least one primary storage device.
  • the at least one secondary computer resource is selected based on at least one user-specified policy, which may include performance of the at least one secondary computer resource, reliability of the at least one secondary computer resource, and/or cost of the at least one secondary computer resource.
  • the step for selecting the at least one secondary computer resource comprises the steps of selecting at least one candidate suitable to serve as a redundant resource corresponding to the at least one primary computer resource, presenting the at least one candidate to a user, and receiving input from the user indicating selection, from the at least one candidate, of the at least one secondary computer resource.
  • FIG. 1 is a block diagram of a clustering system in accordance with at least one embodiment of the present invention.
  • FIG. 2 is an illustration of a mapping table.
  • FIG. 3 is an illustration of a logical unit number (LUN) binding table.
  • FIG. 4A is an illustration of a discovery list.
  • FIG. 4B is an illustration of a functional discovery list that may be maintained in addition to or in place of the discovery list shown in FIG. 4A.
  • FIG. 5 is an illustration of a topology table.
  • FIG. 6A illustrates a fibre channel switch (FC-SW) zoning configuration table.
  • FIG. 6B illustrates a different FC-SW zoning configuration table.
  • FIG. 6C illustrates a storage-based replication configuration table
  • FIG. 6D illustrates a host-based replication configuration table
  • FIG. 6E illustrates a cluster configuration table
  • FIG. 6F illustrates a cluster resource group configuration table
  • FIG. 6G illustrates a heartbeat configuration table
  • FIG. 7 is a flow chart summarizing the general steps involved in automatic configuration and semi-automatic configuration of a clustering system in accordance with at least one embodiment of the present invention.
  • FIG. 8 depicts a visual configuration diagram that may be presented to the user.
  • FIG. 1 is a block diagram of a clustering system 100 in accordance with at least one embodiment of the present invention.
  • clustering system 100 is comprised of equipment found in at least two geographically distinct locations 102 and 104 .
  • location 102 may be a metropolitan area such as San Diego, Calif.
  • location 104 may be a different metropolitan area such as San Francisco, Calif.
  • a management server 106 is responsible for monitoring, configuring, and otherwise managing servers 108 and 110 , network equipment 112 , and storage equipment 113 , 114 , and 115 .
  • Management server 106 , servers 108 and 110 , network equipment 112 , and storage equipment 113 , 114 , and 114 communicate through a local network 116 , forming a local SAN.
  • management server 106 includes a SAN manager 118 that includes a configuration engine 120 and a topology repository 122 .
  • SAN manager 118 also maintains a discovery list 124 , a configuration table 126 , a topology table 128 , and a mapping table 130 , which are discussed in further detail below.
  • SAN manager 118 maintains this information by communicating with various management agents located in servers 108 and 110 , network equipment 112 , and storage equipment 113 , 114 , and 115 .
  • SAN manager 118 and the various management agents may be implemented in software.
  • Server 108 may include one or more application programs. These application programs may be server level applications such as Web server applications, network file sharing applications, and others. As FIG. 1 illustrates, server 108 may also include clustering software for maintaining a clustering system, a management agent, and a number of host ports. Server 110 is similarly arranged and may also include one or more application programs, clustering software, a management agent, and a number of host ports.
  • Network equipment 112 is illustrated in FIG. 1 as a switch having a number of switch ports.
  • Network equipment 112 also includes a management agent.
  • Network equipment 112 facilitates communication through local network 116 .
  • network equipment 112 provides communication between servers 108 and 110 and storage equipment 115 .
  • Storage equipment 115 may include a number of disk ports, a number of logical volumes 132 , 134 , and 136 , and a management agent.
  • each of the logical volumes 132 , 134 , and 136 may be implemented in different ways, such as by use of various types of redundant array of independent disks (RAID).
  • RAID redundant array of independent disks
  • Each of logical volumes 132 , 134 , 136 may be implemented on a single physical disk (not shown), across multiple physical disks (not shown) within a disk group (not shown), across disks in multiple disk groups, or in some other arrangement.
  • server 108 , network equipment 112 , and storage equipment 115 may represent a primary node in a clustering system.
  • server 108 may be executing a database application, using storage equipment 115 to store the associated databases and communicating data to and from storage equipment 115 through network equipment 112 .
  • Fault-tolerance for this database service may be realized by creating a secondary node corresponding to the primary node.
  • Use of equipment located at a geographically distinct location, such as location 104 would provide effective fault-tolerance because if a catastrophic local event damages equipment at location 102 , redundant equipment at location 104 would be able to provide effective recovery.
  • a management server 138 is responsible for monitoring, configuring, and otherwise managing a server 140 , network equipment 142 , and storage equipment 144 .
  • Management server 138 , server 140 , network equipment 142 , and storage equipment 144 communicated through a local network 146 , forming a local SAN.
  • Local SANs at locations 102 and 104 , and perhaps other local SANs, may together form a wide area SAN by communicating over one or more wide area networks 148 .
  • management server 138 includes a SAN manager 150 that includes a configuration engine 152 and a topology repository 154 .
  • SAN manager 150 also maintains a discovery list 156 , a configuration table 158 , a topology table 160 , and a mapping table 162 , which are discussed in further detail below.
  • SAN manager 150 maintains this information by communicating with various management agents located in server 140 , network equipment 142 , and storage equipment 144 .
  • SAN manager 150 and the various management agents may be implemented in software.
  • Server 140 may include one or more application programs, clustering software for maintaining a clustering system, a management agent, and a number of host ports.
  • Network equipment 112 is illustrated in FIG. 1 as a switch having a number of switch ports.
  • Network equipment 112 also includes a management agent.
  • Network equipment 112 facilitates communication through local network 146 . As shown, network equipment 112 provides communication between server 140 and storage equipment 144 .
  • Storage equipment 144 may include a number of disk ports, a pool 164 of logical volumes, from which logical volumes 166 , 168 , and 170 may be selected, and a management agent.
  • each of the logical volumes in logical volume pool 164 including logical volumes 166 , 168 , and 170 , may be implemented in different ways, such as by use of various types of redundant array of independent disks (RAID).
  • RAID redundant array of independent disks
  • each of the logical volumes may be implemented on a single physical disk (not shown), across multiple physical disks (not shown) within a disk group (not shown), across disks in multiple disk groups, or in some other arrangement.
  • server 140 , network equipment 142 , and storage equipment 144 may be used to form a secondary node associated with the previously discussed primary node in the clustering system.
  • server 140 , network equipment 142 , and storage equipment 144 may fit such requirements.
  • the present invention allows equipment such as server 140 , network equipment 142 , and storage equipment 144 to be identified as resources that may be used to form the secondary node.
  • Servers 108 , 110 , and 140 are examples of processor devices, network equipment 115 and 144 are examples of storage devices, and network equipment 112 and 142 are examples of network interface devices.
  • FIG. 2 is an illustration of mapping table 130 maintained in management server 106 of FIG. 1.
  • Mapping table 130 is illustrated here as an example.
  • Other mapping tables, such as mapping table 162 maintained in management server 138 may have similar formats.
  • mapping table 130 provides a mapping between application programs being executed and the location(s) of data storage being utilized by such application programs. For instance, an application program executing in server 108 may utilize logical volumes 132 , 134 , and 136 in storage equipment 115 , and mapping table 130 would register such utilization in detail.
  • Different methods may be used to identify the various application programs executing in a particular server. One such method involves using the Common Information Model (CIM) standard, which allows application programs executing in a server may communicate with one another.
  • CIM Common Information Model
  • the management agent in server 108 may use the CIM standard to communicate with, and thereby identify, the various application programs executing in server 108 .
  • Another method involves using repository information maintained by the operating system of the server.
  • the management agent in server 108 may retrieve data from the repository information of the operating system of server 108 to identify various application program executing in server 108 .
  • Mapping table 130 is shown to include the following categories of information: ID 202 , Server 204 , Application 206 , Related Mount Point 208 , Related Volume ID 210 , Disk Group (DG) ID 212 , Block Device 214 , Logical Unit (LU) Binding ID 216 , Small Computer System Interface (SCSI) ID 218 , and SCSI Logical Unit Number (LUN) 220 .
  • table 130 indicates that a database (DB) application is executing in Server A (server 108 ).
  • Table 130 further indicates that this DB application is utilizing logical volumes Vol 1 , Vol 2 , and Vol 3 (logical volumes 132 , 134 , and 136 ). For each of these three logical volumes, table 130 provides additional information.
  • table 130 indicates the mount point (/u01) at which Vol 1 is associated with, or “mounted” to, the system executing the DB application.
  • Table 130 also indicates the physical disk group (0) and block device (c2t2d1) in which Vol 1 is implemented.
  • logical volumes are also associated with SCSI IDs, as well as LUNs within particular SCSI IDs.
  • Vol 1 is shown to be associate with a particular SCSI ID (2) and a particular SCSI LUN (1).
  • FIG. 3 is an illustration of a LUN binding table 300 maintained in server 108 of FIG. 1.
  • LUN binding table 300 is illustrated here as an example. Other LUN binding tables maintained in other servers, such as servers 110 and 140 , may have similar formats.
  • LUN binding table 300 indicates the SCSI ID assignment and LUN assignment associated with location(s) of data storage being utilized by application programs executing in server 108 .
  • LUN binding table 300 is shown to include the following categories of information: Binding ID 302 , SCSI ID 304 , LUN 306 , and Inquiry Information 308 .
  • Each Binding ID 302 indicates a particular location of storage and is associated with a particular SCSI ID 304 and a particular LUN 306 .
  • each Binding ID 302 further indicates Inquiry Information 308 , which can provide additional data such as vendor, storage type, and logical volume information.
  • Binding table 300 may be maintained as a part of the operation of the management agent in server 108 .
  • individual binding tables maintained at various servers, such as servers 108 and 110 may be used to form the mapping table 130 shown in FIG. 2.
  • FIG. 4A is an illustration of discovery list 124 maintained in management server 106 of FIG. 1.
  • Discovery list 124 is illustrated here as an example. Other discovery lists, such as discovery list 156 maintained in management server 138 , may have similar formats.
  • discovery list 124 provides a listing of devices available at various locations, such as locations 102 and 104 .
  • Discovery list 124 shows the following categories of information for each device: Local SAN ID 402 , Discovery ID 404 , Device Type 406 , Device Information 408 , IP address 410 , and Area/Global Position 412 .
  • Local SAN ID 402 identifies the local SAN to which the device belongs.
  • Discovery ID 404 identifies a numerical order for the device within its local SAN.
  • Device Information 406 may indicate various information relating to the device, such as vendor and device type.
  • IP address 408 indicates the IP address assigned to the device.
  • Area/Global Position 410 provides information relating to the location of the device, such as name of metropolitan area, longitude, and latitude.
  • discovery list 124 allows management server 106 to identify available devices at various locations, including distant locations, that may be potential resources suitable to serve as part of a secondary node corresponding a primary node in a clustering system.
  • FIG. 4B is an illustration of a functional discovery list 440 that may be maintained in management server 106 of FIG. 1, in addition to or in place of discovery list 124 .
  • Functional discovery list 440 is illustrated here as an example. Other discovery lists maintained in other management servers may have similar formats.
  • functional discovery list 440 provides a listing of devices available at various locations, such as locations 102 and 104 .
  • Functional discovery list 440 shows the following categories of information for each device: Local SAN ID 442 , Discovery ID 444 , Function Type 446 , and Device Information 448 .
  • Local SAN ID 442 identifies the local SAN to which the device belongs.
  • Discovery ID 444 identifies a numerical order for the device within its local SAN.
  • Function Type 446 provides information on the possible function of the device, such as use in host-based remote mirroring or storage-based remote mirroring.
  • Device Information 448 may indicate various information relating to the device, such as vendor, device type, and device class.
  • Functional discovery list 440 allows management server 106 to identify available devices at various locations, including distant locations, that may be potential resources suitable to serve as part of a secondary node corresponding a primary node in a clustering system.
  • FIG. 5 is an illustration of topology table 128 maintained in management server 106 of FIG. 1.
  • Topology table 128 is illustrated here as an example. Other topology tables, such as topology table 160 maintained in management server 138 , may have similar formats. As shown in FIG. 5, topology table 128 provides a summary of interconnections over which data may be sent in system 100 .
  • Topology table 128 shows the following categories of information: server information 502 , first local network information 504 , interconnect information 506 , second local network information 508 , and storage information 510 .
  • Topology table 128 depicts the manner by which various networking and storage equipment are linked, including local and wide area network connections. Here, topology table 128 is shown to be focused on storage network topology for purposes of illustration. Other types of topology information may be included as well.
  • FIGS. 6A-6G show various configuration tables that may be implemented, individually or in combination, as the contents of configuration table 126 maintained in management server 106 of FIG. 1. Contents of configuration table 126 is illustrated here as examples. Other configuration tables, such as configuration table 158 maintained in management server 138 , may have similar formats.
  • FIG. 6A illustrates a fibre channel switch (FC-SW) zoning configuration table 600 .
  • This table contains categories of information including Zone ID 602 and Switch Port ID List 604 .
  • Zone ID 602 identifies different zones, or groupings of devices, such that devices within a common zone may readily communicate with one another.
  • Switch Port ID List 604 identifies the different network ports which belong to the identified zone.
  • FIG. 6B illustrates a different FC-SW zoning configuration table 606 , similar in structure to table 600 .
  • Zoning configuration tables 600 and 606 allow convenient separation of groups of devices.
  • tables 600 and 606 are described as fibre channel switch zoning configuration tables for purposes of illustration, other types of equipment may also be organized in similar zoning tables.
  • FIG. 6C illustrates a storage-based replication configuration table 608 .
  • This table identifies the configuration of storage-based data replication from a set of primary storage locations to a corresponding set of secondary storage locations.
  • the storage system is responsible of maintaining the proper replication of data.
  • Table 608 shows the following categories of information: ID 610 , Group ID 612 , Group Name 614 , primary storage information 616 , secondary storage information 618 , and Cluster Config ID 620 .
  • ID 610 is an entry identifier.
  • Group ID 612 and Group Name 614 relate to the identification number and name for each group of storage resources, such as a group of volumes, representing a storage location.
  • the primary and secondary storage information 616 and 618 each identifies the host and volume information associated with the relevant storage location.
  • Cluster Config ID 620 identifies a label for the cluster corresponding to the primary and secondary storage locations.
  • FIG. 6D illustrates a host-based replication configuration table 622 .
  • This table identifies the configuration of host-based data replication from a set of primary storage locations to a corresponding set of secondary storage locations.
  • the host system is responsible of maintaining the proper replication of data.
  • Table 622 shows the following categories of information: ID 624 , Valid 626 , Group ID 628 , Group Name 630 , primary storage location information 632 , secondary storage location information 634 , and Cluster Config ID 636 .
  • Valid 626 relates to whether the particular replication configuration is available.
  • primary and secondary storage location information 632 and 634 are each shown to also include information for identifying the corresponding disk group and block device.
  • Other information in table 622 is similar to information shown in table 608 of FIG. 6C.
  • FIG. 6E illustrates a cluster configuration table 638 .
  • This table identifies the arrangement of various clusters in the system, which may include the configuration of physical devices being controlled by cluster software.
  • Table. 638 shows the following categories of information: ID 640 , Valid 642 , Cluster ID/Name 644 , Cluster Type/Vender 646 , Member Node List 648 , Heartbeat List 650 , Heartbeat Configuration ID List 652 , Replication Type List 654 , and Replication Configuration ID List 656 .
  • ID 640 identifies a numeric label for each entry
  • Valid 642 relates to whether the particular cluster is available.
  • Cluster ID/Name 644 provides a number identifier and a name identifier for each cluster presented.
  • Cluster Type/Vendor 646 identifies the classification of the cluster and vendor of the associated equipment.
  • Member Node List 648 identifies the nodes that are members of the particular cluster.
  • Heartbeat List 650 and Heartbeat Configuration 652 relate to arrangement of the heartbeat, which provides a signal that may be used to indicate whether a node, or particular resource at a node, is active.
  • Replication Type List 654 and Replication Configuration ID List 656 relate to the type of replication available and the associated configuration label.
  • FIG. 6F illustrates a cluster resource group configuration table 658 .
  • This table identifies the various resources available at different clusters, which may include the configuration of the logical resource group for each node in each cluster. Such resources may be processing, communication, storage, or other types of resources.
  • Table 658 shows the following categories of information: ID 660 , Valid 662 , Cluster Type ID 664 , Resource Group ID 666 , Resource Group Name 668 , Member Node List 670 , Resource List 672 , Replication Type 674 , and Replication Configuration ID 676 .
  • ID 660 provides an numerical label for each entry, Valid 662 relates to whether the particular cluster is available.
  • Cluster Type ID 664 provides an identifier for the cluster and indicates the type and vendor of equipment associated with the cluster.
  • Resource Group ID 666 and Resource Group Name 668 provide a number identifier and a name identifier for each collection of resources associated with the cluster.
  • Resource List 672 identifies the particular resources available within the identified resource group.
  • Replication Type 674 and Replication Config ID 676 relate to the type of replication available and the associated configuration label.
  • FIG. 6G illustrates a heartbeat configuration table 678 .
  • This table identifies provides further detail on the arrangement of the heartbeat for each cluster.
  • Table 678 shows the following categories of information: ID 680 , Valid 682 , Cluster Type ID 684 , Heartbeat Type ID 686 , Heartbeat Name 688 , Member Node List 690 , NIC List 692 , and Storage List 694 .
  • ID 680 provides a numerical label for each entry.
  • Valid 682 relates to whether the cluster is available.
  • Cluster Type ID 684 provides an identifier for the cluster and indicates the type and vendor of equipment associated with the cluster.
  • Heartbeat Type ID 686 and HeartBeat Name 688 identify the classification and name of the heartbeat utilized.
  • the heartbeat may be host-based or storage-based.
  • Member Node List 690 identifies the nodes that are members of the particular cluster.
  • NIC List 692 identifies NICs which correspond the to a particular host-base heartbeat.
  • Storage list identifies storage systems which correspond to a particular storage-based heartbeat.
  • management servers 106 and 108 are situated at geologically distinct locations 102 and 104 , respectively, they may exchange some or all of the information that is contained in various tables such as those discussed above.
  • FIG. 7 is a flow chart summarizing the general steps involved in automatic configuration and semi-automatic configuration of a clustering system in accordance with at least one embodiment of the present invention.
  • the steps shown may be implemented as an integrated routine that allows the selection of either automatic configuration or semi-automatic configuration.
  • the steps shown may be implemented as two separate routines. That is, a system may employ only automatic configuration, or only semi-automatic configuration.
  • FIG. 7 shows the establishment of a clustering system through the formation of a secondary node corresponding to a primary node.
  • Different steps shown in FIG. 7 may be accomplished with use of a user interface, such as an interactive graphical user interface (GUI).
  • GUI interactive graphical user interface
  • the GUI can be situated at any location, as long as the relevant information can be passed to the system. For example, the information submitted through the GUI by the user may be sent to the management server 106 , or to the management server 138 .
  • step 702 establishment of a clustering system begins with step 702 , in which the primary node of the planned clustering system is identified. This may involve identification, by the user, of the name of one or more target applications and the name of the target server corresponding to the primary node. Alternatively, a more automated process may be employed. For example, the main application executing in a target server may be selected.
  • policies for creating the clustering system may be specified. This step may involve specification by the user of general policies to follow in establishing the clustering system and importance assigned to such policies. For example, the user may be presented with three potential policies: (1) performance, (2) reliability, and (3) cost.
  • Performance may relate to the effectiveness of the data transfer between the data storage of the primary node and the data storage of the secondary node, which may involve measures of bandwidth, distance, and network usage in a wide area SAN covering metropolitan areas of San Francisco (SF) and San Diego (SD) are provided in the table below: Network Type Total Usage SD Local 2 Gbps 50% SF-SD Interconnect 48 Gbps 10% SF Local 2 Gbps 8%
  • the secondary node may be chosen to have equal performance as the primary node, in terms of processing capability (server type), storage capability (throughput, cache size, RAID level, etc.), and network interface capability (number and performance of host bus adaptors).
  • the interconnect that has more available throughput capacity may be chosen. For example, assume there are two interconnects: interconnect A, which has 48 Gbps total throughput capacity and 10% average usage rate (43.2 Gbps available throughput capacity), and interconnect B, which has 128 Gbps total throughput capacity and 80% average usage rate (25.6 Gbps available throughput capacity).
  • interconnect A has more available throughput capacity than interconnect B, so interconnect A may be chosen.
  • Reliability may relate to the level of confidence with which the data storage of the secondary node replicates data in the data storage of the primary node. If a user places emphasis on reliability the secondary node may be chosen to have redundant host bus adaptors and highly reliable, enterprise lever storage, such as RAID level 1 . Cost may relate to the cost of using equipment, such as maintenance costs. Cost may also relate to the cost of acquiring currently unavailable equipment. If a user places emphasis on cost, the secondary node may be chosen to have much lower performance than the primary node, in terms of processing capability (server type), storage capability (throughput, cache size, RAID level, etc.), and network interface capability (number and performance of host bus adaptors). For example, storage equipment of RAID level 5 may be chosen.
  • the user is able control the design of the clustering system, without being required to decipher the detailed considerations relating to technical specifications of related equipment and software.
  • the user may be presented with various general policies from which to choose.
  • the user may specify policies by simply identifying particular policies as important.
  • the user may also specify policies by assigning importance, or weight, to particular policies. This may be done in different ways, such as by user input of ratings, ratios, percentages, or other measures for different policies.
  • step 706 The next step under automatic configuration is step 706 , in which information on the current system is gathered. Such information may include the contents of mapping tables, discovery tables, topology tables, and configuration tables. This information provides a detailed picture of the various aspects of the current system, including the mapping from applications to resources they utilize, available resource and their configurations, and so on.
  • step 708 the information on the current system gathered in step 706 is analyzed to select the most appropriate resources and/or arrangements to be used for creating the secondary node. This is done in view of the various policies, and possibly weights assigned to those policies, as defined by the user in step 704 .
  • step 710 the selected resources and/or arrangements are presented to the user, and the user is given to opportunity to confirm the selection of resources and/or arrangements. If the user confirms the selection, the process continues with step 712 , discussed below. If the user does not confirm the selection, the process loops back to step 704 .
  • step 712 the selected resources and/or arrangements are used to create the secondary node. If the selected resources need additional software installation or configuration in order to function properly as the secondary node, such installation or configuration may be performed. Alternatively, the automatic configuration routine or semi-automatic configuration routine may re-select from resources that do not require additional software installation or configuration. Also, default resources that do not require additional software installation or configuration may also be selected in order to avoid such installation or configuration of software. Finally, in step 714 , the configuration table(s) are updated to include information on the secondary node just created.
  • step 702 establishment of a clustering system also begins with step 702 , which has been discussed previously.
  • step 716 information on the current system is gathered. This step is similar to step 706 discussed above.
  • step 708 one or more potential selections of appropriate equipment and/or arrangements to be used for creating the secondary node is presented to the user. The user is given the opportunity to select the various equipment and/or arrangements to be used in creating the secondary node.
  • step 710 the user's selection is received and presented back to the user for confirmation.
  • a visual topology diagram such as the one shown in FIG. 8 may be presented to the user.
  • FIG. 8 may also represent a simplified version of block diagram shown in FIG. 1 If the user confirms the selection, the process continues with step 712 , which is has been described previously. If the user does not confirm the selection, the process loops back to step 618 .
  • semi-automatic configuration may also take into account user-defined policies, as is done in the case of automatic configuration.
  • policies may allow potential selections of equipment and/or arrangements presented to be narrowed, so that the user may be presented with a more focused set of potential equipment and/or arrangements from which to make a selection.
  • Other features discussed above in relation to automatic configuration may be adopted for use with semi-automatic configuration, and vise versa.
  • the visual confirmation diagram discussed in relation to semi-automatic configuration may also be used with automatic configuration, in order to present the automatically selected equipment and or arrangement to the user for confirmation.
  • variations on the different steps shown in FIG. 7 may also be adopted.
  • FIG. 1 is a block diagram of a clustering system 100 in accordance with at least one embodiment of the present invention. Such a diagram would allow the user to visually inspect a proposed configuration for a clustering system. This provides an efficient way to present a proposed configuration to the user for confirmation.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Databases & Information Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)
  • Multi Processors (AREA)

Abstract

A method, apparatus, article of manufacture, and system are presented for establishing redundant computer resources. According to one embodiment, in a system including a plurality of processor devices and a plurality of storage devices, the processor devices, the storage devices and the management server being connected via a network, the method comprises storing device information relating to the processor devices and the storage devices and topology information relating to topology of the network, identifying at least one primary computer resource, selecting at least one secondary computer resource suitable to serve as a redundant resource corresponding to the at least one primary computer resource based on the device information and the topology information, and assigning the at least one secondary computer resource as a redundant resource corresponding to the at least one primary computer resource.

Description

    CROSS-REFERENCES TO RELATED APPLICATIONS
  • Not applicable [0001]
  • BACKGROUND OF THE INVENTION
  • This invention is generally related to the field of clustering systems and remote mirroring technology. [0002]
  • The use of clustering systems to accomplish fault-tolerance and/or load-balancing is becoming increasingly popular. Generally speaking, a clustering system may provide redundant resources so that if one portion of the system experiences failure, another portion can take over affected tasks or otherwise provide recovery from the failure. Also, a clustering system may use its redundant resources to process tasks in a more distributed manner, allowing different portions of the system to work in parallel in accomplishing tasks. [0003]
  • A typical clustering system may be made up of two or more nodes, each having its own processing and storage capabilities. In one particular use of a clustering system, a primary node may comprise of a server and associated storage devices, while a secondary node may also comprise of another server and associated storage devices. The secondary node may be created to be similar to the primary node, in terms of processing, storage, and other capabilities. Here, the clustering system may maintain exact correspondence between the data storage of the primary node and the data storage of the secondary node, such that any write or read to data storage at the primary node is replicated at the secondary node. If the primary node fails as it performs its various tasks, the secondary node may take over the tasks performed by the primary node. For example, if a web server that is configured as a primary node in a clustering system fails for some reason, a secondary node may take over and serve web server functions in place of the failed primary node. A web site supported by such a system thus continues to operate with little or no down time. Web site visitors may continue to visit the associated web site as if no failure had occurred. In this example, providing a primary and a secondary node of similar capabilities allows the secondary node to be capable of taking over the tasks previously performed by the primary node. [0004]
  • In other situations, the secondary node may have lesser capabilities than the primary node. For example, if the secondary node is only designed to temporarily take over the tasks of the primary node, or if the secondary node is only designed to record periodic snap shots of the data storage of the primary node, it may be sufficient to create the secondary node with lesser capabilities. This may be especially true if the cost associated with creating a similarly capable secondary node is to be avoided, or if failure of the primary node is not expected to extend beyond a certain amount of time. Thus, depending on the situation, the required capabilities of the secondary node may vary. [0005]
  • The correspondence between the data storage of a primary node and the data storage of a secondary node storage may also be referred to as remote mirroring. This is especially the case if the data storage of the primary node is at a geographically distant location from the data storage of the secondary node. Remote mirroring may be carried out by different portions of a system. For example, in host-based remote mirroring, a host, such as a server, may be principally responsible for maintaining the correspondence between the data storage of the primary node and the data storage of the secondary node. In storage-based remote mirroring, a storage system, such as a storage area network (SAN), may be principally responsible for maintaining such correspondence. Depending on the implementation, remote mirroring may require separate software and equipment installation and/or configuration, in addition to that required by other parts of the clustering system. [0006]
  • Currently, in order to realize the many advantages of a clustering system, the multiple nodes of a clustering system must be established by a system administrator. For example, in a clustering system having a primary and a secondary node, the system administrator must decide exactly what should be the processing, storage, and other capabilities of the secondary node, install or identify available resources meeting those capabilities, install required software, and perform necessary configurations to set up the clustering system. These steps involve factors that can be overwhelmingly complex and difficult to analyze for the system administrator, even if that person is an expert. Thus, the administrator may only be able to make a rough guess, in an ad hoc manner, as to what storage capability is needed for the secondary node. As discussed above, the required storage capability of the secondary node may vary from situation to situation, and it may not always be ideal to simply mimic the storage capability of the primary node. [0007]
  • Furthermore, after the desired processing, storage, and other capabilities of the secondary node is decided, the administrator must go about looking for existing equipment in the system that fit the description, or install such equipment. In a large system having many different components, it may be extremely difficult and time-consuming for an administrator to search through all available resources in order to find the appropriate equipment. Finally, after the appropriate resources are decided and located, software installation and configuration may take additional time and effort. Thus, while clustering systems provide import fault-tolerance and/or load-balancing capabilities, the deployment of clustering systems remains largely a difficult and imprecise undertaking. [0008]
  • BRIEF SUMMARY OF THE INVENTION
  • The present invention provides a method, apparatus, article of manufacture, and system for establishing redundant computer resources. According to one embodiment, in a system including a plurality of processor, a plurality of storage devices, and a management server connected via a network, the method comprises storing device information relating to the processor devices and the storage devices and topology information relating to topology of the network, identifying at least one primary computer resource, the at least one primary computer resource including at least one primary processor device and at least one portion of storage implemented in at least one primary storage device, selecting at least one secondary computer resource suitable to serve as a redundant resource corresponding to the at least one primary computer resource based on the device information and the topology information, the at least one secondary computer resource including at least one secondary processor device and at least one portion of storage implemented in at least one secondary storage device, and assigning the at least one secondary computer resource as a redundant resource corresponding to the at least one primary computer resource. [0009]
  • If the at least one primary storage device has storage-based remote mirroring function, the at least one secondary computer resource may be selected such that the at least one secondary storage device also has storage-based remote mirroring function and is accessible from the at least one primary storage device. [0010]
  • In one embodiment, the at least one secondary computer resource is selected based on at least one user-specified policy, which may include performance of the at least one secondary computer resource, reliability of the at least one secondary computer resource, and/or cost of the at least one secondary computer resource. [0011]
  • In another embodiment, the step for selecting the at least one secondary computer resource comprises the steps of selecting at least one candidate suitable to serve as a redundant resource corresponding to the at least one primary computer resource, presenting the at least one candidate to a user, and receiving input from the user indicating selection, from the at least one candidate, of the at least one secondary computer resource.[0012]
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a block diagram of a clustering system in accordance with at least one embodiment of the present invention. [0013]
  • FIG. 2 is an illustration of a mapping table. [0014]
  • FIG. 3 is an illustration of a logical unit number (LUN) binding table. [0015]
  • FIG. 4A is an illustration of a discovery list. [0016]
  • FIG. 4B is an illustration of a functional discovery list that may be maintained in addition to or in place of the discovery list shown in FIG. 4A. [0017]
  • FIG. 5 is an illustration of a topology table. [0018]
  • FIG. 6A illustrates a fibre channel switch (FC-SW) zoning configuration table. [0019]
  • FIG. 6B illustrates a different FC-SW zoning configuration table. [0020]
  • FIG. 6C illustrates a storage-based replication configuration table. [0021]
  • FIG. 6D illustrates a host-based replication configuration table. [0022]
  • FIG. 6E illustrates a cluster configuration table. [0023]
  • FIG. 6F illustrates a cluster resource group configuration table. [0024]
  • FIG. 6G illustrates a heartbeat configuration table. [0025]
  • FIG. 7 is a flow chart summarizing the general steps involved in automatic configuration and semi-automatic configuration of a clustering system in accordance with at least one embodiment of the present invention. [0026]
  • FIG. 8 depicts a visual configuration diagram that may be presented to the user. [0027]
  • DETAILED DESCRIPTION OF THE INVENTION
  • Clustering System [0028]
  • FIG. 1 is a block diagram of a [0029] clustering system 100 in accordance with at least one embodiment of the present invention. Here, clustering system 100 is comprised of equipment found in at least two geographically distinct locations 102 and 104. For example, location 102 may be a metropolitan area such as San Diego, Calif., and location 104 may be a different metropolitan area such as San Francisco, Calif. At location 102, a management server 106 is responsible for monitoring, configuring, and otherwise managing servers 108 and 110, network equipment 112, and storage equipment 113, 114, and 115. Management server 106, servers 108 and 110, network equipment 112, and storage equipment 113, 114, and 114 communicate through a local network 116, forming a local SAN.
  • As shown, [0030] management server 106 includes a SAN manager 118 that includes a configuration engine 120 and a topology repository 122. SAN manager 118 also maintains a discovery list 124, a configuration table 126, a topology table 128, and a mapping table 130, which are discussed in further detail below. SAN manager 118 maintains this information by communicating with various management agents located in servers 108 and 110, network equipment 112, and storage equipment 113, 114, and 115. SAN manager 118 and the various management agents may be implemented in software.
  • [0031] Server 108 may include one or more application programs. These application programs may be server level applications such as Web server applications, network file sharing applications, and others. As FIG. 1 illustrates, server 108 may also include clustering software for maintaining a clustering system, a management agent, and a number of host ports. Server 110 is similarly arranged and may also include one or more application programs, clustering software, a management agent, and a number of host ports.
  • [0032] Network equipment 112 is illustrated in FIG. 1 as a switch having a number of switch ports. Network equipment 112 also includes a management agent. Network equipment 112 facilitates communication through local network 116. As shown, network equipment 112 provides communication between servers 108 and 110 and storage equipment 115.
  • [0033] Storage equipment 115 may include a number of disk ports, a number of logical volumes 132, 134, and 136, and a management agent. Here, each of the logical volumes 132, 134, and 136 may be implemented in different ways, such as by use of various types of redundant array of independent disks (RAID). Each of logical volumes 132, 134, 136 may be implemented on a single physical disk (not shown), across multiple physical disks (not shown) within a disk group (not shown), across disks in multiple disk groups, or in some other arrangement.
  • Here, [0034] server 108, network equipment 112, and storage equipment 115 may represent a primary node in a clustering system. For example, server 108 may be executing a database application, using storage equipment 115 to store the associated databases and communicating data to and from storage equipment 115 through network equipment 112. Fault-tolerance for this database service may be realized by creating a secondary node corresponding to the primary node. Use of equipment located at a geographically distinct location, such as location 104, would provide effective fault-tolerance because if a catastrophic local event damages equipment at location 102, redundant equipment at location 104 would be able to provide effective recovery.
  • At [0035] location 104, a management server 138 is responsible for monitoring, configuring, and otherwise managing a server 140, network equipment 142, and storage equipment 144. Management server 138, server 140, network equipment 142, and storage equipment 144 communicated through a local network 146, forming a local SAN. Local SANs at locations 102 and 104, and perhaps other local SANs, may together form a wide area SAN by communicating over one or more wide area networks 148.
  • As shown, [0036] management server 138 includes a SAN manager 150 that includes a configuration engine 152 and a topology repository 154. SAN manager 150 also maintains a discovery list 156, a configuration table 158 , a topology table 160, and a mapping table 162, which are discussed in further detail below. SAN manager 150 maintains this information by communicating with various management agents located in server 140, network equipment 142, and storage equipment 144. SAN manager 150 and the various management agents may be implemented in software.
  • [0037] Server 140 may include one or more application programs, clustering software for maintaining a clustering system, a management agent, and a number of host ports. Network equipment 112 is illustrated in FIG. 1 as a switch having a number of switch ports. Network equipment 112 also includes a management agent. Network equipment 112 facilitates communication through local network 146. As shown, network equipment 112 provides communication between server 140 and storage equipment 144.
  • Storage equipment [0038] 144 may include a number of disk ports, a pool 164 of logical volumes, from which logical volumes 166, 168, and 170 may be selected, and a management agent. Here, each of the logical volumes in logical volume pool 164, including logical volumes 166, 168, and 170, may be implemented in different ways, such as by use of various types of redundant array of independent disks (RAID). Thus, each of the logical volumes may be implemented on a single physical disk (not shown), across multiple physical disks (not shown) within a disk group (not shown), across disks in multiple disk groups, or in some other arrangement.
  • Here, [0039] server 140, network equipment 142, and storage equipment 144 may be used to form a secondary node associated with the previously discussed primary node in the clustering system. For example, if the clustering system is designed to provide a secondary node having similar processing, storage, and other capabilities as those of the primary node, it would be desirable to identify a secondary node having similar equipment as the primary node. Server 140, network equipment 142, and storage equipment 144 may fit such requirements. The present invention allows equipment such as server 140, network equipment 142, and storage equipment 144 to be identified as resources that may be used to form the secondary node.
  • [0040] Servers 108, 110, and 140 are examples of processor devices, network equipment 115 and 144 are examples of storage devices, and network equipment 112 and 142 are examples of network interface devices.
  • Information Maintained at Management Server and Elsewhere [0041]
  • FIG. 2 is an illustration of mapping table [0042] 130 maintained in management server 106 of FIG. 1. Mapping table 130 is illustrated here as an example. Other mapping tables, such as mapping table 162 maintained in management server 138, may have similar formats. As shown in FIG. 2, mapping table 130 provides a mapping between application programs being executed and the location(s) of data storage being utilized by such application programs. For instance, an application program executing in server 108 may utilize logical volumes 132, 134, and 136 in storage equipment 115, and mapping table 130 would register such utilization in detail. Different methods may be used to identify the various application programs executing in a particular server. One such method involves using the Common Information Model (CIM) standard, which allows application programs executing in a server may communicate with one another. For example, the management agent in server 108 may use the CIM standard to communicate with, and thereby identify, the various application programs executing in server 108. Another method involves using repository information maintained by the operating system of the server. For example, the management agent in server 108 may retrieve data from the repository information of the operating system of server 108 to identify various application program executing in server 108.
  • Mapping table [0043] 130 is shown to include the following categories of information: ID 202, Server 204, Application 206, Related Mount Point 208, Related Volume ID 210, Disk Group (DG) ID 212, Block Device 214, Logical Unit (LU) Binding ID 216, Small Computer System Interface (SCSI) ID 218, and SCSI Logical Unit Number (LUN) 220. Here, table 130 indicates that a database (DB) application is executing in Server A (server 108). Table 130 further indicates that this DB application is utilizing logical volumes Vol1, Vol2, and Vol3 ( logical volumes 132, 134, and 136). For each of these three logical volumes, table 130 provides additional information. Taking Vol1 just as an example, table 130 indicates the mount point (/u01) at which Vol1 is associated with, or “mounted” to, the system executing the DB application. Table 130 also indicates the physical disk group (0) and block device (c2t2d1) in which Vol1 is implemented. In this example, logical volumes are also associated with SCSI IDs, as well as LUNs within particular SCSI IDs. Here, Vol1 is shown to be associate with a particular SCSI ID (2) and a particular SCSI LUN (1).
  • FIG. 3 is an illustration of a LUN binding table [0044] 300 maintained in server 108 of FIG. 1. LUN binding table 300 is illustrated here as an example. Other LUN binding tables maintained in other servers, such as servers 110 and 140, may have similar formats. LUN binding table 300 indicates the SCSI ID assignment and LUN assignment associated with location(s) of data storage being utilized by application programs executing in server 108. LUN binding table 300 is shown to include the following categories of information: Binding ID 302, SCSI ID 304, LUN 306, and Inquiry Information 308. Each Binding ID 302 indicates a particular location of storage and is associated with a particular SCSI ID 304 and a particular LUN 306. Also, each Binding ID 302 further indicates Inquiry Information 308, which can provide additional data such as vendor, storage type, and logical volume information. Binding table 300 may be maintained as a part of the operation of the management agent in server 108. Thus, individual binding tables maintained at various servers, such as servers 108 and 110, may be used to form the mapping table 130 shown in FIG. 2.
  • FIG. 4A is an illustration of [0045] discovery list 124 maintained in management server 106 of FIG. 1. Discovery list 124 is illustrated here as an example. Other discovery lists, such as discovery list 156 maintained in management server 138, may have similar formats. As shown in FIG. 4, discovery list 124 provides a listing of devices available at various locations, such as locations 102 and 104. Discovery list 124 shows the following categories of information for each device: Local SAN ID 402, Discovery ID 404, Device Type 406, Device Information 408, IP address 410, and Area/Global Position 412. Local SAN ID 402 identifies the local SAN to which the device belongs. Discovery ID 404 identifies a numerical order for the device within its local SAN. Device Information 406 may indicate various information relating to the device, such as vendor and device type. IP address 408 indicates the IP address assigned to the device. Area/Global Position 410 provides information relating to the location of the device, such as name of metropolitan area, longitude, and latitude. Thus, discovery list 124 allows management server 106 to identify available devices at various locations, including distant locations, that may be potential resources suitable to serve as part of a secondary node corresponding a primary node in a clustering system.
  • FIG. 4B is an illustration of a [0046] functional discovery list 440 that may be maintained in management server 106 of FIG. 1, in addition to or in place of discovery list 124. Functional discovery list 440 is illustrated here as an example. Other discovery lists maintained in other management servers may have similar formats. As shown in FIG. 5, functional discovery list 440 provides a listing of devices available at various locations, such as locations 102 and 104. Functional discovery list 440 shows the following categories of information for each device: Local SAN ID 442, Discovery ID 444, Function Type 446, and Device Information 448. Local SAN ID 442 identifies the local SAN to which the device belongs. Discovery ID 444 identifies a numerical order for the device within its local SAN. Function Type 446 provides information on the possible function of the device, such as use in host-based remote mirroring or storage-based remote mirroring. Device Information 448 may indicate various information relating to the device, such as vendor, device type, and device class. Functional discovery list 440 allows management server 106 to identify available devices at various locations, including distant locations, that may be potential resources suitable to serve as part of a secondary node corresponding a primary node in a clustering system.
  • FIG. 5 is an illustration of topology table [0047] 128 maintained in management server 106 of FIG. 1. Topology table 128 is illustrated here as an example. Other topology tables, such as topology table 160 maintained in management server 138, may have similar formats. As shown in FIG. 5, topology table 128 provides a summary of interconnections over which data may be sent in system 100. Topology table 128 shows the following categories of information: server information 502, first local network information 504, interconnect information 506, second local network information 508, and storage information 510. Topology table 128 depicts the manner by which various networking and storage equipment are linked, including local and wide area network connections. Here, topology table 128 is shown to be focused on storage network topology for purposes of illustration. Other types of topology information may be included as well.
  • FIGS. 6A-6G show various configuration tables that may be implemented, individually or in combination, as the contents of configuration table [0048] 126 maintained in management server 106 of FIG. 1. Contents of configuration table 126 is illustrated here as examples. Other configuration tables, such as configuration table 158 maintained in management server 138, may have similar formats.
  • FIG. 6A illustrates a fibre channel switch (FC-SW) zoning configuration table [0049] 600. This table contains categories of information including Zone ID 602 and Switch Port ID List 604. Zone ID 602 identifies different zones, or groupings of devices, such that devices within a common zone may readily communicate with one another. Switch Port ID List 604 identifies the different network ports which belong to the identified zone. FIG. 6B illustrates a different FC-SW zoning configuration table 606, similar in structure to table 600. Zoning configuration tables 600 and 606 allow convenient separation of groups of devices. Here, tables 600 and 606 are described as fibre channel switch zoning configuration tables for purposes of illustration, other types of equipment may also be organized in similar zoning tables.
  • FIG. 6C illustrates a storage-based replication configuration table [0050] 608. This table identifies the configuration of storage-based data replication from a set of primary storage locations to a corresponding set of secondary storage locations. Here, the storage system is responsible of maintaining the proper replication of data. Table 608 shows the following categories of information: ID 610, Group ID 612, Group Name 614, primary storage information 616, secondary storage information 618, and Cluster Config ID 620. ID 610 is an entry identifier. Group ID 612 and Group Name 614 relate to the identification number and name for each group of storage resources, such as a group of volumes, representing a storage location. The primary and secondary storage information 616 and 618 each identifies the host and volume information associated with the relevant storage location. Cluster Config ID 620 identifies a label for the cluster corresponding to the primary and secondary storage locations.
  • FIG. 6D illustrates a host-based replication configuration table [0051] 622. This table identifies the configuration of host-based data replication from a set of primary storage locations to a corresponding set of secondary storage locations. Here, the host system is responsible of maintaining the proper replication of data. Table 622 shows the following categories of information: ID 624, Valid 626, Group ID 628, Group Name 630, primary storage location information 632, secondary storage location information 634, and Cluster Config ID 636. Valid 626 relates to whether the particular replication configuration is available. Also, primary and secondary storage location information 632 and 634 are each shown to also include information for identifying the corresponding disk group and block device. Other information in table 622 is similar to information shown in table 608 of FIG. 6C.
  • FIG. 6E illustrates a cluster configuration table [0052] 638. This table identifies the arrangement of various clusters in the system, which may include the configuration of physical devices being controlled by cluster software. Table.638 shows the following categories of information: ID 640, Valid 642, Cluster ID/Name 644, Cluster Type/Vender 646, Member Node List 648, Heartbeat List 650, Heartbeat Configuration ID List 652, Replication Type List 654, and Replication Configuration ID List 656. ID 640 identifies a numeric label for each entry, Valid 642 relates to whether the particular cluster is available. Cluster ID/Name 644 provides a number identifier and a name identifier for each cluster presented. Cluster Type/Vendor 646 identifies the classification of the cluster and vendor of the associated equipment. Member Node List 648 identifies the nodes that are members of the particular cluster. Heartbeat List 650 and Heartbeat Configuration 652 relate to arrangement of the heartbeat, which provides a signal that may be used to indicate whether a node, or particular resource at a node, is active. Replication Type List 654 and Replication Configuration ID List 656 relate to the type of replication available and the associated configuration label.
  • FIG. 6F illustrates a cluster resource group configuration table [0053] 658. This table identifies the various resources available at different clusters, which may include the configuration of the logical resource group for each node in each cluster. Such resources may be processing, communication, storage, or other types of resources. Table 658 shows the following categories of information: ID 660, Valid 662, Cluster Type ID 664, Resource Group ID 666, Resource Group Name 668, Member Node List 670, Resource List 672, Replication Type 674, and Replication Configuration ID 676. ID 660 provides an numerical label for each entry, Valid 662 relates to whether the particular cluster is available. Cluster Type ID 664 provides an identifier for the cluster and indicates the type and vendor of equipment associated with the cluster. Resource Group ID 666 and Resource Group Name 668 provide a number identifier and a name identifier for each collection of resources associated with the cluster. Resource List 672 identifies the particular resources available within the identified resource group. Replication Type 674 and Replication Config ID 676 relate to the type of replication available and the associated configuration label.
  • FIG. 6G illustrates a heartbeat configuration table [0054] 678. This table identifies provides further detail on the arrangement of the heartbeat for each cluster. Table 678 shows the following categories of information: ID 680, Valid 682, Cluster Type ID 684, Heartbeat Type ID 686, Heartbeat Name 688, Member Node List 690, NIC List 692, and Storage List 694. ID 680 provides a numerical label for each entry. Valid 682 relates to whether the cluster is available. Cluster Type ID 684 provides an identifier for the cluster and indicates the type and vendor of equipment associated with the cluster. Heartbeat Type ID 686 and HeartBeat Name 688 identify the classification and name of the heartbeat utilized. For example, the heartbeat may be host-based or storage-based. Member Node List 690 identifies the nodes that are members of the particular cluster. NIC List 692 identifies NICs which correspond the to a particular host-base heartbeat. Storage list identifies storage systems which correspond to a particular storage-based heartbeat.
  • The information maintained at each management server may be communicated to other management servers. For example, although [0055] management servers 106 and 108 are situated at geologically distinct locations 102 and 104, respectively, they may exchange some or all of the information that is contained in various tables such as those discussed above.
  • Automatic Configuration [0056]
  • FIG. 7 is a flow chart summarizing the general steps involved in automatic configuration and semi-automatic configuration of a clustering system in accordance with at least one embodiment of the present invention. The steps shown may be implemented as an integrated routine that allows the selection of either automatic configuration or semi-automatic configuration. Alternatively, the steps shown may be implemented as two separate routines. That is, a system may employ only automatic configuration, or only semi-automatic configuration. For purposes of illustration, FIG. 7 shows the establishment of a clustering system through the formation of a secondary node corresponding to a primary node. Different steps shown in FIG. 7 may be accomplished with use of a user interface, such as an interactive graphical user interface (GUI). Also, the GUI can be situated at any location, as long as the relevant information can be passed to the system. For example, the information submitted through the GUI by the user may be sent to the [0057] management server 106, or to the management server 138.
  • Under automatic configuration, establishment of a clustering system begins with [0058] step 702, in which the primary node of the planned clustering system is identified. This may involve identification, by the user, of the name of one or more target applications and the name of the target server corresponding to the primary node. Alternatively, a more automated process may be employed. For example, the main application executing in a target server may be selected.
  • Next, in [0059] step 704, policies for creating the clustering system, including remote mirroring features, may be specified. This step may involve specification by the user of general policies to follow in establishing the clustering system and importance assigned to such policies. For example, the user may be presented with three potential policies: (1) performance, (2) reliability, and (3) cost.
  • Performance may relate to the effectiveness of the data transfer between the data storage of the primary node and the data storage of the secondary node, which may involve measures of bandwidth, distance, and network usage in a wide area SAN covering metropolitan areas of San Francisco (SF) and San Diego (SD) are provided in the table below: [0060]
    Network
    Type Total Usage
    SD Local
     2 Gbps 50%
    SF-SD Interconnect 48 Gbps 10%
    SF Local
     2 Gbps  8%
  • Illustrative measures of bandwidth, distance, and network usage in the same wide area SAN, but from the perspective of the San Diego (SD) metropolitan area, are provided in the table below: [0061]
    Network
    Type Tested Throughput Distance Total Usage
    SF interconnect
    500 Mbps 1000 mile 48 Gbps 10%
  • Thus, if a user places emphasis on performance, the secondary node may be chosen to have equal performance as the primary node, in terms of processing capability (server type), storage capability (throughput, cache size, RAID level, etc.), and network interface capability (number and performance of host bus adaptors). Also if there are two or more option for interconnects between the primary device and secondary device, the interconnect that has more available throughput capacity may be chosen. For example, assume there are two interconnects: interconnect A, which has 48 Gbps total throughput capacity and 10% average usage rate (43.2 Gbps available throughput capacity), and interconnect B, which has 128 Gbps total throughput capacity and 80% average usage rate (25.6 Gbps available throughput capacity). Here, interconnect A has more available throughput capacity than interconnect B, so interconnect A may be chosen. [0062]
  • Reliability may relate to the level of confidence with which the data storage of the secondary node replicates data in the data storage of the primary node. If a user places emphasis on reliability the secondary node may be chosen to have redundant host bus adaptors and highly reliable, enterprise lever storage, such as [0063] RAID level 1. Cost may relate to the cost of using equipment, such as maintenance costs. Cost may also relate to the cost of acquiring currently unavailable equipment. If a user places emphasis on cost, the secondary node may be chosen to have much lower performance than the primary node, in terms of processing capability (server type), storage capability (throughput, cache size, RAID level, etc.), and network interface capability (number and performance of host bus adaptors). For example, storage equipment of RAID level 5 may be chosen.
  • Thus, by specifying general policies such as (1) performance, (2) reliability, and (3) cost, to follow in establishing the clustering system, the user is able control the design of the clustering system, without being required to decipher the detailed considerations relating to technical specifications of related equipment and software. The user may be presented with various general policies from which to choose. The user may specify policies by simply identifying particular policies as important. The user may also specify policies by assigning importance, or weight, to particular policies. This may be done in different ways, such as by user input of ratings, ratios, percentages, or other measures for different policies. [0064]
  • The next step under automatic configuration is [0065] step 706, in which information on the current system is gathered. Such information may include the contents of mapping tables, discovery tables, topology tables, and configuration tables. This information provides a detailed picture of the various aspects of the current system, including the mapping from applications to resources they utilize, available resource and their configurations, and so on.
  • In [0066] step 708, the information on the current system gathered in step 706 is analyzed to select the most appropriate resources and/or arrangements to be used for creating the secondary node. This is done in view of the various policies, and possibly weights assigned to those policies, as defined by the user in step 704. In step 710, the selected resources and/or arrangements are presented to the user, and the user is given to opportunity to confirm the selection of resources and/or arrangements. If the user confirms the selection, the process continues with step 712, discussed below. If the user does not confirm the selection, the process loops back to step 704.
  • In [0067] step 712, the selected resources and/or arrangements are used to create the secondary node. If the selected resources need additional software installation or configuration in order to function properly as the secondary node, such installation or configuration may be performed. Alternatively, the automatic configuration routine or semi-automatic configuration routine may re-select from resources that do not require additional software installation or configuration. Also, default resources that do not require additional software installation or configuration may also be selected in order to avoid such installation or configuration of software. Finally, in step 714, the configuration table(s) are updated to include information on the secondary node just created.
  • Semi-Automatic Configuration [0068]
  • Under semi-automatic configuration, establishment of a clustering system also begins with [0069] step 702, which has been discussed previously. Next, in step 716, information on the current system is gathered. This step is similar to step 706 discussed above. In step 708, one or more potential selections of appropriate equipment and/or arrangements to be used for creating the secondary node is presented to the user. The user is given the opportunity to select the various equipment and/or arrangements to be used in creating the secondary node. In step 710, the user's selection is received and presented back to the user for confirmation. Here, a visual topology diagram such as the one shown in FIG. 8 may be presented to the user. FIG. 8 may also represent a simplified version of block diagram shown in FIG. 1 If the user confirms the selection, the process continues with step 712, which is has been described previously. If the user does not confirm the selection, the process loops back to step 618.
  • In addition, semi-automatic configuration may also take into account user-defined policies, as is done in the case of automatic configuration. Here, such policies may allow potential selections of equipment and/or arrangements presented to be narrowed, so that the user may be presented with a more focused set of potential equipment and/or arrangements from which to make a selection. Other features discussed above in relation to automatic configuration may be adopted for use with semi-automatic configuration, and vise versa. For example, the visual confirmation diagram discussed in relation to semi-automatic configuration may also be used with automatic configuration, in order to present the automatically selected equipment and or arrangement to the user for confirmation. Further, variations on the different steps shown in FIG. 7 may also be adopted. [0070]
  • FIG. 1 is a block diagram of a [0071] clustering system 100 in accordance with at least one embodiment of the present invention.. Such a diagram would allow the user to visually inspect a proposed configuration for a clustering system. This provides an efficient way to present a proposed configuration to the user for confirmation.
  • Although the present invention has been described in terms of specific embodiments, it should be apparent to those skilled in the art that the scope of the present invention is not limited to the described specific embodiments. The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense. It will, however, be evident that additions, subtractions, substitutions, and other modifications may be made without departing from the broader spirit and scope of the invention as set forth in the claims. [0072]

Claims (23)

What is claimed is:
1. A method for a management server to establish redundant computer resources in a system including a plurality of processor devices and a plurality of storage devices, the processor devices, the storage devices and the management server being connected via a network, said method comprising:
storing device information relating to the processor devices and the storage devices and topology information relating to topology of the network, the device information including at least software information thereon;
identifying at least one primary computer resource, said at least one primary computer resource including at least one primary processor device and at least one portion of storage implemented in at least one primary storage device;
selecting at least one secondary computer resource suitable to serve as a redundant resource corresponding to said at least one primary computer resource based on the device information and the topology information, said at least one secondary computer resource including at least one secondary processor device and at least one portion of storage implemented in at least one secondary storage device, said at least one secondary processor device being a member of a cluster which said at least one primary processor device is a member of, said at least one portion of storage implemented in said at least one secondary storage device being accessible from said at least one secondary processor device; and
assigning said at least one secondary computer resource as a redundant resource corresponding to said at least one primary computer resource.
2. The method of claim 1 wherein if the at least one primary storage device has storage-based remote mirroring function, the at least one secondary computer resource is selected such that the at least one secondary storage device also has storage-based remote mirroring function and is accessible from the at least one primary storage device.
3. The method of claim 1 wherein said at least one secondary computer resource is selected based on at least one user-specified policy.
4. The method of claim 2 wherein said at least one user-specified policy includes performance of said at least one secondary computer resource.
5. The method of claim 2 wherein said at least one user-specified policy includes reliability of said at least one secondary computer resource.
6. The method of claim 2 wherein said at least one user-specified policy includes cost of said at least one secondary computer resource.
7. The method of claim 1 wherein said step for selecting said at least one secondary computer resource comprises the steps of:
selecting at least one candidate suitable to serve as a redundant resource corresponding to said at least one primary computer resource;
presenting said at least one candidate to a user; and
receiving input from said user indicating selection, from said at least one candidate, of said at least one secondary computer resource.
8. The method of claim 7 wherein said at least one candidate is selected based on at least one user-specified policy.
9. The method of claim 1 wherein said at least one primary computer resource includes a first network interface device for the network; and
wherein said at least one secondary computer resource includes a second network interface device for the network.
10. A method for a user to accomplish establishing redundant computer resources in a system including a plurality of processor devices and a plurality of storage devices, the processor devices and the storage devices being connected via a network, said method comprising:
issuing a command to begin establishing redundant computer resources for at least one primary computer resource which includes at least one primary processor and at least one portion of storage implemented in at least one primary storage device; and
specifying at least one policy to influence selection of at least a secondary computer resource suitable to serve as a redundant resource corresponding to the at least one primary computer resource, said selection based on device information relating to the processor devices and the storage devices and topology information relating to topology of the network.
11. A method for a user to accomplish establishing redundant computer resources in a system including a plurality of processor devices and a plurality of storage devices, the processor devices and the storage devices being connected via a network, said method comprising:
issuing a command to begin establishing redundant computer resources for at least one primary computer resource which includes at least one primary processor and at least one portion of storage implemented in at least one primary storage device;
reviewing at least one candidate suitable to serve as a redundant resource corresponding to the at least one primary computer resource, said at least one candidate being selected based on device information relating to the processor devices and the storage devices and topology information relating to topology of the network; and
selecting from said at least one candidate at least one secondary computer resource.
12. The method of claim 11 further comprising the step of specifying at least one policy to influence selection of said at least one candidate.
13. An apparatus for establishing redundant computer resources in a system including a plurality of processor devices and a plurality of storage devices, the processor devices and the storage devices being connected via a network, the apparatus comprising:
a management server connected via the network and adapted to store device information relating to the processor devices and the storage devices and topology information relating to topology of the network;
at least one management agent communicatively coupled to the management server, the at least one management agent adapted to collect the device information and topology information;
wherein the management server is further adopted to select at least one secondary computer resource suitable to serve as a redundant resource corresponding to at least one primary computer resource based on the device information and topology information, the at least one primary computer resource including at least one primary processor device and at least one portion of storage implemented in at least one primary storage device, the at least one secondary computer resource including at least one secondary processor device and at least one portion of storage implemented in at least one secondary storage device.
14. The apparatus of claim 13 wherein said management server is adapted to select said at least one secondary computer resource based on at least one user-specified policy.
15. The apparatus of claim 14 wherein said at least one user-specified policy includes performance of said at least one secondary computer resource.
16. The apparatus of claim 14 wherein said at least one user-specified policy includes reliability of said at least one secondary computer resource.
17. The apparatus of claim 14 wherein said at least one user-specified policy includes cost of said at least one secondary computer resource.
18. The apparatus of claim 13 wherein said management server is further adapted to select at least one candidate, to be presented to a user, suitable to serve as a redundant resource corresponding to said at least one primary computer resource, and
wherein said server is further adapted to receive indication of said user's selection, from said at least one candidate, of said at least one secondary computer resource.
19. The apparatus of claim 18 wherein said at least one candidate is selected based on at least one user-specified policy.
20. The apparatus of claim 13 wherein said at least one primary computer resource includes a first network interface device for the network; and
wherein said at least one secondary computer resource includes a second network interface device for the network.
21. An article of manufacture comprising:
a computer usable medium having computer readable program code means embodied therein for a management server to establish redundant computer resources in a system including a plurality of processor devices and a plurality of storage devices, the processor devices, the storage devices and the management server being connected via a network, the computer readable program code means in said article of manufacture comprising:
computer readable program code means for storing device information relating to the processor devices and the storage devices and topology information relating to topology of the network, the device information including at least software information thereon;
computer readable program code means for identifying at least one primary computer resource, said at least one primary computer resource including at least one primary processor device and at least one portion of storage implemented in at least one primary storage device;
computer readable program code means for selecting at least one secondary computer resource suitable to serve as a redundant resource corresponding to said at least one primary computer resource based on the device information and the topology information, said at least one secondary computer resource including at least one secondary processor device and at least one portion of storage implemented in at least one secondary storage device; and
computer readable program code means for assigning said at least one secondary computer resource as a redundant resource corresponding to said at least one primary computer resource.
22. A system for a management server to establishing redundant computer resources in a system including a plurality of processor devices and a plurality of storage devices, the processor devices, the storage devices and the management server being connected via a network, said system comprising:
means for storing device information relating to the processor devices and the storage devices and topology information relating to topology of the network, the device information including at least software information thereon;
means for identifying at least one primary computer resource, said at least one primary computer resource including at least one primary processor device and at least one portion of storage implemented in at least one primary storage device;
means for selecting at least one secondary computer resource suitable to serve as a redundant resource corresponding to said at least one primary computer resource based on the device information and the topology information, said at least one secondary computer resource including at least one secondary processor device and at least one portion of storage implemented in at least one secondary storage device; and
means for assigning said at least one secondary computer resource as a redundant resource corresponding to said at least one primary computer resource.
23. A method for a management server to establish redundant computer resources in a system including a plurality of processor devices and a plurality of storage devices, the processor devices, the storage devices and the management server being connected via a network, said method comprising:
storing device information relating to the processor devices and the storage devices and topology information relating to topology of the network;
identifying at least one primary computer resource, said at least one primary computer resource including at least one primary processor device and at least one portion of storage implemented in at least one primary storage device, a cluster software being installed in the at least one primary processor device;
selecting at least one secondary computer resource suitable to serve as a redundant resource corresponding to said at least one primary computer resource based on at least one user-specified policy, the device information and the topology information, said at least one secondary computer resource including at least one secondary processor device and at least one portion of storage implemented in at least one secondary storage device;
if the cluster software is not installed in the at least one secondary processor device,
installing the cluster software in the at least one secondary processor device;
turning the at least one secondary processor device into a member of a cluster which said at least one primary processor device is a member of; and
assigning said at least one secondary computer resource as a redundant resource corresponding to said at least one primary computer resource.
US10/387,188 2003-03-11 2003-03-11 Method and apparatus for seamless management for disaster recovery Abandoned US20040181707A1 (en)

Priority Applications (9)

Application Number Priority Date Filing Date Title
US10/387,188 US20040181707A1 (en) 2003-03-11 2003-03-11 Method and apparatus for seamless management for disaster recovery
JP2003428626A JP4432488B2 (en) 2003-03-11 2003-12-25 Method and apparatus for seamless management of disaster recovery
US11/228,859 US7191358B2 (en) 2003-03-11 2005-09-16 Method and apparatus for seamless management for disaster recovery
US11/471,118 US7290167B2 (en) 2003-03-11 2006-06-19 Method and apparatus for seamless management for disaster recovery
US11/904,061 US7661019B2 (en) 2003-03-11 2007-09-25 Method and apparatus for seamless management for disaster recovery
US12/652,408 US7865768B2 (en) 2003-03-11 2010-01-05 Method and apparatus for seamless management for disaster recovery
US12/955,053 US8103901B2 (en) 2003-03-11 2010-11-29 Method and apparatus for seamless management for disaster recovery
US13/346,924 US8412977B2 (en) 2003-03-11 2012-01-10 Method and apparatus for seamless management for disaster recovery
US13/783,487 US9104741B2 (en) 2003-03-11 2013-03-04 Method and apparatus for seamless management for disaster recovery

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/387,188 US20040181707A1 (en) 2003-03-11 2003-03-11 Method and apparatus for seamless management for disaster recovery

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US11/228,859 Continuation US7191358B2 (en) 2003-03-11 2005-09-16 Method and apparatus for seamless management for disaster recovery
US11/471,118 Continuation US7290167B2 (en) 2003-03-11 2006-06-19 Method and apparatus for seamless management for disaster recovery

Publications (1)

Publication Number Publication Date
US20040181707A1 true US20040181707A1 (en) 2004-09-16

Family

ID=32961845

Family Applications (8)

Application Number Title Priority Date Filing Date
US10/387,188 Abandoned US20040181707A1 (en) 2003-03-11 2003-03-11 Method and apparatus for seamless management for disaster recovery
US11/228,859 Expired - Fee Related US7191358B2 (en) 2003-03-11 2005-09-16 Method and apparatus for seamless management for disaster recovery
US11/471,118 Expired - Fee Related US7290167B2 (en) 2003-03-11 2006-06-19 Method and apparatus for seamless management for disaster recovery
US11/904,061 Expired - Fee Related US7661019B2 (en) 2003-03-11 2007-09-25 Method and apparatus for seamless management for disaster recovery
US12/652,408 Expired - Fee Related US7865768B2 (en) 2003-03-11 2010-01-05 Method and apparatus for seamless management for disaster recovery
US12/955,053 Expired - Fee Related US8103901B2 (en) 2003-03-11 2010-11-29 Method and apparatus for seamless management for disaster recovery
US13/346,924 Expired - Fee Related US8412977B2 (en) 2003-03-11 2012-01-10 Method and apparatus for seamless management for disaster recovery
US13/783,487 Expired - Fee Related US9104741B2 (en) 2003-03-11 2013-03-04 Method and apparatus for seamless management for disaster recovery

Family Applications After (7)

Application Number Title Priority Date Filing Date
US11/228,859 Expired - Fee Related US7191358B2 (en) 2003-03-11 2005-09-16 Method and apparatus for seamless management for disaster recovery
US11/471,118 Expired - Fee Related US7290167B2 (en) 2003-03-11 2006-06-19 Method and apparatus for seamless management for disaster recovery
US11/904,061 Expired - Fee Related US7661019B2 (en) 2003-03-11 2007-09-25 Method and apparatus for seamless management for disaster recovery
US12/652,408 Expired - Fee Related US7865768B2 (en) 2003-03-11 2010-01-05 Method and apparatus for seamless management for disaster recovery
US12/955,053 Expired - Fee Related US8103901B2 (en) 2003-03-11 2010-11-29 Method and apparatus for seamless management for disaster recovery
US13/346,924 Expired - Fee Related US8412977B2 (en) 2003-03-11 2012-01-10 Method and apparatus for seamless management for disaster recovery
US13/783,487 Expired - Fee Related US9104741B2 (en) 2003-03-11 2013-03-04 Method and apparatus for seamless management for disaster recovery

Country Status (2)

Country Link
US (8) US20040181707A1 (en)
JP (1) JP4432488B2 (en)

Cited By (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050028025A1 (en) * 2003-07-08 2005-02-03 Zalewski Stephen H. Method and apparatus for creating a storage pool by dynamically mapping replication schema to provisioned storage volumes
US20050149927A1 (en) * 2002-03-22 2005-07-07 Toyota Jidosha Kabushiki Kaisha Task management device and method, operation judgment device and method, and program to be judged
US20050193244A1 (en) * 2004-02-04 2005-09-01 Alacritus, Inc. Method and system for restoring a volume in a continuous data protection system
US20050246388A1 (en) * 2003-07-02 2005-11-03 Satoshi Yamatake Image database system
DE102004062292A1 (en) * 2004-12-23 2006-07-13 Fujitsu Siemens Computers Gmbh Method for ensuring the availability of data on local mass storage devices
US20070180314A1 (en) * 2006-01-06 2007-08-02 Toru Kawashima Computer system management method, management server, computer system, and program
US20070186213A1 (en) * 2004-03-31 2007-08-09 Toyota Jidosha Kabushiki Kaisha Task execution system
US20070234294A1 (en) * 2006-02-23 2007-10-04 International Business Machines Corporation Debugging a high performance computing program
US20070234115A1 (en) * 2006-04-04 2007-10-04 Nobuyuki Saika Backup system and backup method
US20070260909A1 (en) * 2006-04-13 2007-11-08 Archer Charles J Computer Hardware Fault Administration
US7315965B2 (en) * 2004-02-04 2008-01-01 Network Appliance, Inc. Method and system for storing data using a continuous data protection system
US7325159B2 (en) * 2004-02-04 2008-01-29 Network Appliance, Inc. Method and system for data recovery in a continuous data protection system
US20080259816A1 (en) * 2007-04-19 2008-10-23 Archer Charles J Validating a Cabling Topology in a Distributed Computing System
US20090037773A1 (en) * 2007-08-02 2009-02-05 Archer Charles J Link Failure Detection in a Parallel Computer
US7558858B1 (en) 2005-08-31 2009-07-07 At&T Intellectual Property Ii, L.P. High availability infrastructure with active-active designs
US7567993B2 (en) 2002-12-09 2009-07-28 Netapp, Inc. Method and system for creating and using removable disk based copies of backup data
US7650533B1 (en) 2006-04-20 2010-01-19 Netapp, Inc. Method and system for performing a restoration in a continuous data protection system
US7661012B2 (en) 2005-12-01 2010-02-09 International Business Machines Corporation Spare device management
US7720817B2 (en) 2004-02-04 2010-05-18 Netapp, Inc. Method and system for browsing objects on a protected volume in a continuous data protection system
US7752401B2 (en) 2006-01-25 2010-07-06 Netapp, Inc. Method and apparatus to automatically commit files to WORM status
US7774610B2 (en) 2004-12-14 2010-08-10 Netapp, Inc. Method and apparatus for verifiably migrating WORM data
US7783606B2 (en) 2004-02-04 2010-08-24 Netapp, Inc. Method and system for remote data recovery
US20100232288A1 (en) * 2009-03-10 2010-09-16 Coatney Susan M Takeover of a Failed Node of a Cluster Storage System on a Per Aggregate Basis
US20100325477A1 (en) * 2007-06-13 2010-12-23 Hitachi, Ltd. I/o device switching method
US7882081B2 (en) 2002-08-30 2011-02-01 Netapp, Inc. Optimized disk repository for the storage and retrieval of mostly sequential data
US20110035633A1 (en) * 2003-08-04 2011-02-10 At&T Intellectual Property I, L.P. System and method to identify devices employing point-to-point-over ethernet encapsulation
US7904679B2 (en) 2004-02-04 2011-03-08 Netapp, Inc. Method and apparatus for managing backup data
US20110078494A1 (en) * 2009-09-29 2011-03-31 Hitachi, Ltd. Management method and system for managing replication by taking into account cluster
US7937546B2 (en) 2003-12-19 2011-05-03 Hitachi, Ltd. Data duplication control method
US8024172B2 (en) 2002-12-09 2011-09-20 Netapp, Inc. Method and system for emulating tape libraries
US8028135B1 (en) 2004-09-01 2011-09-27 Netapp, Inc. Method and apparatus for maintaining compliant storage
US8145838B1 (en) 2009-03-10 2012-03-27 Netapp, Inc. Processing and distributing write logs of nodes of a cluster storage system
US8261125B2 (en) 2009-04-29 2012-09-04 Net App. Inc. Global write-log device for managing write logs of nodes of a cluster storage system
US20160062836A1 (en) * 2014-08-29 2016-03-03 Netapp, Inc. Reconciliation in sync replication
US20160085645A1 (en) * 2014-09-19 2016-03-24 Netapp Inc. Cluster-wide service agents
US20170060975A1 (en) * 2015-08-25 2017-03-02 International Business Machines Corporation Orchestrated disaster recovery
US20180165166A1 (en) * 2016-12-14 2018-06-14 Nutanix, Inc. Maintaining high availability during n-node failover

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040181707A1 (en) * 2003-03-11 2004-09-16 Hitachi, Ltd. Method and apparatus for seamless management for disaster recovery
US20050091353A1 (en) * 2003-09-30 2005-04-28 Gopisetty Sandeep K. System and method for autonomically zoning storage area networks based on policy requirements
US7500000B2 (en) * 2003-12-17 2009-03-03 International Business Machines Corporation Method and system for assigning or creating a resource
US8020034B1 (en) * 2004-03-12 2011-09-13 Microsoft Corporation Dependency filter object
US7778984B2 (en) * 2004-11-19 2010-08-17 Microsoft Corporation System and method for a distributed object store
JP5031195B2 (en) * 2005-03-17 2012-09-19 株式会社日立製作所 Storage management software and grouping method
US20060218436A1 (en) * 2005-03-25 2006-09-28 Dell Products L.P. System, method and software using a RAID device driver as backup for a RAID adapter
US7523273B2 (en) * 2005-05-05 2009-04-21 International Business Machines Corporation Autonomic storage provisioning to enhance storage virtualization infrastructure availability
US7536426B2 (en) * 2005-07-29 2009-05-19 Microsoft Corporation Hybrid object placement in a distributed storage system
US7934116B2 (en) * 2005-09-30 2011-04-26 Lockheed Martin Corporation Disaster recover/continuity of business adaptive solution framework
US8122108B2 (en) * 2006-05-16 2012-02-21 Oracle International Corporation Database-less leasing
US7661015B2 (en) * 2006-05-16 2010-02-09 Bea Systems, Inc. Job scheduler
US9384103B2 (en) * 2006-05-16 2016-07-05 Oracle International Corporation EJB cluster timer
US20080177907A1 (en) * 2007-01-23 2008-07-24 Paul Boerger Method and system of a peripheral port of a server system
US7734950B2 (en) * 2007-01-24 2010-06-08 Hewlett-Packard Development Company, L.P. Bandwidth sizing in replicated storage systems
US8028136B2 (en) * 2007-03-09 2011-09-27 International Business Machines Corporation Retaining disk identification in operating system environment after a hardware-driven snapshot restore from a snapshot-LUN created using software-driven snapshot architecture
US7836442B2 (en) * 2007-03-15 2010-11-16 Lenovo (Singapore) Pte. Ltd. Out-of-band patch management system
JP2008269171A (en) * 2007-04-18 2008-11-06 Hitachi Ltd Storage system, management server, method for supporting system reconfiguration of storage system, and method for supporting system reconfiguration of management server
US20080270480A1 (en) * 2007-04-26 2008-10-30 Hanes David H Method and system of deleting files from a remote server
US20080270594A1 (en) * 2007-04-27 2008-10-30 Mcjilton Charles M Method and system of separate file storage locations as unified file storage
US8005993B2 (en) 2007-04-30 2011-08-23 Hewlett-Packard Development Company, L.P. System and method of a storage expansion unit for a network attached storage device
TW200844746A (en) * 2007-05-11 2008-11-16 Inventec Corp The method for detecting attached devices order and computer accessible storage media storing program thereof
JP5000457B2 (en) * 2007-10-31 2012-08-15 株式会社日立製作所 File sharing system and file sharing method
JP2009157471A (en) * 2007-12-25 2009-07-16 Hitachi Ltd File sharing system and method of setting file sharing system
ATE543291T1 (en) * 2008-09-04 2012-02-15 Alcatel Lucent DEVICE AND METHOD FOR AUTOMATICALLY DETERMINING A NETWORK ELEMENT TO REPLACE A FAULTY NETWORK ELEMENT
JP5227125B2 (en) 2008-09-24 2013-07-03 株式会社日立製作所 Storage system
JP5172574B2 (en) 2008-09-29 2013-03-27 株式会社日立製作所 Management computer used to build a backup configuration for application data
US8219672B2 (en) * 2009-02-24 2012-07-10 Yu Wang Method and apparatus for distributed backup of computer data
US8688838B2 (en) * 2009-12-14 2014-04-01 Hewlett-Packard Development Company, L.P. Profile management systems
US8856337B2 (en) * 2011-08-16 2014-10-07 Hitachi, Ltd. Method and apparatus of cluster system provisioning for virtual maching environment
US9304879B2 (en) * 2012-03-12 2016-04-05 Os Nexus, Inc. High availability failover utilizing dynamic switch configuration
US9852034B2 (en) 2014-03-24 2017-12-26 International Business Machines Corporation Efficient high availability for a SCSI target over a fibre channel
US20160011944A1 (en) * 2014-07-10 2016-01-14 International Business Machines Corporation Storage and recovery of data objects
WO2016040393A1 (en) * 2014-09-08 2016-03-17 Microsoft Technology Licensing, Llc Application transparent continuous availability using synchronous replication across data stores in a failover cluster
WO2016039784A1 (en) * 2014-09-10 2016-03-17 Hewlett Packard Enterprise Development Lp Determining optimum resources for an asymmetric disaster recovery site of a computer cluster
US10146648B1 (en) * 2016-09-30 2018-12-04 EMC IP Holding Company LLC Preserving disaster recovery protection for a data storage object
US10445295B1 (en) 2017-07-28 2019-10-15 EMC IP Holding Company LLC Task-based framework for synchronization of event handling between nodes in an active/active data storage system
CN111580912A (en) * 2020-05-09 2020-08-25 北京飞讯数码科技有限公司 Display method and storage medium for multi-level structure resource group

Citations (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4686823A (en) * 1986-04-28 1987-08-18 United Technologies Corporation Sliding joint for an annular combustor
US5276887A (en) * 1991-06-06 1994-01-04 Commodore Electronics Limited Bus arbitration system for granting bus access to devices following two-wire bus arbitration protocol and devices following three-wire bus arbitration protocol
US5459857A (en) * 1992-05-15 1995-10-17 Storage Technology Corporation Fault tolerant disk array data storage subsystem
US5511177A (en) * 1991-11-21 1996-04-23 Hitachi, Ltd. File data multiplexing method and data processing system
US5544347A (en) * 1990-09-24 1996-08-06 Emc Corporation Data storage system controlled remote data mirroring with respectively maintained data indices
US5548724A (en) * 1993-03-22 1996-08-20 Hitachi, Ltd. File server system and file access control method of the same
US5737745A (en) * 1992-08-26 1998-04-07 Mitsubishi Denki Kabushiki Kaisha Redundant array of disks with host notification process for improved storage and recovery speed
US5870537A (en) * 1996-03-13 1999-02-09 International Business Machines Corporation Concurrent switch to shadowed device for storage controller and device errors
US5893919A (en) * 1996-09-27 1999-04-13 Storage Computer Corporation Apparatus and method for storing data with selectable data protection using mirroring and selectable parity inhibition
US5933653A (en) * 1996-05-31 1999-08-03 Emc Corporation Method and apparatus for mirroring data in a remote data storage system
US5943688A (en) * 1997-05-29 1999-08-24 International Business Machines Corporation Automated database back-up within a data storage system using removable media
US5999712A (en) * 1997-10-21 1999-12-07 Sun Microsystems, Inc. Determining cluster membership in a distributed computer system
US6035306A (en) * 1997-11-24 2000-03-07 Terascape Software Inc. Method for improving performance of large databases
US6038677A (en) * 1997-03-31 2000-03-14 International Business Machines Corporation Automatic resource group formation and maintenance in a high availability cluster configuration
US6061807A (en) * 1997-06-27 2000-05-09 International Business Machines Corporation Methods systems and computer products for error recovery of endpoint nodes
US6105118A (en) * 1998-02-02 2000-08-15 International Business Machines Corporation System and method for selecting which data copy to read in an information handling system
US6173420B1 (en) * 1997-10-31 2001-01-09 Oracle Corporation Method and apparatus for fail safe configuration
US6195732B1 (en) * 1999-01-22 2001-02-27 Quantum Corp. Storage device capacity management
US6216211B1 (en) * 1997-06-13 2001-04-10 International Business Machines Corporation Method and apparatus for accessing mirrored logical volumes
US6269431B1 (en) * 1998-08-13 2001-07-31 Emc Corporation Virtual storage and block level direct access of secondary storage for recovery of backup data
US20010044807A1 (en) * 1998-07-31 2001-11-22 Steven Kleiman File system image transfer
US6324654B1 (en) * 1998-03-30 2001-11-27 Legato Systems, Inc. Computer network remote data mirroring system
US20020004857A1 (en) * 2000-07-06 2002-01-10 Hiroshi Arakawa Computer system
US20020007445A1 (en) * 1998-06-29 2002-01-17 Blumenau Steven M. Configuring vectors of logical storage units for data storage partitioning and sharing
US6393485B1 (en) * 1998-10-27 2002-05-21 International Business Machines Corporation Method and apparatus for managing clustered computer systems
US6425049B1 (en) * 1999-02-08 2002-07-23 Hitachi, Ltd. Disk array system and method of changing the configuration of the disk array system
US6438705B1 (en) * 1999-01-29 2002-08-20 International Business Machines Corporation Method and apparatus for building and managing multi-clustered computer systems
US20030046602A1 (en) * 2001-09-04 2003-03-06 Hitachi, Ltd. Data storage system
US6597882B1 (en) * 2002-01-28 2003-07-22 Kabushiki Kaisha Toshiba Developing apparatus
US6606643B1 (en) * 2000-01-04 2003-08-12 International Business Machines Corporation Method of automatically selecting a mirror server for web-based client-host interaction
US6633955B1 (en) * 2001-09-27 2003-10-14 Emc Corporation Four way support for dynamic mirror service policy
US6665780B1 (en) * 2000-10-06 2003-12-16 Radiant Data Corporation N-way data mirroring systems and methods for using the same
US20030233518A1 (en) * 2002-06-12 2003-12-18 Hitachi, Ltd. Method and apparatus for managing replication volumes
US20040019822A1 (en) * 2002-07-26 2004-01-29 Knapp Henry H. Method for implementing a redundant data storage system
US6691245B1 (en) * 2000-10-10 2004-02-10 Lsi Logic Corporation Data storage with host-initiated synchronization and fail-over of remote mirror
US20040030851A1 (en) * 1999-12-06 2004-02-12 Richard Ohran Recovery of data using write request copies in delta queue
US20040078397A1 (en) * 2002-10-22 2004-04-22 Nuview, Inc. Disaster recovery
US20040098637A1 (en) * 2002-11-15 2004-05-20 Duncan Kurt A. Apparatus and method for enhancing data availability by leveraging primary/backup data storage volumes
US6745341B1 (en) * 1999-03-30 2004-06-01 Fujitsu Limited Information processing apparatus having fault detection for multiplex storage devices
US6785678B2 (en) * 2000-12-21 2004-08-31 Emc Corporation Method of improving the availability of a computer clustering system through the use of a network medium link state function
US20040230663A1 (en) * 2003-05-02 2004-11-18 Icu Software, Inc. Sharing photos electronically

Family Cites Families (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US666578A (en) * 1895-01-18 1901-01-22 Jeremiah Evarts Tracy Sewing-machine.
US4686623A (en) 1985-06-07 1987-08-11 International Business Machines Corporation Parser-based attribute analysis
US5276867A (en) 1989-12-19 1994-01-04 Epoch Systems, Inc. Digital data storage system with improved data migration
US5140592A (en) * 1990-03-02 1992-08-18 Sf2 Corporation Disk array system
US5978565A (en) * 1993-07-20 1999-11-02 Vinca Corporation Method for rapid recovery from a network file server failure including method for operating co-standby servers
US6003867A (en) * 1997-06-13 1999-12-21 Unislot, Inc. Reel type slot machine utilizing time-based random game result selection means
US6199074B1 (en) * 1997-10-09 2001-03-06 International Business Machines Corporation Database backup system ensuring consistency between primary and mirrored backup database copies despite backup interruption
US6438708B1 (en) * 1997-11-07 2002-08-20 Hitachi, Ltd. Information processing apparatus that can hold internal information
DE69912662T2 (en) 1998-03-10 2004-05-13 Matsushita Electric Industrial Co., Ltd., Kadoma Device and method for recording data in the remaining capacity of data carriers
US6366987B1 (en) * 1998-08-13 2002-04-02 Emc Corporation Computer data storage physical backup and logical restore
US6148414A (en) * 1998-09-24 2000-11-14 Seek Systems, Inc. Methods and systems for implementing shared disk array management functions
US6542961B1 (en) * 1998-12-22 2003-04-01 Hitachi, Ltd. Disk storage system including a switch
US6721794B2 (en) 1999-04-01 2004-04-13 Diva Systems Corp. Method of data management for efficiently storing and retrieving data to respond to user access requests
US20040030768A1 (en) 1999-05-25 2004-02-12 Suban Krishnamoorthy Unified system and method for downloading code to heterogeneous devices in distributed storage area networks
US6792557B1 (en) * 1999-10-22 2004-09-14 Hitachi, Ltd. Storage area network system
US6618819B1 (en) * 1999-12-23 2003-09-09 Nortel Networks Limited Sparing system and method to accommodate equipment failures in critical systems
US6564336B1 (en) * 1999-12-29 2003-05-13 General Electric Company Fault tolerant database for picture archiving and communication systems
JP3768775B2 (en) * 2000-04-27 2006-04-19 三菱電機株式会社 Backup apparatus and backup method
US7054943B1 (en) * 2000-04-28 2006-05-30 International Business Machines Corporation Method and apparatus for dynamically adjusting resources assigned to plurality of customers, for meeting service level agreements (slas) with minimal resources, and allowing common pools of resources to be used across plural customers on a demand basis
WO2001084338A2 (en) 2000-05-02 2001-11-08 Sun Microsystems, Inc. Cluster configuration repository
US6728897B1 (en) * 2000-07-25 2004-04-27 Network Appliance, Inc. Negotiating takeover in high availability cluster
US7278142B2 (en) * 2000-08-24 2007-10-02 Veritas Operating Corporation Dynamic computing environment using remotely allocable resources
US7082521B1 (en) * 2000-08-24 2006-07-25 Veritas Operating Corporation User interface for dynamic computing environment using allocateable resources
US6694447B1 (en) * 2000-09-29 2004-02-17 Sun Microsystems, Inc. Apparatus and method for increasing application availability during a disaster fail-back
US6654912B1 (en) * 2000-10-04 2003-11-25 Network Appliance, Inc. Recovery of file system data in file servers mirrored file system volumes
US7027412B2 (en) * 2000-11-10 2006-04-11 Veritas Operating Corporation System for dynamic provisioning of secure, scalable, and extensible networked computer environments
US8631103B1 (en) * 2000-11-10 2014-01-14 Symantec Operating Corporation Web-based administration of remote computing environments via signals sent via the internet
JP2002222061A (en) * 2001-01-25 2002-08-09 Hitachi Ltd Method for setting storage area, storage device, and program storage medium
AU2002306495A1 (en) * 2001-02-13 2002-08-28 Candera, Inc. Storage virtualization and storage management to provide higher level storage services
US6901446B2 (en) * 2001-02-28 2005-05-31 Microsoft Corp. System and method for describing and automatically managing resources
US6985983B2 (en) * 2001-03-01 2006-01-10 Hewlett-Packard Development Company, L.P. Translating device adapter having a common command set for interfacing multiple types of redundant storage devices to a host processor
US20020133539A1 (en) * 2001-03-14 2002-09-19 Imation Corp. Dynamic logical storage volumes
WO2003003211A1 (en) 2001-06-19 2003-01-09 Asensus Copying procedures including verification in data networks
US7155463B1 (en) * 2001-09-20 2006-12-26 Emc Corporation System and method for replication of one or more databases
US6976134B1 (en) * 2001-09-28 2005-12-13 Emc Corporation Pooling and provisioning storage resources in a storage network
JP2003162439A (en) * 2001-11-22 2003-06-06 Hitachi Ltd Storage system and control method therefor
US7043619B1 (en) * 2002-01-14 2006-05-09 Veritas Operating Corporation Storage configurator for determining an optimal storage configuration for an application
US7143307B1 (en) * 2002-03-15 2006-11-28 Network Appliance, Inc. Remote disaster recovery and data migration using virtual appliance migration
US6820098B1 (en) * 2002-03-15 2004-11-16 Hewlett-Packard Development Company, L.P. System and method for efficient and trackable asynchronous file replication
US6952792B2 (en) * 2002-03-19 2005-10-04 International Business Machines Corporation Failover system for storage area network
JP2003316522A (en) 2002-04-26 2003-11-07 Hitachi Ltd Computer system and method for controlling the same system
US7130899B1 (en) * 2002-06-14 2006-10-31 Emc Corporation Robust indication processing
US7379990B2 (en) * 2002-08-12 2008-05-27 Tsao Sheng Ted Tai Distributed virtual SAN
DE60327329D1 (en) * 2002-09-10 2009-06-04 Exagrid Systems Inc PRIMARY AND REMOTE DATA BACKUP WITH KNOT-FAILOVER
US7240325B2 (en) * 2002-09-11 2007-07-03 International Business Machines Corporation Methods and apparatus for topology discovery and representation of distributed applications and services
US8019849B1 (en) * 2002-09-13 2011-09-13 Symantec Operating Corporation Server-side storage area network management interface
US7765299B2 (en) 2002-09-16 2010-07-27 Hewlett-Packard Development Company, L.P. Dynamic adaptive server provisioning for blade architectures
US7383410B2 (en) * 2002-12-20 2008-06-03 Symantec Operating Corporation Language for expressing storage allocation requirements
US20040181707A1 (en) * 2003-03-11 2004-09-16 Hitachi, Ltd. Method and apparatus for seamless management for disaster recovery
US8671132B2 (en) * 2003-03-14 2014-03-11 International Business Machines Corporation System, method, and apparatus for policy-based data management
US20040225659A1 (en) 2003-05-09 2004-11-11 O'brien John Storage foundry
US20040243699A1 (en) * 2003-05-29 2004-12-02 Mike Koclanes Policy based management of storage resources
US7191175B2 (en) 2004-02-13 2007-03-13 Attenex Corporation System and method for arranging concept clusters in thematic neighborhood relationships in a two-dimensional visual display space
US7774350B2 (en) * 2004-02-26 2010-08-10 Ebay Inc. System and method to provide and display enhanced feedback in an online transaction processing environment
US7571168B2 (en) * 2005-07-25 2009-08-04 Parascale, Inc. Asynchronous file replication and migration in a storage network

Patent Citations (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4686823A (en) * 1986-04-28 1987-08-18 United Technologies Corporation Sliding joint for an annular combustor
US5544347A (en) * 1990-09-24 1996-08-06 Emc Corporation Data storage system controlled remote data mirroring with respectively maintained data indices
US5276887A (en) * 1991-06-06 1994-01-04 Commodore Electronics Limited Bus arbitration system for granting bus access to devices following two-wire bus arbitration protocol and devices following three-wire bus arbitration protocol
US5511177A (en) * 1991-11-21 1996-04-23 Hitachi, Ltd. File data multiplexing method and data processing system
US5459857A (en) * 1992-05-15 1995-10-17 Storage Technology Corporation Fault tolerant disk array data storage subsystem
US5737745A (en) * 1992-08-26 1998-04-07 Mitsubishi Denki Kabushiki Kaisha Redundant array of disks with host notification process for improved storage and recovery speed
US5548724A (en) * 1993-03-22 1996-08-20 Hitachi, Ltd. File server system and file access control method of the same
US5870537A (en) * 1996-03-13 1999-02-09 International Business Machines Corporation Concurrent switch to shadowed device for storage controller and device errors
US5933653A (en) * 1996-05-31 1999-08-03 Emc Corporation Method and apparatus for mirroring data in a remote data storage system
US5893919A (en) * 1996-09-27 1999-04-13 Storage Computer Corporation Apparatus and method for storing data with selectable data protection using mirroring and selectable parity inhibition
US6038677A (en) * 1997-03-31 2000-03-14 International Business Machines Corporation Automatic resource group formation and maintenance in a high availability cluster configuration
US5943688A (en) * 1997-05-29 1999-08-24 International Business Machines Corporation Automated database back-up within a data storage system using removable media
US6216211B1 (en) * 1997-06-13 2001-04-10 International Business Machines Corporation Method and apparatus for accessing mirrored logical volumes
US6061807A (en) * 1997-06-27 2000-05-09 International Business Machines Corporation Methods systems and computer products for error recovery of endpoint nodes
US5999712A (en) * 1997-10-21 1999-12-07 Sun Microsystems, Inc. Determining cluster membership in a distributed computer system
US6173420B1 (en) * 1997-10-31 2001-01-09 Oracle Corporation Method and apparatus for fail safe configuration
US6035306A (en) * 1997-11-24 2000-03-07 Terascape Software Inc. Method for improving performance of large databases
US6105118A (en) * 1998-02-02 2000-08-15 International Business Machines Corporation System and method for selecting which data copy to read in an information handling system
US6324654B1 (en) * 1998-03-30 2001-11-27 Legato Systems, Inc. Computer network remote data mirroring system
US20020007445A1 (en) * 1998-06-29 2002-01-17 Blumenau Steven M. Configuring vectors of logical storage units for data storage partitioning and sharing
US20010044807A1 (en) * 1998-07-31 2001-11-22 Steven Kleiman File system image transfer
US6269431B1 (en) * 1998-08-13 2001-07-31 Emc Corporation Virtual storage and block level direct access of secondary storage for recovery of backup data
US6393485B1 (en) * 1998-10-27 2002-05-21 International Business Machines Corporation Method and apparatus for managing clustered computer systems
US6195732B1 (en) * 1999-01-22 2001-02-27 Quantum Corp. Storage device capacity management
US6438705B1 (en) * 1999-01-29 2002-08-20 International Business Machines Corporation Method and apparatus for building and managing multi-clustered computer systems
US6425049B1 (en) * 1999-02-08 2002-07-23 Hitachi, Ltd. Disk array system and method of changing the configuration of the disk array system
US6745341B1 (en) * 1999-03-30 2004-06-01 Fujitsu Limited Information processing apparatus having fault detection for multiplex storage devices
US20040030851A1 (en) * 1999-12-06 2004-02-12 Richard Ohran Recovery of data using write request copies in delta queue
US6606643B1 (en) * 2000-01-04 2003-08-12 International Business Machines Corporation Method of automatically selecting a mirror server for web-based client-host interaction
US20020004857A1 (en) * 2000-07-06 2002-01-10 Hiroshi Arakawa Computer system
US6665780B1 (en) * 2000-10-06 2003-12-16 Radiant Data Corporation N-way data mirroring systems and methods for using the same
US6691245B1 (en) * 2000-10-10 2004-02-10 Lsi Logic Corporation Data storage with host-initiated synchronization and fail-over of remote mirror
US6785678B2 (en) * 2000-12-21 2004-08-31 Emc Corporation Method of improving the availability of a computer clustering system through the use of a network medium link state function
US20030046602A1 (en) * 2001-09-04 2003-03-06 Hitachi, Ltd. Data storage system
US6633955B1 (en) * 2001-09-27 2003-10-14 Emc Corporation Four way support for dynamic mirror service policy
US6597882B1 (en) * 2002-01-28 2003-07-22 Kabushiki Kaisha Toshiba Developing apparatus
US20030233518A1 (en) * 2002-06-12 2003-12-18 Hitachi, Ltd. Method and apparatus for managing replication volumes
US20040019822A1 (en) * 2002-07-26 2004-01-29 Knapp Henry H. Method for implementing a redundant data storage system
US20040078397A1 (en) * 2002-10-22 2004-04-22 Nuview, Inc. Disaster recovery
US20040098637A1 (en) * 2002-11-15 2004-05-20 Duncan Kurt A. Apparatus and method for enhancing data availability by leveraging primary/backup data storage volumes
US20040230663A1 (en) * 2003-05-02 2004-11-18 Icu Software, Inc. Sharing photos electronically

Cited By (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8589930B2 (en) 2002-03-22 2013-11-19 Toyota Jidosha Kabushiki Kaisha Determining whether to execute a new task by deleting task objects of existing tasks
US20050149927A1 (en) * 2002-03-22 2005-07-07 Toyota Jidosha Kabushiki Kaisha Task management device and method, operation judgment device and method, and program to be judged
US7882081B2 (en) 2002-08-30 2011-02-01 Netapp, Inc. Optimized disk repository for the storage and retrieval of mostly sequential data
US7567993B2 (en) 2002-12-09 2009-07-28 Netapp, Inc. Method and system for creating and using removable disk based copies of backup data
US8024172B2 (en) 2002-12-09 2011-09-20 Netapp, Inc. Method and system for emulating tape libraries
US20050246388A1 (en) * 2003-07-02 2005-11-03 Satoshi Yamatake Image database system
US7032126B2 (en) * 2003-07-08 2006-04-18 Softek Storage Solutions Corporation Method and apparatus for creating a storage pool by dynamically mapping replication schema to provisioned storage volumes
US20050028025A1 (en) * 2003-07-08 2005-02-03 Zalewski Stephen H. Method and apparatus for creating a storage pool by dynamically mapping replication schema to provisioned storage volumes
US10735254B2 (en) 2003-08-04 2020-08-04 At&T Intellectual Property I, L.P. System and method to identify devices employing point-to-point-over ethernet encapsulation
US8429252B2 (en) * 2003-08-04 2013-04-23 At&T Intellectual Property I, L.P. System and method to identify devices employing point-to-point-over ethernet encapsulation
US20110035633A1 (en) * 2003-08-04 2011-02-10 At&T Intellectual Property I, L.P. System and method to identify devices employing point-to-point-over ethernet encapsulation
US7937546B2 (en) 2003-12-19 2011-05-03 Hitachi, Ltd. Data duplication control method
US20110153968A1 (en) * 2003-12-19 2011-06-23 Yuri Hiraiwa Data duplication control method
US7979654B2 (en) 2004-02-04 2011-07-12 Netapp, Inc. Method and system for restoring a volume in a continuous data protection system
US7720817B2 (en) 2004-02-04 2010-05-18 Netapp, Inc. Method and system for browsing objects on a protected volume in a continuous data protection system
US7315965B2 (en) * 2004-02-04 2008-01-01 Network Appliance, Inc. Method and system for storing data using a continuous data protection system
US20050193244A1 (en) * 2004-02-04 2005-09-01 Alacritus, Inc. Method and system for restoring a volume in a continuous data protection system
US7904679B2 (en) 2004-02-04 2011-03-08 Netapp, Inc. Method and apparatus for managing backup data
US7783606B2 (en) 2004-02-04 2010-08-24 Netapp, Inc. Method and system for remote data recovery
US7325159B2 (en) * 2004-02-04 2008-01-29 Network Appliance, Inc. Method and system for data recovery in a continuous data protection system
US7797582B1 (en) * 2004-02-04 2010-09-14 Netapp, Inc. Method and system for storing data using a continuous data protection system
US20070186213A1 (en) * 2004-03-31 2007-08-09 Toyota Jidosha Kabushiki Kaisha Task execution system
US7900205B2 (en) * 2004-03-31 2011-03-01 Toyota Jidosha Kabushiki Kaisha System and method for executing selected task based on task management table having at least one task and at least two associated processors
US8028135B1 (en) 2004-09-01 2011-09-27 Netapp, Inc. Method and apparatus for maintaining compliant storage
US7774610B2 (en) 2004-12-14 2010-08-10 Netapp, Inc. Method and apparatus for verifiably migrating WORM data
DE102004062292A1 (en) * 2004-12-23 2006-07-13 Fujitsu Siemens Computers Gmbh Method for ensuring the availability of data on local mass storage devices
DE102004062292B4 (en) * 2004-12-23 2008-04-17 Fujitsu Siemens Computers Gmbh Method for ensuring the availability of data in the event of failure of at least one computer of an arrangement having at least two computers and computer arrangement for carrying out the method
US7558858B1 (en) 2005-08-31 2009-07-07 At&T Intellectual Property Ii, L.P. High availability infrastructure with active-active designs
US7661012B2 (en) 2005-12-01 2010-02-09 International Business Machines Corporation Spare device management
US7797572B2 (en) * 2006-01-06 2010-09-14 Hitachi, Ltd. Computer system management method, management server, computer system, and program
US20070180314A1 (en) * 2006-01-06 2007-08-02 Toru Kawashima Computer system management method, management server, computer system, and program
US7752401B2 (en) 2006-01-25 2010-07-06 Netapp, Inc. Method and apparatus to automatically commit files to WORM status
US8516444B2 (en) 2006-02-23 2013-08-20 International Business Machines Corporation Debugging a high performance computing program
US8813037B2 (en) 2006-02-23 2014-08-19 International Business Machines Corporation Debugging a high performance computing program
US20070234294A1 (en) * 2006-02-23 2007-10-04 International Business Machines Corporation Debugging a high performance computing program
US20070234115A1 (en) * 2006-04-04 2007-10-04 Nobuyuki Saika Backup system and backup method
US7487390B2 (en) * 2006-04-04 2009-02-03 Hitachi, Ltd. Backup system and backup method
US7796527B2 (en) * 2006-04-13 2010-09-14 International Business Machines Corporation Computer hardware fault administration
US20070260909A1 (en) * 2006-04-13 2007-11-08 Archer Charles J Computer Hardware Fault Administration
US7650533B1 (en) 2006-04-20 2010-01-19 Netapp, Inc. Method and system for performing a restoration in a continuous data protection system
US20080259816A1 (en) * 2007-04-19 2008-10-23 Archer Charles J Validating a Cabling Topology in a Distributed Computing System
US9330230B2 (en) 2007-04-19 2016-05-03 International Business Machines Corporation Validating a cabling topology in a distributed computing system
US20100325477A1 (en) * 2007-06-13 2010-12-23 Hitachi, Ltd. I/o device switching method
US8156367B2 (en) * 2007-06-13 2012-04-10 Hitachi, Ltd. I/O device switching method
US20090037773A1 (en) * 2007-08-02 2009-02-05 Archer Charles J Link Failure Detection in a Parallel Computer
US7831866B2 (en) 2007-08-02 2010-11-09 International Business Machines Corporation Link failure detection in a parallel computer
US8327186B2 (en) * 2009-03-10 2012-12-04 Netapp, Inc. Takeover of a failed node of a cluster storage system on a per aggregate basis
US8145838B1 (en) 2009-03-10 2012-03-27 Netapp, Inc. Processing and distributing write logs of nodes of a cluster storage system
US20100232288A1 (en) * 2009-03-10 2010-09-16 Coatney Susan M Takeover of a Failed Node of a Cluster Storage System on a Per Aggregate Basis
US8261125B2 (en) 2009-04-29 2012-09-04 Net App. Inc. Global write-log device for managing write logs of nodes of a cluster storage system
US8086895B2 (en) 2009-09-29 2011-12-27 Hitachi, Ltd. Management method and system for managing replication by taking into account cluster storage accessibility a host computer
US20110078494A1 (en) * 2009-09-29 2011-03-31 Hitachi, Ltd. Management method and system for managing replication by taking into account cluster
US20160062836A1 (en) * 2014-08-29 2016-03-03 Netapp, Inc. Reconciliation in sync replication
US9715433B2 (en) * 2014-08-29 2017-07-25 Netapp, Inc. Reconciliation in sync replication
US11068350B2 (en) * 2014-08-29 2021-07-20 Netapp, Inc. Reconciliation in sync replication
US10452489B2 (en) * 2014-08-29 2019-10-22 Netapp Inc. Reconciliation in sync replication
US9514010B2 (en) * 2014-09-19 2016-12-06 Netapp, Inc Cluster-wide service agents
US20160085645A1 (en) * 2014-09-19 2016-03-24 Netapp Inc. Cluster-wide service agents
US10255146B2 (en) 2014-09-19 2019-04-09 Netapp Inc. Cluster-wide service agents
US11016864B2 (en) 2014-09-19 2021-05-25 Netapp, Inc. Cluster-wide service agents
US20170060975A1 (en) * 2015-08-25 2017-03-02 International Business Machines Corporation Orchestrated disaster recovery
US10423588B2 (en) * 2015-08-25 2019-09-24 International Business Machines Corporation Orchestrated disaster recovery
US11868323B2 (en) 2015-08-25 2024-01-09 Kyndryl, Inc. Orchestrated disaster recovery
US10552272B2 (en) * 2016-12-14 2020-02-04 Nutanix, Inc. Maintaining high availability during N-node failover
US20180165166A1 (en) * 2016-12-14 2018-06-14 Nutanix, Inc. Maintaining high availability during n-node failover

Also Published As

Publication number Publication date
US8103901B2 (en) 2012-01-24
JP2005011311A (en) 2005-01-13
US20120131297A1 (en) 2012-05-24
JP4432488B2 (en) 2010-03-17
US20080092053A1 (en) 2008-04-17
US20100161560A1 (en) 2010-06-24
US7661019B2 (en) 2010-02-09
US20110173487A1 (en) 2011-07-14
US7191358B2 (en) 2007-03-13
US20130179404A1 (en) 2013-07-11
US8412977B2 (en) 2013-04-02
US7290167B2 (en) 2007-10-30
US20060041777A1 (en) 2006-02-23
US9104741B2 (en) 2015-08-11
US20060248382A1 (en) 2006-11-02
US7865768B2 (en) 2011-01-04

Similar Documents

Publication Publication Date Title
US7290167B2 (en) Method and apparatus for seamless management for disaster recovery
US6757753B1 (en) Uniform routing of storage access requests through redundant array controllers
US6839815B2 (en) System and method for storage on demand service in a global SAN environment
US9407700B2 (en) Intelligent discovery of network information from multiple information gathering agents
US6732104B1 (en) Uniform routing of storage access requests through redundant array controllers
US7376726B2 (en) Storage path control method
US7971089B2 (en) Switching connection of a boot disk to a substitute server and moving the failed server to a server domain pool
US7203730B1 (en) Method and apparatus for identifying storage devices
JP4113352B2 (en) Storage resource operation management method in storage network
US7447939B1 (en) Systems and methods for performing quiescence in a storage virtualization environment
US20050091353A1 (en) System and method for autonomically zoning storage area networks based on policy requirements
US20060168156A1 (en) Hierarchical system configuration method and integrated scheduling method to provide multimedia streaming service on two-level double cluster system
US7694012B1 (en) System and method for routing data
US20080256323A1 (en) Reconfiguring a Storage Area Network
US20030005080A1 (en) Systems and methods for accessing data
JP6149205B2 (en) Data storage device
US7558858B1 (en) High availability infrastructure with active-active designs

Legal Events

Date Code Title Description
AS Assignment

Owner name: HITACHI, LTD, JAPAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:FUJIBAYASHI, AKIRA;REEL/FRAME:013871/0145

Effective date: 20030214

STCB Information on status: application discontinuation

Free format text: EXPRESSLY ABANDONED -- DURING EXAMINATION