Patent ID: 7287116
Filing Date: 2007-10-23
Classification: G06F

Abstract:
1. A computer system, comprising: a host; a plurality of storage systems; a virtualization apparatus for connecting the storage systems to the host; and a control computer, connected to said virtualization apparatus, for managing correspondence between storage areas of said storage systems and virtualized storage areas and managing a state of said virtualization apparatus, wherein said virtualization apparatus comprises: a plurality of virtualization servers each having a virtualization server function, and a plurality of virtualization switches each, being connected to said host, said storage systems and said virtualization servers and having a virtualization switch function, judges whether data received from said host or said storage systems requires virtualization processing or whether the received data is to be processed by at least one of said virtualization servers, said virtualization switches being separate from said virtualization servers, wherein said virtualization servers each, being connected to said virtualization switches and having a virtualization server function, performs a predetermined processing to data transmitted from said host or said storage systems if said virtualization switches judge that the received data is to be processed by said virtualization server, wherein said predetermined processing of said virtualization server is at least one of (i) a copy process of the received data, (ii) a data striping process of the received data, and (iii) a data mirroring process of the received data, wherein each virtualization switch judges whether the received data from the host or the storage systems is data upon which said virtualization processing is to be performed or whether the received data is data to be processed by at least one of said virtualization servers, and in response to a determination that the received data is data to be processed by at least one of said virtualization servers, transfers the received data to said at least one of said virtualization servers, wherein, if one of said virtualization switches or one of said virtualization servers has a failure, then another virtualization switch of said virtualization switches or another virtualization server of said virtualization servers in which a failure has not occurred performs said virtualization switch function or said virtualization server function instead of said one of said virtualization switches or said one of said virtualization servers in which the failure occurred by changing to a new access route of said another virtualization switch or said another virtualization server in which a failure has not occurred from an old access route of said one of said virtualization switches or said one of said virtualization servers in which the failure occurred, wherein the new access route of said another virtualization switch or said another virtualization server in which a failure has not occurred is determined based on information about said one of said virtualization switches or said one of said virtualization servers in which the failure occurred, wherein each virtualization server includes a memory which has stored therein a device state control table which stores information of the state of a load on said virtualization server, and monitoring means for monitoring the state of a load on said virtualization server and updating said information of the state of a load on said virtualization server stored in said device state control table when the state of the load on said virtualization server changes, wherein each virtualization switch includes a memory which has stored therein a device state control table which stores information of the state of a load on said virtualization switch, and monitoring means for monitoring the state of the load on said virtualization switch and updating said information of the state of a load on said virtualization switch stored in said device state control table when the state of the load on said virtualization switch changes, wherein said control computer includes a memory which has stored therein a server state control table which stores in corresponding relation for each virtualization server an identifier (ID) of said virtualization server, information of the state of said virtualization server and information of the state of a load on said virtualization server, and a switch state control table which stores in corresponding relation for each virtualization switch an ID of said virtualization switch, information of the state of said virtualization switch and information of the state of a load on said virtualization switch, and wherein said control computer monitors the state of the load on each of said virtualization servers and said virtualization switches by sending an inquiry to said each of said virtualization servers and said virtualization switches, which in response to said inquiry, obtains said information of the state of the load on said each of said virtualization servers and said virtualization switches from said device state control table and sends said information of the state of the load on said each of said virtualization servers and said virtualization switches to said control computer, and by storing said information of the state of the load on said each of said virtualization servers and said virtualization switches received from said each of said virtualization servers and said virtualization switches in said server state control table or said switch state control table.