Server system and control method for same
First Claim
1. A server system comprising:
- a plurality of client computers;
a plurality of file sharing servers coupled to the plurality of client computers, and including a processor and a memory; and
a storage apparatus coupled to the plurality of file sharing servers;
wherein the plurality of client computers transmit/receive file data to/from the storage apparatus via the plurality of file sharing servers,wherein the processor provides a plurality of virtual servers controlling the file data from the plurality of client computers,wherein each of the plurality of file sharing servers comprises a manager for the plurality of virtual servers, a virtual file system, a file I/O flow controller and a local file system,wherein the memory has configuration information including I/O amount information for the virtual servers which comprises an ID of the virtual servers, a read amount corresponding to the ID of the virtual servers and a write amount corresponding to the ID of the virtual servers, and I/O amount information for the file data which comprises a file path of the file data, a read amount corresponding to the file path and a write amount corresponding to the file path,statistics information including I/O amount information of one of the virtual servers which comprises a read amount, a write amount, a total read amount and a total write amount, and I/O amount information of the file data which includes a read amount, a write amount, a total read amount and a total write amount, andmobility management information including the ID of the virtual servers and the file path,wherein the virtual file system receives a file access request from the plurality of virtual servers, transmits the file access request to the file I/O flow controller, receives a result of the file access request and transmits the result of the file access request to the plurality of virtual servers,wherein the local file system receives the file access request, retrieves file data of the file access request on the memory and obtains the file data of the file access request from the memory in case that the file data of the file access request is in the memory or from the storage apparatus in case that the file data of the file access request is not in the memory,wherein the file I/O flow controller receives the file access request,determines whether the file access request is a read request or a write request,in case that the file access request is a read request,calculates a read amount per unit time by referring to the statistics information,determines whether the read amount per unit time is larger than a set read amount for the plurality of virtual servers and a set read amount for the file data by referring to the I/O amount information for virtual servers and the statistics information, andhalts the file access request for a predetermined time if the read amount per unit time is larger than the set read amount for the plurality of virtual servers and the set read amount for the file data, in case that the file access request is a write request,calculates a write amount per unit time by referring to the statistics information,determines whether the write amount per unit time is larger than a set write amount for the plurality of virtual servers and a set write amount for the file data by referring to the I/O amount information for virtual servers and the statistics information, andhalts the file access request for predetermined time if the write amount per unit time is larger than the set write amount for the plurality of virtual servers and the set write amount for the file data, andwherein the manager for the plurality of virtual servers, on a regular basis,determines whether an I/O amount of the statistics information as a tolerant I/O amount is larger than an I/O amount of the I/O amount information for each of the plurality of virtual servers by referring to the I/O amount information for virtual servers and the statistics information,determines whether an important file of the determined virtual server is utilized by referring to the mobility management information if the I/O amount of the I/O amount information is larger than the I/O amount of the statistics information, and migrates the determined virtual server to another sharing server.
1 Assignment
0 Petitions
Accused Products
Abstract
The server system includes a server apparatus transmitting and receiving file data based on an access request transmitted from a client apparatus; and a management apparatus managing the server apparatus, wherein the server apparatus includes a plurality of virtual server parts controlling transmission and reception of the data independently for each of the predetermined client apparatuses; a data flow configuration part configuring a data flow for each of the file data transmitted to and received by the virtual server parts based on a command from the management apparatus; and a load control part controlling a data flow for each of the file data to control load of the virtual server parts based on the data flow for each of the file data configured by the data flow configuration part.
-
Citations
2 Claims
-
1. A server system comprising:
-
a plurality of client computers; a plurality of file sharing servers coupled to the plurality of client computers, and including a processor and a memory; and a storage apparatus coupled to the plurality of file sharing servers; wherein the plurality of client computers transmit/receive file data to/from the storage apparatus via the plurality of file sharing servers, wherein the processor provides a plurality of virtual servers controlling the file data from the plurality of client computers, wherein each of the plurality of file sharing servers comprises a manager for the plurality of virtual servers, a virtual file system, a file I/O flow controller and a local file system, wherein the memory has configuration information including I/O amount information for the virtual servers which comprises an ID of the virtual servers, a read amount corresponding to the ID of the virtual servers and a write amount corresponding to the ID of the virtual servers, and I/O amount information for the file data which comprises a file path of the file data, a read amount corresponding to the file path and a write amount corresponding to the file path, statistics information including I/O amount information of one of the virtual servers which comprises a read amount, a write amount, a total read amount and a total write amount, and I/O amount information of the file data which includes a read amount, a write amount, a total read amount and a total write amount, and mobility management information including the ID of the virtual servers and the file path, wherein the virtual file system receives a file access request from the plurality of virtual servers, transmits the file access request to the file I/O flow controller, receives a result of the file access request and transmits the result of the file access request to the plurality of virtual servers, wherein the local file system receives the file access request, retrieves file data of the file access request on the memory and obtains the file data of the file access request from the memory in case that the file data of the file access request is in the memory or from the storage apparatus in case that the file data of the file access request is not in the memory, wherein the file I/O flow controller receives the file access request, determines whether the file access request is a read request or a write request, in case that the file access request is a read request, calculates a read amount per unit time by referring to the statistics information, determines whether the read amount per unit time is larger than a set read amount for the plurality of virtual servers and a set read amount for the file data by referring to the I/O amount information for virtual servers and the statistics information, and halts the file access request for a predetermined time if the read amount per unit time is larger than the set read amount for the plurality of virtual servers and the set read amount for the file data, in case that the file access request is a write request, calculates a write amount per unit time by referring to the statistics information, determines whether the write amount per unit time is larger than a set write amount for the plurality of virtual servers and a set write amount for the file data by referring to the I/O amount information for virtual servers and the statistics information, and halts the file access request for predetermined time if the write amount per unit time is larger than the set write amount for the plurality of virtual servers and the set write amount for the file data, and wherein the manager for the plurality of virtual servers, on a regular basis, determines whether an I/O amount of the statistics information as a tolerant I/O amount is larger than an I/O amount of the I/O amount information for each of the plurality of virtual servers by referring to the I/O amount information for virtual servers and the statistics information, determines whether an important file of the determined virtual server is utilized by referring to the mobility management information if the I/O amount of the I/O amount information is larger than the I/O amount of the statistics information, and migrates the determined virtual server to another sharing server.
-
-
2. A control method for a server system which comprises:
-
a plurality of client computers; a plurality of file sharing servers coupled to the plurality of client computers, and including a processor and a memory; and a storage apparatus coupled to the plurality of file sharing servers; wherein each of the plurality of file sharing servers comprises a manager for a plurality of virtual servers which is provided by the processor and controls file data from the plurality of client computers to the storage apparatus via the plurality of file sharing servers, a virtual file system, a file I/O flow controller and a local file system, wherein the memory has configuration information including I/O amount information for the virtual servers which comprises an ID of the virtual servers, a read amount corresponding to the ID of the virtual servers and a write amount corresponding to the ID of the virtual servers, and I/O amount information for the file data which comprises a file path of the file data, a read amount corresponding to the file path and a write amount corresponding to the file path, statistics information including I/O amount information of one of the virtual servers which comprises a read amount, a write amount, a total read amount and a total write amount, and I/O amount information of the file data which includes a read amount, a write amount, a total read amount and a total write amount, and mobility management information including the ID of the virtual servers and the file path, the control method comprising the steps of; receiving, by the virtual file system, a file access request from the plurality of virtual servers, transmitting, by the virtual file system, the file access request to the file I/O flow controller, receiving, by the virtual file system, a result of the file access request, transmitting, by the virtual file system, the result of the file access request to the plurality of virtual servers, receiving, by the local file system, the file access request, retrieving, by the local file system, file data of the file access request on the memory, obtaining, by the local file system, the file data of the file access request from the memory in case that the file data of the file access is in the memory or from the storage apparatus in case that the file data file access request is not in the memory, receiving, by the file I/O flow controller, the file access request, determining, by the file I/O flow controller, whether the file access request is a read request or a write request, in case that file access request is a read request, calculating, by the file I/O flow controller, a read amount per unit time by referring to the statistics information, determining, by the file I/O flow controller, whether the read amount per unit time is larger than a set read amount for the plurality of virtual servers and a set read amount for the file data by referring to the I/O amount information for virtual servers and the statistics information, and halting, by the file I/O flow controller, the file access request for a predetermined time if the read amount per unit time is larger than the set read amount for the plurality of virtual servers and the set read amount for the file data, in case that file access request is a write request, calculating, by the file I/O flow controller, a write amount per unit time by referring to the statistics information, determining, by the file I/O flow controller, whether the write amount per unit time is larger than a set write amount for the plurality of virtual servers and a set write amount for the file data by referring to the I/O amount information for virtual servers and the statistics information, and halting, by the file I/O flow controller, the file access request for a predetermined time if the write amount per unit time is larger than the set write amount for the plurality of virtual servers and the set write amount for the file data, determining, by the manager for the plurality of virtual servers on a regular basis, whether an I/O amount of the statistics information as a tolerant I/O amount is larger than an I/O amount of the I/O amount information for each of the plurality of virtual servers by referring to the I/O amount information for virtual servers and the statistics information, determining, by the manager for the plurality of virtual servers, whether an important file of the determined virtual server is utilized by referring to the mobility management information if the I/O amount of the I/O amount information is larger than the I/O amount of the statistics information, and migrating, by the manager for the plurality of virtual servers, the determined virtual server to another sharing server.
-
Specification