Embodiments of this invention will be explained with reference to the attached drawings.
When setting one of the NAS units 10, 12 and 14 as a master NAS unit and the others as slave NAS units, the one having the youngest AL-PA (Arbitrated Loop Physical Address) is selected as a master NAS unit. When designating the selected NAS as a master, the AL-PA of its FC port is set to ‘FE.’ The AL-PA of the FC port of a backup NAS unit is set to ‘FC’ so that it can back up data when a failure occurs in the storage apparatus in a subsystem. Normally, the additional NAS unit 14 is structured as a sub NAS unit to constitute a subsystem.
The NAS units 10, 12 and 14 have storage interfaces 38, 40 and 42, respectively. These storage interfaces 38, 40 and 42 are connected to disk storages 16 or 18 via PCI express busses 44, 46 and 48. The disk storage apparatuses 16 and 18 are each structured having a plurality of clusters. Each cluster has a CPU, cache memory and hard disks. Each cluster transmits/receives information to/from the NAS units and controls access to its hard disks.
The NAS units may alternatively have, as backend ports, cable input/output ports 50, 52, 56, 58 and 60 and the ports 52 and 54 are connected to each other via a PCI express cable 62 and the ports 56 and 58 are connected to each other via a PCI express cable 64, thereby connecting the NAS units 10, 12, and 14 to one another. In this case also, one of the NAS units 10, 12 and 14 is configured as a master and the others are configured as slave or sub NAS units and the master NAS unit collectively manages information for the other NAS units.
In the case where the master NAS unit collectively manages information for the other NAS units, if the NAS unit 10 is a master, the system including the NAS unit 10 and disk storage 16 is set as a master NAS system, the system including NAS unit 12 and disk storage system 16 is set as a subsystem, and the system including the NAS system 14 and disk storage 18 is set as a backup NAS system, and the master NAS system collectively manages the information for these subsystems. Here, the master NAS system collects the information for the subsystems using dedicated commands.
In order to collect information for the subsystems, dedicated SCSI (Small Computer System Interface) commands are used. The master NAS system issues dedicated SCSI commands to the subsystems via the FC loop 36 or PCI cable 62 or 64; and collects responses to these commands, thereby collectively managing the information for the subsystems.
Examples of information added to a dedicated SCSI command include OS information 200, I/O information 202, and NAS hardware information 204, as shown in
The OS information 200 is used for collecting information regarding an OS status (whether the OS operates normally or not), CPU load factor, LAN driver information, and FC driver information. The obtained OS status is used for OS hang-up/system separation; the CPU load factor is used for load balancing; the LAN driver information is used for LAN failure detection; and the FC driver information is used for FC failure detection. The I/O information 202 is used for collecting: an I/O communication destination, e.g., IP address of the host 22; I/O command; I/O data length; and I/O data-storing address. This information is used for collecting information necessary for the other systems to continue I/O. The NAS hardware information 204 is used for collecting information for a main unit housed in a NAS unit, a power supply unit, a LAN board, and an FC board. The obtained information for the main unit is used for system failure detection, the information for the power supply unit is also used for system failure detection, the information for the LAN board is used for LAN failure detection, and the information for the FC board is used for FC failure detection.
In this embodiment, when adding the NAS unit 14 to the existing NAS units 10 and 12 to expand the NAS system, the NAS units are connected to one another by connecting their FC ports 30, 32 and 34 to one another via the FC loop 36; or by connecting the cable input/output 52 and 54 to each other via the PCI express cable 62 and connecting the cable input/output ports 56 and 58 each other via the PCI express cable 64. Thus, the NAS unit 14 can be easily added without restrictions on the data-transfer performance from the LAN 20.
Also, according to this embodiment, because the NAS unit 10 or 12 is set as a master NAS unit, it can collectively manage the information for other NAS units.
Embodiment 2, showing recovery of the NAS system from system failure, is explained below with reference to
In the NAS system according to Embodiment 2, the system including the NAs unit 10 and storage apparatus16 is set as a master NAS system, the system including NAS unit 14 and disk storage apparatus 18 is set as a backup NAS system, the system including the NAS unit 71 and disk storage apparatus 81 is set as a subsystem #1, the system including the NAS unit 72 and disk storage apparatus 82 is set as subsystem #2, and the system including the NAS unit 7n and disk storage apparatus 8n is set as subsystem #n. The FC ports of the respective systems are connected to one another via the FC loop 36; the respective cable input/output ports are serially connected to one another via the PCI express cables 62, 64, 66, . . . and 6n; and the respective LAN ports 24, 28, 91 and 9n are connected to the LAN 20. The NAS units 71 to 7n are structured with the same components as the NAS unit 10 and the disk storage apparatus 81 to 8n are structured with the same components as the disk storage 16. The NAS units 71 to 7n and the disk storage apparatuses 81 to 8n are serially connected to one another via PCI express cables 181, 182 . . . and 18n.
First, in order to collectively manage the information for the subsystems, the CPU in the NAS unit 10 belonging to the master NAS system issues commands to the subsystems via the FC port 30 and FC loop 36 and checks responses to these commands (step S1). Then, the CPU in the NAS unit 10 judges whether the NAS system has already recovered from the port failure (step S2) and if the recovery from the port failure is not complete, it judges whether an FC port failure has occurred (step S3). The CPU in the NAS unit 10 analyzes the OS information 200 attached to the response to the command and, if an FC port failure is detected, it identifies the faulty port based on the OS information 200 (step S4). For example, if a port failure occurs in the subsystem #2, the CPU commands the NAS unit 72 belonging to the subsystem #2 to lock-out and bypass the faulty port (step S5). Then, triggered by the occurrence of the FC port failure, the CPU in the NAS unit 10 updates monitor information (step S6). It also notifies the host 22 that a port is changed, via the LAN 20 from the LAN port 24 (step S7).
Then, the NAS unit 72 belonging to the subsystem #2 notifies, via the LAN 20, the host 22 of the switching of communication targets; and transfers information processed at the time the failure occurred to the NAS unit 14 in the backup NAS system via the FC loop 36. Here, the NAS unit 72 also notifies the host 22 of the fact that the information processed at the time the failure occurred has been transferred to the backup NAS system (step S8). Then, as a step for port failure recovery, the NAS unit 14 in the backup NAS system takes over the ongoing I/O information processing (step S9). During a failure, I/O information processing is performed when, for example, the host 22—a client—writes data in a sub NAS system via the LAN 20. This processing includes retries for commands and I/O information. Then, the NAS unit 72 in the subsystem #2 notifies the NAS unit 10 in the master NAS system that the recovery from the port failure is complete (step S10). This is the end of the recovery from the port failure.
Meanwhile, after the end of the recovery from the port failure, if it is judged in step S2 that the recovery from the port failure is complete, the processing proceeds to step S11 where the NAS unit 10 judges whether the problem in the faulty port has been solved. If the problem has been solved, the NAS unit 10 notifies the host 22 of the port change (step s12). Then, the NAS unit 14 in the backup NAS system notifies the host 22 of the switching of targets (step S13). After that, the NAS unit 14 takes over the I/O information processing the NAS unit 72 was performing, thereby performing the system recovery processing (step S14). Then, the processing for restoring backup data from the NAS unit 14 in the backup NAS system to the disk storage 82 in the subsystem #2 via the LAN 20 or FC loop 36 is performed (step S15). Specifically, the backup data is restored to the disk storage apparatus 82 in the subsystem #2. Then, the processing in this routine is terminated.
According to Embodiment 2, when an FC failure occurs, the faulty port is locked out and bypassed so ongoing processing can continue. Accordingly, even if an FC failure occurs, the information for the subsystems can be collectively managed. Also, even if an FC failure occurs, the information processed at the time the failure occurred is saved in (transferred to) a backup NAS system and later, when the problem in the faulty port has been solved the data stored in the backup NAS system is restored to the original subsystem (the subsystem recovered from the FC failure) so that it can be recovered completely from the FC failure.
Next, recovery processing performed when a LAN failure (including port failure, driver failure, and logical hardware failure) occurs is explained with reference to the flowchart in
Meanwhile, when the recovery from the LAN failure is complete, it is judged in step S22 that the recovery from the LAN failure is complete and the NAS unit 10 judges whether the problem in the faulty LAN has been solved (step S30). Then, the NAS unit 10 notifies the host 22 of the change of port (step S31), and the NAS unit 14 in the backup NAS system notifies the host 22 of the switching of the IP address (step S32). Thereafter, the NAS unit 14 in the backup NAS system takes over the ongoing I/O information processing (step S33). Then, the backup data involved in the LAN failure is restored from the NAS unit 14 to the disk storage apparatus 82 in the subsystem #2 and the processing in this routine is ended.
According to
Recovery processing performed when an OS failure occurs will be explained with reference to the flowchart shown in
Meanwhile, when the recovery from the OS failure is complete, it is judged in step S42 that the recovery from an OS failure is complete, and the NAS unit 10 judges whether the problem in the faulty OS has been solved (step S49). If the problem is solved, the NAS unit 10 notifies the host 22 of the change of an IP address/FC target (step S50). Thereafter, the NAS unit 14 in the backup NAS system notifies the system that has recovered, e.g., the subsystem #2, of the change of the IP address/FC target (step S51). Then, the backup NAS system takes over the ongoing I/O processing (step S52). Then, the backup NAS system restores the backup data to the system that has recovered from the failure (step S53) and the processing in this routine is ended.
According to
Load-balancing processing will be explained with reference to the flowchart shown in
Then, the information the system with the OS bearing the concentrated load was processing at that time (backup data) is shared with the backup NAS system. The backup NAS system then processes the distributed information and this processing continues (step S66). Then, the NAS unit 10 monitors the load-balancing status (step S67), judges whether the load concentration has been relieved (step S68), terminates the processing in this routine if the load concentration is not relieved but if it is already relieved, the processing proceeds to step S69 where the NAS unit 10 notifies the host 22 of the change of an IP address/FC target. Then, the backup NAS system continues the ongoing I/O information processing (step S70), and because the load concentration has been relieved, the backup data saved in the backup NAS system is returned to the original system via the FC loop 36 (step S71) and the processing in this routine is then terminated.
According to
Embodiment 3 of this invention will be explained with reference to
When the host 22 reads data from any one of the sub NAS systems, the NAS unit 10 in the master NAS system issues to the FC loop 37 a dedicated command having the # (number) of the access target sub NAS system and the information for the read target data (LUN#, LBA#) attached thereto. When this command is input to the respective disk storage apparatuses via the FC loop 37, the respective disk storage apparatuses process the command using their command devices, access the target data in the sub NAS system, and transfer the data to the master NAS system via the FC loop 37. The master NAS system transmits the transferred data to the host 22—client who asked for the data—via the LAN 20.
According to Embodiment 3, because the disk storage apparatuses 16, 18, and 81 to 8n are loop-connected via the FC loop 37, if one of the sub NAS systems the host 22 intends to read data from goes down, the host 22 still can read the data from the other sub NAS systems. In other words, the data read processing has high reliability.
Embodiment 4 of this invention will be explained with reference to
When the host 22 reads data from one of the sub NAS systems, the NAS unit 10 in the master NAS system issues to the FC loop 37 a dedicated command having the # (number) of the access target sub NAS system and the information for the read target data (LUN#, LBA#) attached thereto. When this command is input to the respective disk storage apparatuses via the FC switch 39, the respective disk storage apparatuses process the command using their command devices, access the target data in the sub NAS system, and transfer the accessed data to the master NAS system via the FC switch 39. The master NAS system transmits the transferred data to the host 22—the client that asked for the data—via the LAN 20.
According to Embodiment 4, because the NAS units 10, 14, and 71 to 7n and the respective disk storage apparatuses 16, 18, and 81 to 8n are connected to one another via the FC switch 39, if one of the sub NAS systems the host 22 intends to read data from goes down, the host 22 still can read the data from the other sub NAS systems. In other words, the data read processing has high reliability.
Incidentally, the foregoing embodiments have been explained for the case where the storage devices are hard disks, but semiconductor memory such as flash memory may also be used as the storage devices.
Number | Date | Country | Kind |
---|---|---|---|
2006-167896 | Jun 2006 | JP | national |