WO2016170632A1 - 計算機及び電源制御方法 - Google Patents

計算機及び電源制御方法 Download PDF

Info

Publication number
WO2016170632A1
WO2016170632A1 PCT/JP2015/062291 JP2015062291W WO2016170632A1 WO 2016170632 A1 WO2016170632 A1 WO 2016170632A1 JP 2015062291 W JP2015062291 W JP 2015062291W WO 2016170632 A1 WO2016170632 A1 WO 2016170632A1
Authority
WO
WIPO (PCT)
Prior art keywords
computer
storage device
data
power
computer node
Prior art date
Application number
PCT/JP2015/062291
Other languages
English (en)
French (fr)
Inventor
定広 杉本
紀夫 下薗
Original Assignee
株式会社日立製作所
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
Application filed by 株式会社日立製作所 filed Critical 株式会社日立製作所
Priority to PCT/JP2015/062291 priority Critical patent/WO2016170632A1/ja
Publication of WO2016170632A1 publication Critical patent/WO2016170632A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers

Definitions

  • the present invention relates to a computer and a power supply control method, and is suitably applied to a computer and a power supply control method for controlling power supply in a distributed storage system.
  • SAN Storage Area Network
  • NAS Network Attached Storage
  • NFS Network Attached Storage
  • Server SAN a technology for sharing a storage device (DAS: Direct Attached Storage) installed in a plurality of computer nodes between computer nodes without requiring a dedicated storage device.
  • DAS Direct Attached Storage
  • An apparatus equipped with such a technique is called Server SAN.
  • the above-mentioned Server SAN has a main advantage of reducing the purchase cost by comprising a general-purpose computer node and DAS. Another advantage is that latency is reduced by accessing data without going through a network during normal times.
  • Patent Document 1 discloses a technique related to the above Server SAN, and describes that a shared storage is configured using a storage device including a DAS in a virtualized computer environment. It is conceivable to add Server SAN when the computer system resources are insufficient. However, since Server SAN is a device that has both computing capabilities and storage capabilities, the computing capabilities will depend on the purpose of adding resources. Or any of the storage capabilities may be excessive.
  • Patent Document 2 the operating status of a computer is monitored, and the power of the computer is turned on based on the obtained operating information.
  • a technique for turning on or off is disclosed. Further, in the above Server SAN, even if the storage capacity is excessive, the storage needs to be energized at all times because there is a possibility of data access. On the other hand, when the calculation function is excessive, power saving can be realized by turning off the power of the computer resources.
  • the Server SAN is a single case, the current Server SAN cannot manage the power supply of the computer and the storage individually. Therefore, when some computers are shut down to save power, they are stored in the storage device from another computer or virtual machine (VM) sharing the storage device installed in the computer whose power is turned off. There was a problem that data could not be read and written.
  • VM virtual machine
  • the present invention has been made in consideration of the above points, and intends to propose a computer and a power supply control method capable of achieving both power saving and data access maintenance in a Server SAN environment.
  • a computer connected to another computer, which controls a central processing unit, a storage device accessed from the other computer, and power supply of the entire computer.
  • a first power supply unit that supplies power to the central processing unit; and a second power supply unit that supplies power to the storage device, wherein the central processing unit stores control information of the storage device
  • the power supply of the entire computer is shut off, and the second power supply means has access to the storage device from the other computer in a state where the power supply of the entire computer is shut off.
  • a computer is provided that supplies power to the storage device.
  • the present invention provides a power control method in a computer connected to another computer, the computer including a central processing unit, a storage device accessed from the other computer, and the computer A first power supply unit that supplies power to the central processing unit that controls power supply of the entire computer; and a second power supply unit that supplies power to the storage device, the central processing unit comprising: Transmitting the control information of the storage device to the other computer, the step of the central processing unit shutting off the power source of the whole computer, and the second power supply means shutting off the power source of the whole computer.
  • a step of supplying power to the storage device and responding to an access request from the other computer Characterized in that it comprises the steps of: inputting and outputting data stored in the storage device, the power control method is provided.
  • 6 is a timing chart showing a communication sequence in the read processing according to the embodiment. It is a timing chart which shows the sequence of communication in the write processing concerning the embodiment. It is a timing chart which shows the sequence of communication in the write processing concerning the embodiment. It is a flowchart which shows the shutdown process of the computer node concerning the embodiment.
  • FIG. 1 shows a configuration of an information processing system according to this embodiment.
  • a computer node 100A and a computer node 100B (hereinafter, the computer node 100A and the computer node 100B may be collectively referred to as a computer node 100) are connected to a network 200.
  • the computer node 100 ⁇ / b> A and the computer node 100 ⁇ / b> B are connected to the network 200, but the present invention can also be applied to an embodiment in which a plurality of computer nodes are connected to the network 200.
  • the computer node 100 is a device that does not require a storage-dedicated device and shares a storage device installed in a plurality of computer nodes between the computer nodes.
  • a storage-dedicated device such as a device called Server SAN is applied to the computer node 100 and described.
  • a computer node 100 mainly includes a power supply unit (indicated as PSU in the figure) 120 and a CPU 130, a main memory 110, a nonvolatile memory 141, and an SSD controller 142 that controls the nonvolatile memory.
  • a buffer memory 143 a network interface controller (indicated as NIC in the figure) 144, and a network connection port (indicated as port in the figure) 145.
  • Nonvolatile memory 141 is, for example, a flash memory, a resistance change memory (ReRAM), or a phase change memory (PRAM).
  • the SSD controller 142 is a semiconductor integrated circuit, for example, and includes functional blocks such as a processor core, a memory controller, and a PCI Express interface.
  • the network 200 is, for example, Ethernet (registered trademark) compatible with Power over Ethernet (registered trademark) (PoE).
  • an expansion card is configured by mounting the nonvolatile memory 141, the SSD controller 142, the buffer memory 143, the NIC 144, and the port 145 on one board.
  • This expansion card is hereinafter referred to as NIC-SSD 140.
  • SSD Solid State Drive
  • the NIC-SSD 140 includes, for example, a PCI Express connector, and is connected to the motherboard (main board) of the computer through the connector.
  • CPU 130 and main memory 110 are mounted on the motherboard.
  • a mounting form there are a form that is directly soldered to a motherboard, a form in which a module mounted on a board different from the motherboard is connected to the motherboard, and the like.
  • the PSU 120 converts, for example, an alternating current input from an external alternating current power source connected by a cable into a direct current and transforms it to supply it to a computer.
  • the PSU 120 is connected to a terminal of the motherboard with a cable, and supplies power to each component in the computer through the motherboard.
  • the main memory 110 for example, a storage control program 111 and storage control information are stored.
  • the storage control information includes, for example, a volume node mapping table 112, an intra-node volume mapping table 113, an external drive management table 114, and cache management information 115.
  • a part of the main memory 110 is used as a cache memory area 116 for caching data.
  • the CPU 130 loads and executes the storage control program 111 and reads / writes data stored in the nonvolatile memory 141 while referring to / updating the storage control information.
  • a magnetic disk may be used as a storage medium instead of the nonvolatile memory 141.
  • a method similar to that in this embodiment can be applied, and thus detailed description thereof is omitted.
  • FIG. 2 is a conceptual diagram illustrating the data access method.
  • FIG. 2 shows a case where the power of the computer node 100A is shut down and data stored in the nonvolatile memory 141 of the computer node A is accessed from the computer node B.
  • storage control information necessary for data access specifically, information included in the intra-node volume mapping table 113 is copied to another computer node 100B before shutting down the computer node 100A. After that, the power supply from the PSU 120 to the computer node 100A is stopped, and the computer node 100A is shut down.
  • the storage control information described above includes address mapping information indicating the correspondence between the logical address of the storage area and the physical storage position.
  • FIG. 3 is a conceptual diagram showing the concept of address mapping in this embodiment.
  • the virtual volumes 1 to 3 are composed of a plurality of blocks, and each block is associated with a block included in any storage device in the system.
  • the blocks in the present embodiment may correspond to, for example, a logical block in SCSI one-to-one, or may correspond to a plurality of SCSI logical blocks. For example, 1024 consecutive SCSI logical blocks (512 bytes) may be treated as one block (512 KB).
  • the volume node mapping table 112 indicates to which computer node each virtual volume is stored (Container), and to which computer node each virtual volume is managed (Manager).
  • the intra-node volume mapping table 113 indicates which address (intra-drive LBA) of which storage device (drive) in the computer node is stored in each logical volume.
  • each computer when accessing data included in a certain virtual volume, each computer refers to the volume node mapping table 112 and sends an I / O request to the computer node 100 managing the volume.
  • the computer node 100 that has received the request refers to the intra-node volume mapping table 113 and identifies the storage location of the data.
  • the manager node (computer node 100C) that manages the virtual volume may differ from the container node (computer node 100B) that stores data.
  • the CPU of the Manager node refers to the external drive management table 114, specifies the address of the storage device of the Container node, and accesses the storage device. The specific processing method will be described later in detail.
  • the volume node mapping table 112 is stored in the memory of all computer nodes that access the virtual volume. Alternatively, it may be managed by a representative computer called a metadata server. Alternatively, a volume node mapping table can be made unnecessary by using mapping uniquely determined by calculation such as a consistent hash method.
  • the volume node mapping table 112 is stored in the main memory 110 of each computer node 100.
  • FIG. 4 is a chart showing an example of the intra-node volume mapping table 133.
  • the intra-node volume mapping table 113 holds a combination of a volume number 1131, a size 1132, a drive number 1133, a D-LBA 1134, and an external drive 1135 for each virtual volume.
  • the volume number 1131 indicates a virtual volume number.
  • the size 1132 indicates the size of the virtual volume.
  • the drive number 1133 indicates the number of the drive to which the virtual volume is assigned.
  • D-LBA 1134 indicates the LBA in the drive where the head of the virtual volume is located.
  • the external drive 1135 indicates a flag indicating whether or not the drive to which the virtual volume is assigned is an external drive.
  • the computer node 100 that manages a virtual volume may be different from the computer node 100 that includes a drive to which the virtual volume is allocated. In that case, true is set in the external drive 1135 of the intra-node volume mapping table, and information for identifying the external volume is recorded in the external drive management table 114 described later.
  • the storage area may be allocated in units (chunks) smaller than the virtual volume. In that case, the area may be managed using a mapping table for each chunk.
  • FIG. 5 is a chart showing an example of the external drive management table 114.
  • the external drive management table 114 stores a set of an external drive number 1141, a network address 1142, and a drive number 1143 in an external node.
  • the external drive number 1141 is the same number as the drive number 1133 of the intra-node volume mapping table 113.
  • the network address 1142 is, for example, an IP address, an iSCSI name, or a WWN. In the figure, an example of using an IP address is shown.
  • the intra-node volume mapping table 113 is searched. If the flag of the external drive 1135 is true, the external drive number 1141 that matches the drive number written in the table is searched from the external drive management table 114, and the corresponding network address 1142 and drive number 1143 are acquired. When accessing the data, an I / O request is issued to the network address 1142. At that time, the drive number 1133, LBA, data length, etc. are designated as parameters.
  • FIG. 6 is a chart showing an example of the NVM mapping table 150 managed by the nonvolatile memory 141.
  • FIG. 6 it is premised on control in units of pages and blocks used for general flash memory control.
  • a table suitable for the control method of each memory may be used.
  • the NVM mapping table 150 shown in FIG. 6 is not required. There is also.
  • the flash memory reads and writes data in units called pages.
  • the page size is 8 KB, for example.
  • data cannot be overwritten on a page in which data has been once written, and it is necessary to erase data once before writing new data.
  • the unit of data erasure is generally called a “block”, but here it is called an NVM block for distinction.
  • an NVM block is composed of a plurality of pages, and the size of the NVM block is, for example, 1 MB.
  • One memory chip includes a plurality of NVM blocks.
  • the NIC-SSD 140 in this embodiment provides a logical storage device, that is, a logical unit (LU) to the computer node 100.
  • the computer node 100 requests the NIC-SSD 140 to read / write data by designating an access destination logical address (LBA).
  • LBA access destination logical address
  • the SSD controller 142 calculates a logical page number from the specified LBA.
  • a value obtained by dividing LBA by page size is a logical page number.
  • the NVM mapping table 150 is referred to in order to check the memory chip storing the data, the NVM block number in the chip, and the physical page number in the NVM block from the logical page number.
  • the NVM mapping table 150 in this embodiment includes the logical page number 1501 of each page, the memory chip number 1502 in which the page is stored, the NVM block number 1503, and the physical page number 1504 in the NVM block. Is stored.
  • FIG. 7 shows a data flow in the normal read process.
  • the read request source computer node 100B issues a read request to the data management computer node 100A (STEP 01).
  • the data management computer node 100A that has received the read request issues a read request to the NIC-SSD 140 (STEP 02), and reads data from the NIC-SSD 140 to the main memory (STEP 03). Then, the data read in STEP03 is transmitted to the request source computer node (STEP04).
  • FIG. 8 shows a data flow in a normal write process.
  • the write request source computer node 100B issues a write request to the data management computer node 100A (STEP 11). Subsequently, or after waiting for a transfer preparation response, the data is transmitted (STEP 12).
  • the data management computer node 100A makes a write request to the NIC-SSD 140 (STEP 13), and writes the received data to the NIC-SSD 140 (STEP 14).
  • FIG. 9 shows a data flow in the read process when the computer node holding the data is stopped.
  • the data management computer node 100A that receives the read request is different from the data holding computer node 100C.
  • the computer node 100B that is the read request source issues a read request to the data management computer node 100A (STEP 21).
  • the data management computer node 100A that has received the read request issues a read command to the NIC-SSD 140 of the data holding computer node 100C via the network 200 (STEP 22), and receives data from the NIC-SSD 140 of the data holding computer node 100C. (STEP 23). Then, the data received in STEP 23 is transmitted to the request source computer node 100B (STEP 24).
  • FIG. 10 shows a data flow in the write process when the computer node holding the data is stopped.
  • the data management computer node 100A receiving the write request is different from the data holding computer node 100C.
  • the computer node 100B that is the write request source issues a write request to the data management computer node 100A (STEP 31). Subsequently, or after waiting for a transfer preparation response, the computer node 100B as the write request source transmits data (STEP 32).
  • the data management computer node 100A that has received the write request issues a write command to the NIC-SSD 140 via the network 200 (STEP 33), and transmits the received data to the NIC-SSD 140 (STEP 34).
  • FIG. 11 shows a communication sequence of the request source computer node 100B, the data management computer node 100A, and the NIC-SSD 140 in the read process.
  • the CPU 130 of the request source computer node 100B first refers to the volume node mapping table 112 to identify the computer node (data management computer node) 100A that manages the access destination virtual volume (S101). . Then, a read request is transmitted to the data management computer node 100A specified in step S101 (S102).
  • the data management computer node 100A When the data management computer node 100A receives a read request from the request source computer node 100B in step S102 (S103), the data management computer node 100A first refers to the intra-node volume mapping table 113 and identifies the data holding drive (S104). If the data holding drive identified in step S104 is an external drive, the external drive management table 114 is further referenced to identify the network address and drive number of the external drive.
  • the data management computer node 100A performs cache allocation (S105). Specifically, in step S105, a portion (free area) that does not hold valid data in the cache memory area is allocated to cache the read request target data. If the read target data is already cached in the main memory, the data can be transmitted to the requesting computer node (cache hit). Since this cache hit processing is the same as the processing of a storage system having a general cache, detailed description thereof is omitted.
  • the CPU 130 of the data management computer node 100A transmits a read command to the NIC-SSD 140 (S106).
  • the read command transmission method in step S106 differs depending on whether the transmission destination is an internal drive or an external drive.
  • a read command is transmitted through a bus inside the computer.
  • the contents of the read request (command) are written in the I / O request queue on the main memory, and are written to a specific register of the NIC-SSD 140. Then, the NIC-SSD 140 that has received this register write reads the contents of the command from the main memory.
  • the destination NIC-SSD 140 is an external drive, a read command is transmitted through the network.
  • the SSD controller 142 of the NIC-SSD 140 Upon receiving the read command (S107), the SSD controller 142 of the NIC-SSD 140 analyzes the content of the received command (S108), identifies the read target LBA and data size, and refers to the NVM mapping table 150. Then, the storage position of the read target data is specified (S109).
  • the SSD controller 142 of the NIC-SSD 140 allocates a transfer buffer (S110).
  • a transfer buffer an area (free area) in which valid data is not stored in the buffer memory on the NIC-SSD 140 is allocated for transferring the data.
  • the SSD controller 142 of the NIC-SSD 140 reads data from the nonvolatile memory as a storage medium and stores it in the transfer buffer (S111). Subsequently, the SSD controller 142 of the NIC-SSD 140 transmits data to the requesting data management computer node 100A (S112).
  • step S112 the data transmission method differs depending on whether the NIC-SSD 140 is an internal drive of the data management computer node 100A or an external drive.
  • the SSD controller 142 of the NIC-SSD 140 writes data to the main memory.
  • the NIC-SSD 140 when the NIC-SSD 140 is an external drive, the NIC-SSD 140 reads the data from the transfer buffer, adds a header determined by the communication protocol, and sends the data to the requesting data management computer node 100A via the network. Send. At this time, the data may be divided and sent in a plurality of packets. Alternatively, data transmission may be started before all requested data is stored in the transfer buffer.
  • the SSD controller 142 of the NIC-SSD 140 transmits a normal completion status to the requesting data holding computer node (S115), and releases the buffer (S115). S117).
  • the status transmission method in step S115 is also different for the internal drive and the external drive.
  • the status is written in the I / O response queue in the main memory 110.
  • the CPU 130 may be notified of interruption.
  • the status is transmitted via the network 200.
  • the data management computer node 100A When receiving the status (S116), the data management computer node 100A transmits the data stored in the cache to the requesting computer node 100B (S118).
  • FIG. 12 shows a communication sequence of the request source computer node 100B, the data management computer node 100A, and the NIC-SSD 140 in the write process.
  • FIG. 12 shows a case where the write target NIC-SSD 140 is an internal drive of the data management computer node 100A.
  • a case where the NIC-SSD 140 to be written is an external drive of the data management computer node 100A will be described with reference to FIG.
  • the computer (request source computer node 100B) that writes data first refers to the volume node mapping table 112, and selects the computer node (data management computer node) 100A that manages the virtual volume to be accessed. Specify (S201). Then, a write request is transmitted to the data management computer node 100A specified in step S201 (S202).
  • the data management computer node 100A When the data management computer node 100A receives a write request from the request source computer node 100B in step S202 (S203), the data management computer node 100A first refers to the intra-node volume mapping table 113 and identifies the data holding drive (S204). If the data holding drive identified in step S204 is an external drive, the external drive management table 114 is further referenced to identify the network address and drive number of the external drive.
  • step S205 a portion (free space) that does not hold valid data in the cache memory area is allocated to cache the target data of the write request.
  • the data management computer node 100A transmits Transfer ready indicating that preparation for receiving data is completed to the request source computer (S206).
  • the request source computer node 100B When the request source computer node 100B receives Transfer ready from the data management computer node 100A (S207), it starts data transmission (S208). For example, in step S208, the NIC-SSD 140 reads data from the main memory of the computer, and transmits the read data via the network 200 to the data management computer node 100A.
  • step S210 When the data management computer node 100A receives data from the request source computer node 100B (S209), it transmits a write command to the NIC-SSD 140 (S210).
  • the command transmission method in step S210 is the same as that in the read processing command transmission processing described above (S106), but the command content is different from the read processing.
  • the SSD controller 142 of the NIC-SSD 140 Upon receiving the write command (S211), the SSD controller 142 of the NIC-SSD 140 analyzes the content of the received command (S212), and refers to the NVM mapping table to specify the storage location of the write target data (S213). .
  • the SSD controller 142 of the NIC-SSD 140 allocates a transfer buffer (S214).
  • a transfer buffer an area (free area) in which valid data is not stored in the buffer memory on the NIC-SSD 140 is allocated for transferring the data.
  • the SSD controller 142 of the NIC-SSD 140 starts reading data from the cache area on the main memory 110 into the transfer buffer (S215).
  • the SSD controller 142 of the NIC-SSD 140 reads data from the cache area on the main memory 110 (S216, S217), and writes the data stored in the transfer buffer to the storage medium (S218). At this time, the writing to the storage medium may be started before all the data is stored in the transfer buffer.
  • the SSD controller 142 of the NIC-SSD 140 transmits a normal completion status to the data management computer node 100A (S219). For example, the status is written in the I / O response queue in the main memory 110. At this time, the CPU 130 may be notified of interruption. Thereafter, the SSD controller 142 of the NIC-SSD 140 releases the transfer buffer (S221).
  • the data management computer node 100A When the data management computer node 100A receives the status (S220), the data management computer node 100A transmits the status to the request source computer node 100B (S222, S223), and releases the cache area (S224).
  • the data management computer node 100A may perform status transmission when all data is stored in the cache memory area. Further, the SSD controller 142 of the NIC-SSD 140 may perform status transmission when all data is stored in the transfer buffer.
  • the write processing sequence in the case where the write-target NIC-SSD 140 is the internal drive of the data management computer node 100A has been described above.
  • FIG. 13 shows a communication sequence of the request source computer node 100B, the data management computer node 100A, and the NIC-SSD 140 in the write process.
  • FIG. 13 shows a case where the write-target NIC-SSD 140 is mounted on an external drive, that is, a computer node different from the data management computer node 100A.
  • the internal drive shown in FIG. The transmission method to the NIC-SSD 140 is different.
  • the computer (request source computer node 100B) that writes data first refers to the volume node mapping table 112, and selects a computer node (data management computer node) 100A that manages the virtual volume to be accessed. Specify (S301). Then, a write request is transmitted to the data management computer node 100A identified in step S301 (S302).
  • the data management computer node 100A When the data management computer node 100A receives a write request from the request source computer node 100B in step S202 (S303), the data management computer node 100A first refers to the intra-node volume mapping table 113 and identifies the data holding drive (S304). If the data holding drive identified in step S304 is an external drive, the external drive management table 114 is further referenced to identify the network address and drive number of the external drive.
  • the data management computer node 100A performs cache allocation (S305). Specifically, in step S205, a portion (free space) that does not hold valid data in the cache memory area is allocated to cache the target data of the write request.
  • the data management computer node 100A transmits Transfer ready indicating that the data reception preparation is completed to the request source computer (S306).
  • the request source computer node 100B When the request source computer node 100B receives the transfer ready from the data management computer node 100A (S307), it starts data transmission (S308).
  • the NIC-SSD 140 reads data from the main memory of the computer, and transmits the read data via the network 200 to the data management computer node 100A.
  • the data management computer node 100A When the data management computer node 100A receives data from the request source computer node 100B (S309), it transmits a write command to the NIC-SSD 140 (S310).
  • the SSD controller 142 of the NIC-SSD 140 Upon receiving the write command (S311), the SSD controller 142 of the NIC-SSD 140 analyzes the content of the received command (S312), and refers to the NVM mapping table to specify the storage location of the write target data (S313). .
  • the SSD controller 142 of the NIC-SSD 140 allocates a transfer buffer (S314).
  • a transfer buffer an area (free area) in which valid data is not stored in the buffer memory on the NIC-SSD 140 is allocated for transferring the data.
  • the SSD controller 142 of the NIC-SSD 140 transmits Transfer ready to the data management computer node 100A (S315).
  • the data management computer node 100A When the data management computer node 100A receives Transfer ready (S316), it transmits the data to the NIC-SSD 140 (S317).
  • the NIC-SSD 140 When the NIC-SSD 140 receives data from the data management computer node 100A (S318, S139), it writes the data stored in the transfer buffer to the storage medium (S320). At this time, the writing to the storage medium may be started before all the data is stored in the transfer buffer.
  • the SSD controller 142 of the NIC-SSD 140 transmits a normal completion status to the data management computer node 100A (S321), and releases the transfer buffer (S323).
  • the data management computer node 100A When the data management computer node 100A receives the status (S322), the data management computer node 100A transmits the status to the request source computer node 100B (S324, S325) and releases the cache area (S326).
  • the data management computer node may transmit the status when all the data is stored in the cache memory area. Further, the SSD controller 142 of the NIC-SSD 140 may perform status transmission when all data is stored in the transfer buffer.
  • the write processing sequence when the write-target NIC-SSD 140 is an external drive of the data management computer node 100A has been described above.
  • FIG. 14 is a flowchart showing a shutdown process when the computer node 100 is shut down.
  • the processing of FIG. 14 is performed when a load on the computer cluster is reduced or when a service provision end time has passed, according to an operation of an administrator or a management program, etc.
  • the shutdown process starts.
  • the computer cluster shutdown process includes, for example, stopping an application program, changing clustering software configuration information, migrating a virtual machine, sweeping out unwritten data, or unmounting a file system.
  • shutdown processing of the storage sharing service is performed.
  • the feature of this process is that, after shutting down one computer node, the volume control information is copied from one computer node to another computer node in order to enable data access from the other computer node. .
  • the CPU 130 of the computer node 100 to be shut down first selects a takeover destination node (S401).
  • step S401 for each virtual volume managed by the own node, the computer node 100 that takes over management is selected.
  • Arbitrary criteria can be applied to the method of selecting the computer node 100 that takes over the management. For example, when a virtual machine that has been running on the computer node 100 to be shut down is moved to another node, the virtual node is transferred to the destination node. Management of virtual volumes used by a machine may be moved. Other selection policies include selecting a computer node so that the number of nodes in charge of all nodes is equal, or preferentially selecting a low-load node.
  • the CPU 130 of the computer node 100 transmits the volume control information to the takeover destination computer node (S402). Specifically, a takeover request is transmitted to the takeover destination node for each virtual volume, and a response from the takeover destination node is received.
  • the takeover request message includes the virtual volume number, the size of the virtual volume, the drive number, and the LBA (D-LBA) in the drive in which the first LBA of the virtual volume is stored.
  • the takeover destination computer node that has received the volume control information in step S402 writes the external drive number, the network address of the takeover source computer node (the computer node to be shut down), and the received drive number in the external drive management table 114. At this time, an unassigned arbitrary number is assigned as the external drive number. Then, the received volume number, size, drive number, and D-LBA are added to the intra-node volume mapping table 113, and the external drive flag is set to “true”.
  • volume node mapping update (S403). This is a process of notifying all nodes accessing the volume that the management of the virtual volume has been taken over by another node. Upon receiving this notification, the computer node rewrites the management node 1122 of the virtual volume in the volume node mapping table 112 with the number of the takeover destination node.
  • the computer node 100 to be shut down determines whether or not to move data for each virtual volume (S404). For example, if a virtual machine that frequently reads and writes a certain virtual volume is moved to another computer, etc., and the access frequency from other nodes is expected to increase, it is determined that the data should be moved. To do.
  • step S404 If it is determined in step S404 that data should be moved, the computer node 100 to be shut down performs data movement processing on the virtual volume (S405). Then, a storage area capable of storing the virtual volume is allocated to the migration destination computer node, the container information is updated (S406), and the process of step S407 is executed.
  • the update of the container information means that the drive number, the head LBA, and the virtual volume number of the area are written in the intra-node volume mapping table 113.
  • step S404 If it is determined in step S404 that data should not be moved, the process of step S407 is executed.
  • the dirty cache flushing process in step S407 is a process for writing all dirty data cached in the memory of the computer node 100 to be shut down to the drive. Write data is written to the drive in synchronization with the command from the start of this process to the shutdown, so that no dirty data remains in the memory.
  • the computer node 100 switches the access route (S408). This is because when accessing the storage device stored in the computer node 100 to be shut down from another node, the access source computer node and the NIC-SSD 140 are not accessed via the CPU of the computer node holding the data. This is a process of changing the setting so that data can be read and written by direct communication. Specifically, the network address 1142 in the external drive management table 114 is changed to the address of the NIC-SSD 140, and the drive number 1143 is changed to the logical unit number in the NIC-SSD (usually 0).
  • the power for operating the NIC-SSD 140 with the computer node 100 stopped is supplied via the network 200, but other methods such as the CPU of the computer node 100, It suffices if the power can be supplied by a method capable of controlling power ON / OFF separately from the memory.
  • a power supply cable may be connected from the PSU of the computer node to the NIC-SSD 140 so that the power of the NIC-SSD 140 can be turned on / off independently of the power on / off of the main body side of the computer node 100.
  • FIG. 15 is a block diagram showing a system configuration according to the second embodiment of the present invention.
  • the network card 450 and the SSD 440 are separate expansion cards and are connected to the bus in the computer node 400.
  • the SSD 440 may be a drive having the same shape as a 2.5 inch or 3.5 inch hard disk drive instead of an expansion card.
  • the power supply of the entire computer node 400 is not stopped for power saving, but the power supply to the CPU core and the memory is stopped using, for example, the power saving function of the CPU 430. At this time, the bus controller continues to operate.
  • the configuration and data processing of the computer node 400 are the same as those in the first embodiment, and thus detailed description thereof is omitted.
  • data reading and writing when the CPU core is stopped is performed by communication between the requesting computer node and the SSD 440.
  • the command, data, status, and the like pass through the network 200, the network card 450, and the bus in the computer node 400.
  • the power consumption of the CPU and main memory of the computer node 400 can be reduced.
  • FIG. 16 is a block diagram showing a system configuration according to the third embodiment of the present invention.
  • a RAID controller 541, a sub processor 542, a NIC 543, a port 544, an expander 545, a hard disk drive (denoted as HDD in the figure) 546, and the like are included in the I / O box 540. Installed.
  • the RAID controller 541 defines a RAID group with one or a plurality of HDDs 546, and defines one or a plurality of pool volumes on a storage area provided by one or a plurality of storage devices constituting one RAID group.
  • the sub-processor 542 processes an I / O request transmitted from another computer node while the computer node 500 is stopped, like the SSD controller 142 in the first embodiment.
  • the RAID controller 541 is controlled to send / receive a command to the HDD 546 to read / write data.
  • power for operating the I / O box 540 may be supplied via the network 200 or may be supplied from the PSU 545.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

【課題】Server SAN環境において省電力化とデータアクセスの維持を両立することが可能な計算機及び電源制御方法を提案する。 【解決手段】他の計算機と接続された計算機であって、中央演算装置と、前記他の計算機からアクセスされる記憶装置と、前記計算機全体の電源供給を制御する前記中央演算装置に電源を供給する第1の電源供給手段と、前記記憶装置に電源を供給する第2の電源供給手段と、を備え、前記中央演算装置は、前記記憶装置の制御情報を前記他の計算機に送信した後、前記計算機全体の電源を遮断し、前記第2の電力供給手段は、前記計算機全体の電源が遮断された状態で前記記憶装置に前記他の計算機からのアクセスがあった場合に、前記記憶装置に電源を供給する。

Description

計算機及び電源制御方法
 本発明は、計算機及び電源制御方法に関し、分散型ストレージシステムにおける電源供給を制御する計算機及び電源制御方法に適用して好適なるものである。
 複数の計算機でストレージを共有する場合に、ネットワークに接続したストレージ装置を複数計算機で共有する方式が広く用いられてきた。例えば、Fibre Channelを用いたSAN(Storage Area Network)接続の共有ストレージや、Ethernet(登録商標)接続でNFSやCIFSなどのプロトコルを用いたNAS(Network Attached Storage)などが挙げられる。
 これに対し、ストレージ専用の装置を必要とせず、複数の計算機ノードに搭載された記憶装置(DAS:Direct Attached Storage)を計算機ノード間で共有する技術も知られている。このような技術を搭載した装置は、Server SANと呼ばれている。上記したServer SANは、汎用の計算機ノードとDASで構成することによる購入コストの低減が主な利点である。また、通常時にネットワークを介さずにデータへアクセスすることによるレイテンシの低減なども利点として挙げられる。
 例えば、特許文献1には、上記したServer SANに関する技術が開示されており、仮想化された計算機環境でDASを含む記憶装置を使って共有ストレージを構成することが記載されている。計算機システムのリソースが不足した場合に、Server SANを追加することが考えられるが、Server SANは、計算機能力とストレージ能力の両方を持ち合わせた機器であるため、リソースを追加する目的如何では、計算機能力またはストレージ能力のいずれかが過剰となる場合がある。
 昨今、データセンタでは消費電力の増大が重要な課題となっており、この課題に対し、例えば、特許文献2では、計算機の稼働状況をモニタし、得られた稼働情報に基づいて計算機の電源をONあるいはOFFする技術が開示されている。また、上記したServer SANにおいて、ストレージ能力が過剰な場合でも、データアクセスの可能性があるためストレージは常時通電している必要がある。一方、計算機能力が過剰となる場合には、計算機資源の電源を落とすことにより省電力を実現することができる。
米国特許8601473号明細書 米国特許6795928号明細書
 しかし、Server SANは1個の筐体であるため、現状のServer SANの形態では、計算機とストレージの電源を個別で管理することができない。したがって、省電力化のため一部の計算機をシャットダウンすると、電源が切断された計算機に搭載された記憶装置を共有している別の計算機あるいは仮想マシン(VM)から、当該記憶装置に格納されたデータの読み書きができなくなるという問題があった。
 本発明は以上の点を考慮してなされたもので、Server SAN環境において省電力化とデータアクセスの維持を両立することが可能な計算機及び電源制御方法を提案しようとするものである。
 かかる課題を解決するために本発明においては、他の計算機と接続された計算機であって、中央演算装置と、前記他の計算機からアクセスされる記憶装置と、前記計算機全体の電源供給を制御する前記中央演算装置に電源を供給する第1の電源供給手段と、前記記憶装置に電源を供給する第2の電源供給手段と、を備え、前記中央演算装置は、前記記憶装置の制御情報を前記他の計算機に送信した後、前記計算機全体の電源を遮断し、前記第2の電力供給手段は、前記計算機全体の電源が遮断された状態で前記記憶装置に前記他の計算機からのアクセスがあった場合に、前記記憶装置に電源を供給することを特徴とする、計算機が提供される。
 かかる課題を解決するために本発明においては、他の計算機と接続された計算機における電源制御方法であって、前記計算機は、中央演算装置と、前記他の計算機からアクセスされる記憶装置と、前記計算機全体の電源供給を制御する前記中央演算装置に電源を供給する第1の電源供給手段と、前記記憶装置に電源を供給する第2の電源供給手段と、を備え、前記中央演算装置が、前記記憶装置の制御情報を前記他の計算機に送信するステップと、前記中央演算装置が、前記計算機全体の電源を遮断するステップと、前記第2の電力供給手段が、前記計算機全体の電源が遮断された状態で前記記憶装置に前記他の計算機からのアクセスがあった場合に、前記記憶装置に電源を供給するステップと、前記他の計算機からのアクセス要求に応じて、前記記憶装置に格納されたデータを入出力するステップと、を含むことを特徴とする、電源制御方法が提供される。
 本発明によれば、Server SAN環境において、データアクセスを維持しつつ、計算機の消費電力を削減することが可能となる。
本発明の第1の実施形態に係る情報処理システムの構成を示すブロック図である。 同実施形態にかかるデータアクセス方式について説明する概念図である。 同実施形態にかかるアドレスマッピングの概念を示す概念図である。 同実施形態にかかるノード内ボリュームマッピングテーブルの一例を示す図表である。 同実施形態にかかる外部ドライブ管理テーブルの一例を示す図表である。 同実施形態にかかるNVMマッピングテーブルの一例を示す図表である。 同実施形態にかかる通常時のリード処理におけるデータフローを示す概念図である。 同実施形態にかかる通常時のライト処理におけるデータフローを示す概念図である。 同実施形態にかかる計算機ノードが停止しているときのリード処理におけるデータフローを示す概念図である。 同実施形態にかかる計算機ノードが停止しているときのライト処理におけるデータフローを示す概念図である。 同実施形態にかかるリード処理における通信のシーケンスを示すタイミングチャートである。 同実施形態にかかるライト処理における通信のシーケンスを示すタイミングチャートである。 同実施形態にかかるライト処理における通信のシーケンスを示すタイミングチャートである。 同実施形態にかかる計算機ノードのシャットダウン処理を示すフローチャートである。 本発明の第2の実施形態に係る情報処理システムの構成を示すブロック図である。 本発明の第3の実施形態に係る情報処理システムの構成を示すブロック図である。
 以下図面について、本発明の一実施の形態を詳述する。
(1)第1の実施の形態
(1-1)情報処理システムの構成
 図1は、本実施形態の情報処理システムの構成を示す。図1に示すように、計算機ノード100A及び計算機ノード100B(以降、計算機ノード100A及び計算機ノード100Bを計算機ノード100と総称して説明する場合もある。)がネットワーク200に接続される。図1では、計算機ノード100A及び計算機ノード100Bがネットワーク200に接続されているが、本発明は、複数の計算機ノードがネットワーク200に接続されている実施の形態にも適用できる。
 計算機ノード100は、ストレージ専用の装置を必要とせず、複数の計算機ノードに搭載された記憶装置を計算機ノード間で共有する装置である。以下では、Server SANと呼ばれるこのような装置を計算機ノード100に適用して説明する。
 図1に示すように、計算機ノード100は、主に、電源ユニット(図中PSUと表記)120とCPU130、主記憶(Main memory)110、不揮発性メモリ141、不揮発性メモリを制御するSSDコントローラ142、バッファメモリ143、ネットワークインタフェースコントローラ(図中NICと表記)144、ネットワーク接続ポート(図中ポートと表記)145を備える。
 不揮発性メモリ141は、例えばフラッシュメモリや抵抗変化メモリ(ReRAM)、相変化メモリ(PRAM)である。SSDコントローラ142は、例えば半導体集積回路であり、プロセッサコアやメモリコントローラ、PCI Expressインタフェースなどの機能ブロックを含む。また、ネットワーク200は、例えばPower over Ethernet(登録商標)(PoE)対応のイーサネット(登録商標)である。
 本実施の形態では、図1に示すように、不揮発性メモリ141とSSDコントローラ142、バッファメモリ143、NIC144及びポート145を1枚の基板に搭載して拡張カードを構成する。この拡張カードを、以降NIC-SSD140と称する。SSD(Solid State Drive)は、メモリを記憶媒体とした記憶装置を指す一般的な用語である。NIC-SSD140は、例えばPCI Expressのコネクタを備え、当該コネクタによって計算機のマザーボード(メイン基板)に接続される。
 CPU130および主記憶110は、マザーボードに搭載される。搭載形態としては、マザーボードに直接はんだ付けされる形態や、マザーボードとは別の基板に実装したモジュールを、マザーボードに接続する形態などがある。PSU120は、例えばケーブルで接続された外部の交流電源から入力される交流電流を、直流電流に変換および変圧して計算機に供給する。PSU120は、マザーボードの端子にケーブルで接続され、マザーボードを通して電力を計算機内の各構成要素に供給する。
 主記憶110には、例えばストレージ制御プログラム111と、ストレージ制御情報が格納される。ストレージ制御情報とは、例えばボリュームノードマッピングテーブル112、ノード内ボリュームマッピングテーブル113、外部ドライブ管理テーブル114及びキャッシュ管理情報115が含まれる。また、主記憶110の一部は、データをキャッシュするためのキャッシュメモリ領域116として使用される。
 CPU130は、ストレージ制御プログラム111をロードして実行し、ストレージ制御情報を参照・更新しながら、不揮発性メモリ141に格納されたデータの読み書きを行う。
 なお、不揮発性メモリ141の代わりに磁気ディスクを記憶媒体としてもよい。その場合も本実施の形態と同様の方式を適用することができるため、詳細な説明は省略する。
(1-2)データアクセス方式の詳細
 図2を参照して、本実施形態のデータアクセス方式について説明する。図2は、データアクセス方式について説明する概念図である。図2では、計算機ノード100Aの電源がシャットダウンされて、計算機ノードBから計算機ノードAの不揮発性メモリ141に記憶されているデータにアクセスする場合を示す。
 まず、データアクセスに必要となるストレージ制御情報、具体的にはノード内ボリュームマッピングテーブル113に含まれる情報は、計算機ノード100Aをシャットダウンする前に、別の計算機ノード100Bにコピーしておく。そのうえで、PSU120から計算機ノード100A内への電源供給を止めて、計算機ノード100Aをシャットダウンする。
 シャットダウンされた計算機ノード100Aに搭載された不揮発性メモリ141内のデータを読み書きする必要が生じた場合には、まずポート145から電源を供給する。そしてNIC-SSD140が稼働した状態で、データを読み書きする計算機ノード100BとNIC-SSD140間で通信を確立し、計算機ノード100BからI/O要求を送る。SSDコントローラ142は、NIC144を介してI/O要求を受信し、I/O要求の内容に従ってデータを送信あるいは受信する。
(1-3)各種テーブル
 上記したストレージ制御情報は、記憶領域の論理アドレスと物理的な格納位置との対応関係を示すアドレスマッピング情報を含む。
(1-3-1)アドレスマッピング
 図3を参照して、本実施の形態におけるアドレスマッピングの概念について説明する。図3は、本実施形態におけるアドレスマッピングの概念を示す概念図である。
 図3に示すように、仮想ボリューム1~3は複数のブロックから構成され、各ブロックはシステム内のいずれかの記憶装置に含まれるブロックに対応付けられる。なお、本実施の形態におけるブロックは、例えばSCSIにおける論理ブロックと1対1に対応するとしてもよいし、複数のSCSI論理ブロックに対応するとしてもよい。例えば、連続する1024個のSCSI論理ブロック(512バイト)を1つのブロック(512KB)として扱ってもよい。
 本実施の形態では、2段階のアドレスマッピングが行われる。ボリュームノードマッピングテーブル112は、各仮想ボリュームがどの計算機ノードに格納されているか(Container)と、各仮想ボリュームがどの計算機ノードに管理されているか(Manager)を示す。そして、ノード内ボリュームマッピングテーブル113は、各論理ボリュームが計算機ノード内のどの記憶装置(ドライブ)のどのアドレス(ドライブ内LBA)に格納されているかを示す。
 したがって、ある仮想ボリュームに含まれるデータにアクセスする場合、各計算機はボリュームノードマッピングテーブル112を参照して、当該ボリュームを管理している計算機ノード100にI/O要求を送る。要求を受けた計算機ノード100は、ノード内ボリュームマッピングテーブル113を参照して、当該データの格納位置を特定する。
 なお、図3のボリューム番号303のように、仮想ボリュームを管理するManagerノード(計算機ノード100C)と、データを格納しているContainerノード(計算機ノード100B)とが異なる場合がある。その場合は、ManagerノードのCPUが外部ドライブ管理テーブル114を参照して、Containerノードの記憶装置のアドレスを特定し、当該記憶装置へアクセスする。その具体的な処理方式については後で詳細に説明する。
 ボリュームノードマッピングテーブル112は、仮想ボリュームにアクセスする全計算機ノードのメモリに格納する。または、メタデータサーバと呼ばれる代表の計算機が管理することとしてもよい。または、コンシステントハッシュ法のような計算で一意に決まるマッピングを用いることで、ボリュームノードマッピングテーブルを不要とすることもできる。なお、ボリュームノードマッピングテーブル112は、各計算機ノード100の主記憶110に格納される。
(1-3-2)ボリュームマッピングテーブル
 次に、図4を参照して、ノード内ボリュームマッピングテーブル113について説明する。図4は、ノード内ボリュームマッピングテーブル133の一例を示す図表である。
 図4に示すように、ノード内ボリュームマッピングテーブル113には、仮想ボリュームごとに、ボリューム番号1131、サイズ1132、ドライブ番号1133、D-LBA1134及び外部ドライブ1135の組み合わせが保持される。
 ボリューム番号1131は、仮想ボリュームの番号を示す。サイズ1132は、仮想ボリュームの大きさを示す。ドライブ番号1133は、仮想ボリュームが割り当てられたドライブの番号を示す。D-LBA1134は、仮想ボリュームの先頭が位置するドライブ内のLBAを示す。外部ドライブ1135は、仮想ボリュームが割り当てられたドライブが外部ドライブであるか否かを表すフラグを示す。
 上記したように、仮想ボリュームを管理する計算機ノード100と、その仮想ボリュームが割り当てられたドライブを搭載した計算機ノード100とが異なる場合がある。その場合、ノード内ボリュームマッピングテーブルの外部ドライブ1135にtrueが設定され、外部ボリュームを識別するための情報が後述する外部ドライブ管理テーブル114に記録される。
 なお、記憶領域を仮想ボリュームよりも小さい単位(チャンク)で割り当ててもよい。その場合はチャンクごとのマッピングテーブルを用いて領域を管理するようにしてもよい。
(1-3-3)外部ドライブ管理テーブル
 次に、図5を参照して、外部ドライブ管理テーブル114について説明する。図5は、外部ドライブ管理テーブル114の一例を示す図表である。
 外部ドライブ管理テーブル114には、外部ドライブ番号1141、ネットワークアドレス1142及び外部ノードにおけるドライブ番号1143の組が格納される。
 外部ドライブ番号1141は、ノード内ボリュームマッピングテーブル113のドライブ番号1133と同じ番号である。ネットワークアドレス1142は、例えばIPアドレスやiSCSIネームあるいはWWNである。図中にはIPアドレスを使った場合の例を示す。
 例えば、ある仮想ボリュームが割り当てられた領域を調べる際には、まずノード内ボリュームマッピングテーブル113を検索する。もし外部ドライブ1135のフラグがtrueの場合には、当該テーブルに書かれたドライブ番号と一致する外部ドライブ番号1141を外部ドライブ管理テーブル114から探し、対応するネットワークアドレス1142とドライブ番号1143を取得する。そして、データにアクセスする際には、当該ネットワークアドレス1142に対しI/O要求を発行する。その際に、パラメータとして上記ドライブ番号1133とLBA、データ長などを指定する。
(1-3-4)NVMマッピングテーブル
 次に、図6を参照して、不揮発性メモリ141で管理されるNVMマッピングテーブル150について説明する。図6は、不揮発性メモリ141で管理されるNVMマッピングテーブル150の一例を示す図表である。
 図6の例では、一般的なフラッシュメモリの制御に用いられる、ページおよびブロック単位の制御を前提としている。他の種類のメモリ、例えば抵抗変化メモリや相変化メモリを使用する場合には、各メモリの制御方式に合ったテーブルを使用してもよい。また、書き換え可能回数が多い(耐久性の高い)メモリの場合は、論理アドレスと物理アドレスの対応付けを動的に変更する必要がないため、図6に示すNVMマッピングテーブル150を必要としない場合もある。
 フラッシュメモリは、ページと呼ばれる単位でデータが読み書きされる。ページの大きさは例えば8KBである。フラッシュメモリは、一度データが書き込まれたページにデータを上書きすることはできず、新たなデータを書き込む前に一度データを消去する必要がある。データ消去の単位は一般的に「ブロック」と呼ばれるが、ここでは区別のためNVMブロックと呼ぶ。一般的にNVMブロックは、複数のページで構成され、NVMブロックの大きさは例えば1MBなどである。1つのメモリチップには複数のNVMブロックが含まれる。
 本実施の形態におけるNIC-SSD140は、計算機ノード100に対して論理的な記憶装置すなわち論理ユニット(LU)を提供する。計算機ノード100は、NIC-SSD140に対し、アクセス先の論理アドレス(LBA)を指定してデータの読み書きを要求する。データの読み書き要求を受けたSSDコントローラ142は、指定されたLBAから論理ページ番号を算出する。LBAをページサイズで割った値が論理ページ番号である。さらに、論理ページ番号から、データが格納されたメモリチップ、チップ内のNVMブロック番号、NVMブロック内の物理ページ番号を調べるためにNVMマッピングテーブル150を参照する。
 上記したように、本実施の形態におけるNVMマッピングテーブル150には、各ページの論理ページ番号1501と、当該ページが格納されたメモリチップ番号1502、NVMブロック番号1503及びNVMブロック内の物理ページ番号1504が格納される。
(1-4)データ処理
 次に、図7~図10を参照して、データ処理の概要について説明する。図7~図10において、図中の点線はI/O要求(コマンド)の流れを表し、実線はデータの流れを表す。
 図7は、通常時のリード処理におけるデータフローを示す。図7に示すように、リード要求元の計算機ノード100Bが、データ管理計算機ノード100Aに対してリード要求を発行する(STEP01)。そして、リード要求を受けたデータ管理計算機ノード100Aが、NIC-SSD140にリード要求をして(STEP02)、NIC-SSD140から主記憶にデータを読み出す(STEP03)。そして、STEP03で読みだしたデータを要求元計算機ノードに送信する(STEP04)。
 図8は、通常時のライト処理におけるデータフローを示す。図8に示すように、ライト要求元の計算機ノード100Bが、データ管理計算機ノード100Aに対してライト要求を発行する(STEP11)。続いて、または転送準備応答を待って、データを送信する(STEP12)。データ管理計算機ノード100Aは、NIC-SSD140にライト要求をして(STEP13)、受信したデータをNIC-SSD140に書き込む(STEP14)。
 図9は、データを保持する計算機ノードが停止しているときのリード処理におけるデータフローを示す。
 この場合、リード要求を受けるデータ管理計算機ノード100Aはデータ保持計算機ノード100Cとは異なる。
 リード要求元の計算機ノード100Bが、データ管理計算機ノード100Aに対してリード要求を発行する(STEP21)。リード要求を受けたデータ管理計算機ノード100Aは、ネットワーク200を介して、データ保持計算機ノード100CのNIC-SSD140にリードコマンドを発行し(STEP22)、データ保持計算機ノード100CのNIC-SSD140からデータを受信する(STEP23)。そして、STEP23で受信したデータを要求元計算機ノード100Bに送信する(STEP24)。
 図10は、データを保持する計算機ノードが停止しているときのライト処理におけるデータフローを示す。
 この場合、ライト要求を受けるデータ管理計算機ノード100Aは、データ保持計算機ノード100Cとは異なる。
 ライト要求元の計算機ノード100Bが、データ管理計算機ノード100Aに対してライト要求を発行する(STEP31)。続いて、または転送準備応答を待って、ライト要求元の計算機ノード100Bが、データを送信する(STEP32)。ライト要求を受けたデータ管理計算機ノード100Aは、ネットワーク200を介して、NIC-SSD140にライトコマンドを発行し(STEP33)、受信したデータをNIC-SSD140に送信する(STEP34)。
 次に、図11~図13を参照して、データ処理のシーケンスについて説明する。
 図11は、リード処理における要求元計算機ノード100B、データ管理計算機ノード100A及びNIC-SSD140の通信のシーケンスを示す。
 図11に示すように、要求元計算機ノード100BのCPU130は、まず、ボリュームノードマッピングテーブル112を参照し、アクセス先の仮想ボリュームを管理する計算機ノード(データ管理計算機ノード)100Aを特定する(S101)。そして、ステップS101で特定したデータ管理計算機ノード100Aへリード要求を送信する(S102)。
 データ管理計算機ノード100Aは、ステップS102で要求元計算機ノード100Bからリード要求を受けると(S103)、まず、ノード内ボリュームマッピングテーブル113を参照して、データ保持ドライブを特定する(S104)。ステップS104において特定したデータ保持ドライブが外部ドライブの場合は、さらに、外部ドライブ管理テーブル114を参照して、外部ドライブのネットワークアドレス及びドライブ番号を特定する。
 続いて、データ管理計算機ノード100Aは、キャッシュ割り当てを行う(S105)。具体的に、ステップS105では、キャッシュメモリ領域のうち有効なデータを保持していない部分(空き領域)を、当該リード要求の対象データをキャッシュするために割り当てる。リード対象データが既に主記憶上にキャッシュされている場合には、当該データを要求元の計算機ノードに送信する(キャッシュヒット)ことができる。このキャッシュヒットの処理については、一般的なキャッシュを持つストレージシステムの処理と同様のため詳細な説明は省略する。
 次に、データ管理計算機ノード100AのCPU130は、NIC-SSD140に対してリードコマンドを送信する(S106)。ステップS106におけるリードコマンドの送信方法は、送信先が内部ドライブの場合と外部ドライブの場合とで異なる。
 送信先のNIC-SSD140が内部ドライブの場合は、計算機内部のバスを通してリードコマンドを送信する。例えば、リード要求(コマンド)の内容を主記憶上のI/O要求キューに書き、NIC-SSD140の特定のレジスタへライトを行う。そして、このレジスタライトを受けたNIC-SSD140が主記憶からコマンドの内容を読み込む。一方、送信先NIC-SSD140が外部ドライブの場合は、ネットワークを通してリードコマンドを送信する。
 NIC-SSD140のSSDコントローラ142は、リードコマンドを受信すると(S107)、受信したコマンドの内容を解析して(S108)、リード対象のLBAやデータサイズを特定し、NVMマッピングテーブル150を参照して、リード対象データの格納位置を特定する(S109)。
 次にNIC-SSD140のSSDコントローラ142は、転送用バッファを割り当てる(S110)。転送用バッファは、NIC-SSD140上のバッファメモリのうち、有効なデータが格納されていない領域(空き領域)が、当該データの転送用として割り当てられる。
 NIC-SSD140のSSDコントローラ142は、記憶媒体である不揮発性メモリからデータを読み出して転送用バッファに格納する(S111)。続いて、NIC-SSD140のSSDコントローラ142は、要求元のデータ管理計算機ノード100Aへデータを送信する(S112)。
 ステップS112において、NIC-SSD140がデータ管理計算機ノード100Aの内部ドライブの場合と外部ドライブの場合とでデータの送信方法が異なる。NIC-SSD140が内部ドライブの場合は、NIC-SSD140のSSDコントローラ142が主記憶へデータを書き込む。
 一方、NIC-SSD140が外部ドライブの場合は、NIC-SSD140が転送用バッファからデータを読み出し、通信プロトコルで決められたヘッダなどを付加し、ネットワークを介して要求元のデータ管理計算機ノード100Aにデータを送信する。このとき、データは複数のパケットに分割して送られてもよい。また、要求された全てのデータが転送用バッファに格納される前にデータの送信を開始してもよい。
 要求されたデータの送信(S113、S114)が正常に完了すると、NIC-SSD140のSSDコントローラ142は、正常完了のステータスを要求元のデータ保持計算機ノードに送信し(S115)、バッファを解放する(S117)。
 ステップS115におけるステータスの送信方法も、内部ドライブの場合と外部ドライブの場合とで異なる。内部ドライブの場合は、例えば、主記憶110のI/O応答用キューにステータスを書き込む。このとき、CPU130に対して割り込みすることを通知してもよい。一方、外部ドライブの場合は、ネットワーク200を介してステータスを送信する。
 データ管理計算機ノード100Aは、ステータスを受信すると(S116)、キャッシュに格納されたデータを、要求元計算機ノード100Bに送信する(S118)。
 データ管理計算機ノード100AのCPU130は、データの送信(S119)が正常に完了すると、正常完了のステータスを要求元計算機ノード100Bに送信し、キャッシュを解放する(S122)。以上、リード処理のシーケンスについて説明した。
 図12は、ライト処理における要求元計算機ノード100B、データ管理計算機ノード100A及びNIC-SSD140の通信のシーケンスを示す。
 図12では、ライト対象のNIC-SSD140がデータ管理計算機ノード100Aの内部ドライブの場合を示す。ライト対象のNIC-SSD140がデータ管理計算機ノード100Aの外部ドライブの場合については、図13を参照して説明する。
 図12に示すように、データをライトする計算機(要求元計算機ノード100B)は、まず、ボリュームノードマッピングテーブル112を参照し、アクセス先の仮想ボリュームを管理する計算機ノード(データ管理計算機ノード)100Aを特定する(S201)。そして、ステップS201で特定したデータ管理計算機ノード100Aへライト要求を送信する(S202)。
 データ管理計算機ノード100Aは、ステップS202で要求元計算機ノード100Bからライト要求を受けると(S203)、まず、ノード内ボリュームマッピングテーブル113を参照して、データ保持ドライブを特定する(S204)。ステップS204において特定したデータ保持ドライブが外部ドライブの場合は、さらに、外部ドライブ管理テーブル114を参照して、外部ドライブのネットワークアドレス及びドライブ番号を特定する。
 続いて、データ管理計算機ノード100Aは、キャッシュ割り当てを行う(S205)。具体的に、ステップS205では、キャッシュメモリ領域のうち有効なデータを保持していない部分(空き領域)を、当該ライト要求の対象データをキャッシュするために割り当てる。
 続いて、データ管理計算機ノード100Aは、データの受信準備が完了したことを示すTransfer readyを要求元計算機へ送信する(S206)。
 要求元計算機ノード100Bは、データ管理計算機ノード100AからTransfer readyを受信すると(S207)、データ送信を開始する(S208)。例えば、ステップS208では、NIC-SSD140が計算機の主記憶からデータを読み出し、ネットワーク200を介して読み出したデータをデータ管理計算機ノード100Aへ送信する。
 データ管理計算機ノード100Aは、要求元計算機ノード100Bからデータを受信すると(S209)、NIC-SSD140にライトコマンドを送信する(S210)。ステップS210におけるコマンドの送信方法は、上記したリード処理のコマンドの送信処理の場合(S106)と同様であるが、コマンドの内容がリードの場合と異なる。
 NIC-SSD140のSSDコントローラ142は、ライトコマンドを受信すると(S211)、受信したコマンドの内容を解析して(S212)、NVMマッピングテーブルを参照してライト対象データの格納位置を特定する(S213)。
 次に、NIC-SSD140のSSDコントローラ142は、転送用バッファを割り当てる(S214)。転送用バッファは、NIC-SSD140上のバッファメモリのうち、有効なデータが格納されていない領域(空き領域)が、当該データの転送用として割り当てられる。
 続いて、NIC-SSD140のSSDコントローラ142は、主記憶110上のキャッシュ領域からデータを転送用バッファへ読み込みを開始する(S215)。
 次に、NIC-SSD140のSSDコントローラ142は、主記憶110上のキャッシュ領域からデータを読み込んで(S216、S217)、転送用バッファに格納されたデータを記憶媒体へ書き込む(S218)。このとき、転送用バッファに全てのデータが揃う前に、記憶媒体への書き込みを始めてもよい。
 NIC-SSD140のSSDコントローラ142は、記憶媒体へのデータ書き込みが正常に完了すると、正常完了のステータスをデータ管理計算機ノード100Aに送信する(S219)。例えば、主記憶110のI/O応答用キューにステータスを書き込む。このとき、CPU130に対して割り込みすることを通知してもよい。その後、NIC-SSD140のSSDコントローラ142は、転送用バッファを解放する(S221)。
 データ管理計算機ノード100Aは、ステータスを受信すると(S220)、要求元計算機ノード100Bへステータスを送信し(S222、S223)、キャッシュ領域を解放する(S224)。
 なお、応答時間を短縮するために、データ管理計算機ノード100Aは、全データがキャッシュメモリ領域に格納された時点でステータス送信を行ってもよい。また、NIC-SSD140のSSDコントローラ142は、全データが転送用バッファに格納された時点でステータス送信を行ってもよい。以上、ライト対象のNIC-SSD140がデータ管理計算機ノード100Aの内部ドライブの場合のライト処理のシーケンスについて説明した。
 次に、図13を参照して、ライト対象のNIC-SSD140がデータ管理計算機ノード100Aの外部ドライブの場合について説明する。図13は、ライト処理における要求元計算機ノード100B、データ管理計算機ノード100A及びNIC-SSD140の通信のシーケンスを示す。図13は、ライト対象のNIC-SSD140が外部ドライブ、すなわち、データ管理計算機ノード100Aとは別の計算機ノードに搭載されている場合を示し、図12に示す内部ドライブの場合とは、ライトデータをNIC-SSD140に送信する方法が異なる。
 図13に示すように、データをライトする計算機(要求元計算機ノード100B)は、まず、ボリュームノードマッピングテーブル112を参照し、アクセス先の仮想ボリュームを管理する計算機ノード(データ管理計算機ノード)100Aを特定する(S301)。そして、ステップS301で特定したデータ管理計算機ノード100Aへライト要求を送信する(S302)。
 データ管理計算機ノード100Aは、ステップS202で要求元計算機ノード100Bからライト要求を受けると(S303)、まず、ノード内ボリュームマッピングテーブル113を参照して、データ保持ドライブを特定する(S304)。ステップS304において特定したデータ保持ドライブが外部ドライブの場合は、さらに、外部ドライブ管理テーブル114を参照して、外部ドライブのネットワークアドレス及びドライブ番号を特定する。
 続いて、データ管理計算機ノード100Aは、キャッシュ割り当てを行う(S305)。具体的に、ステップS205では、キャッシュメモリ領域のうち有効なデータを保持していない部分(空き領域)を、当該ライト要求の対象データをキャッシュするために割り当てる。
 続いて、データ管理計算機ノード100Aは、データの受信準備が完了したことを示すTransfer readyを要求元計算機へ送信する(S306)。
 要求元計算機ノード100Bは、データ管理計算機ノード100AからTransfer readyを受信すると(S307)、データ送信を開始する(S308)。例えば、ステップS308では、NIC-SSD140が計算機の主記憶からデータを読み出し、ネットワーク200を介して読み出したデータをデータ管理計算機ノード100Aへ送信する。
 データ管理計算機ノード100Aは、要求元計算機ノード100Bからデータを受信すると(S309)、NIC-SSD140にライトコマンドを送信する(S310)。
 NIC-SSD140のSSDコントローラ142は、ライトコマンドを受信すると(S311)、受信したコマンドの内容を解析して(S312)、NVMマッピングテーブルを参照してライト対象データの格納位置を特定する(S313)。
 次に、NIC-SSD140のSSDコントローラ142は、転送用バッファを割り当てる(S314)。転送用バッファは、NIC-SSD140上のバッファメモリのうち、有効なデータが格納されていない領域(空き領域)が、当該データの転送用として割り当てられる。
 続いて、NIC-SSD140のSSDコントローラ142は、Transfer readyをデータ管理計算機ノード100Aへ送信する(S315)。
 データ管理計算機ノード100Aは、Transfer readyを受信すると(S316)、データをNIC-SSD140に送信する(S317)。
 NIC-SSD140は、データ管理計算機ノード100Aからデータを受信すると(S318、S139)、転送用バッファに格納されたデータを記憶媒体へ書き込む(S320)。このとき、転送用バッファに全てのデータが揃う前に、記憶媒体への書き込みを始めてもよい。
 NIC-SSD140のSSDコントローラ142は、記憶媒体へのデータ書き込みが正常に完了すると、正常完了のステータスをデータ管理計算機ノード100Aに送信し(S321)、転送用バッファを解放する(S323)。
 データ管理計算機ノード100Aは、ステータスを受信すると(S322)、要求元計算機ノード100Bへステータスを送信し(S324、S325)、キャッシュ領域を解放する(S326)。
 なお、応答時間を短縮するために、データ管理計算機ノードは全データがキャッシュメモリ領域に格納された時点でステータス送信を行ってもよい。また、NIC-SSD140のSSDコントローラ142は、全データが転送用バッファに格納された時点でステータス送信を行ってもよい。以上、ライト対象のNIC-SSD140がデータ管理計算機ノード100Aの外部ドライブの場合のライト処理のシーケンスについて説明した。
 次に、図14を参照して計算機ノード100をシャットダウンする際のストレージ共有サービスシャットダウン処理について説明する。図14は、計算機ノード100をシャットダウンする際のシャットダウン処理を示すフローチャートである。
 図14の処理は、計算機クラスタの負荷が下がったとき、または、サービス提供終了時刻を過ぎたときなどを契機に、管理者の操作または管理プログラムなどにしたがって、クラスタ内の一部の計算機ノード100のシャットダウン処理が開始される。
 計算機クラスタのシャットダウン処理としては、例えば、アプリケーションプログラムの停止、クラスタリングソフトウェアの構成情報変更、仮想マシンのマイグレーション、未書込みデータの掃き出し、または、ファイルシステムのアンマウントなどが含まれる。本実施の形態ではこれらに加えて、ストレージ共有サービスのシャットダウン処理を行う。当該処理の特徴は、一の計算機ノードをシャットダウンした後に、他の計算機ノードからデータアクセスを可能とするために、ボリューム制御情報を一の計算機ノードから他計算機ノードにコピーする処理を行う点である。
 図14に示すように、シャットダウン対象の計算機ノード100のCPU130は、まず引き継ぎ先ノードの選択を行う(S401)。ステップS401では、自ノードが管理している各仮想ボリュームについて、管理を引き継ぐ計算機ノード100が選択される。
 管理を引き継ぐ計算機ノード100の選択方法は任意の基準を適用可能であるが、例えば、シャットダウンする計算機ノード100で動いていた仮想マシンが他のノードへ移される場合は、その移動先ノードへ当該仮想マシンが使用する仮想ボリュームの管理を移動するようにしてもよい。また、他の選択ポリシとしては、全ノードの担当ノード数が均等となるように計算機ノードを選択したり、負荷の低いノードを優先的に選択したりする、などが挙げられる。
 次に、計算機ノード100のCPU130は、ボリューム制御情報を引き継ぎ先の計算機ノードに送信する(S402)。具体的には、1つの仮想ボリュームごとに引き継ぎ先ノードへ引き継ぎ要求を送信し、引き継ぎ先ノードからの応答を受け取る。引き継ぎ要求のメッセージには、仮想ボリューム番号、仮想ボリュームのサイズ、ドライブ番号及び仮想ボリュームの先頭LBAが格納されたドライブ内のLBA(D-LBA)が含まれる。
 そして、ステップS402においてボリューム制御情報を受信した引き継ぎ先の計算機ノードは、外部ドライブ管理テーブル114に外部ドライブ番号と引き継ぎ元の計算機ノード(シャットダウンする計算機ノード)のネットワークアドレス及び受信したドライブ番号を書き込む。このとき、外部ドライブ番号は、未割当の任意の番号を割り当てる。そして、受信したボリューム番号、サイズ、ドライブ番号、D-LBAをノード内ボリュームマッピングテーブル113に追加し、外部ドライブフラグを「true」に設定する。
 続いて、シャットダウンする計算機ノード100は、ボリュームノードマッピング更新を行う(S403)。これは、仮想ボリュームの管理が別ノードに引き継がれたことを、当該ボリュームにアクセスする全ノードに通知する処理である。この通知を受けた計算機ノードは、ボリュームノードマッピングテーブル112のうち、当該仮想ボリュームの管理ノード1122を、引き継ぎ先ノードの番号に書き換える。
 そして、シャットダウンする計算機ノード100は、各仮想ボリュームについて、データ移動をすべきか否か判定する(S404)。例えば、ある仮想ボリュームを頻繁に読み書きしていた仮想マシンが別の計算機に移された場合など、他ノードからのアクセス頻度が高くなることが予想される場合には、データを移動すべきと判断する。
 ステップS404において、データ移動すべきと判断された場合には、シャットダウンする計算機ノード100は、当該仮想ボリュームについて、データ移動処理を行う(S405)。そして、移動先の計算機ノードに、当該仮想ボリュームを格納できるだけの記憶領域を割り当て、コンテナ情報を更新して(S406)、ステップS407の処理を実行する。コンテナ情報の更新とは、すなわち、当該領域のドライブ番号、先頭LBA及び仮想ボリューム番号を、ノード内ボリュームマッピングテーブル113に書き込むことである。
 ステップS404において、データ移動すべきではないと判定された場合には、ステップS407の処理を実行する。
 ステップS407のダーティキャッシュ掃き出し処理は、シャットダウンする計算機ノード100のメモリ上にキャッシュされたダーティデータを全てドライブに書き込む処理である。この処理を開始してからシャットダウンまでの間、ライトデータはコマンドに同期してドライブへ書き込み、ダーティデータがメモリ上に残らないようにする。
 最後に、計算機ノード100は、アクセス経路の切り替えを行う(S408)。これは、シャットダウンする計算機ノード100に格納された記憶装置へ他ノードからアクセスする際に、データを保持する計算機ノードのCPUを介してアクセスするのではなく、アクセス元計算機ノードとNIC-SSD140とが直接通信してデータを読み書きするように設定を変更する処理である。具体的には、外部ドライブ管理テーブル114の、ネットワークアドレス1142をNIC-SSD140のアドレスに変更し、ドライブ番号1143をNIC-SSD内論理ユニット番号(通常は0)に変更する。
 なお、上記の例では、計算機ノード100が停止した状態でNIC-SSD140を稼働させるための電力は、ネットワーク200を経由して供給するとしたが、それ以外の方法、例えば、計算機ノード100のCPUやメモリとは別に電源のON/OFFを制御できる方法で供給できればよい。例えば計算機ノードのPSUからNIC-SSD140に電源供給用のケーブルを接続し、計算機ノード100の本体側の電源ON/OFFとは独立にNIC-SSD140の電源をON/OFFできるようにしてもよい。
(2)第2の実施の形態
 次に、図15を参照して、第2の実施の形態について説明する。図15は、本発明の第2の実施の形態にかかるシステム構成を示すブロック図である。
 図15に示すように、本実施の形態では、ネットワークカード450とSSD440を別個の拡張カードとし、計算機ノード400内のバスに接続する。なおSSD440は、拡張カードの形ではなく2.5インチや3.5インチなどのハードディスクドライブと同じ形状のドライブとしてもよい。
 本実施の形態においては、省電力化のために計算機ノード400全体の電力供給を停止するのではなく、例えば、CPU430の省電力機能を使って、CPUコアおよびメモリへの電力供給を止める。このときバスコントローラは動作し続ける。
 その他、計算機ノード400の構成及びデータ処理については、第1の実施の形態と同様であるため詳細な説明は省略する。なお、CPUコア停止時のデータ読み書きは、要求元計算機ノードとSSD440との間の通信によって行われる。このとき、コマンド、データ及びステータスなどは、ネットワーク200、ネットワークカード450及び計算機ノード400内のバスを経由する。本実施の形態によれば、計算機ノード400のCPUおよび主記憶の消費電力を削減することができる。
(3)第3の実施の形態
 次に、図15を参照して、第3の実施の形態について説明する。図16は、本発明の第3の実施の形態にかかるシステム構成を示すブロック図である。
 図16に示すように、本実施の形態では、I/Oボックス540内に、RAIDコントローラ541、サブプロセッサ542、NIC543、ポート544、エキスパンダ545及びハードディスクドライブ(図中HDDと表記)546などが搭載される。
 RAIDコントローラ541は、1または複数のHDD546によりRAIDグループを定義し、1つのRAIDグループを構成する1または複数の記憶デバイスにより提供される記憶領域上に1または複数のプールボリュームを定義する。
 サブプロセッサ542は、第1の実施の形態におけるSSDコントローラ142と同様に、計算機ノード500の停止中に、他の計算機ノードから送信されるI/O要求を処理する。データの読み書きを行う時はRAIDコントローラ541を制御して、HDD546に対しコマンドを送信してデータを読み書きする。
 なお、計算機ノード500の停止時に、I/Oボックス540を稼働させるための電力はネットワーク200を介して供給してもいいし、PSU545から供給してもよい。
 100  計算機ノード
 110  主記憶
 111  ストレージ制御プログラム
 112  ボリュームノードマッピングテーブル
 113  ノード内ボリュームマッピングテーブル
 114  外部ドライブ管理テーブル
 115  キャッシュ管理情報
 116  キャッシュメモリ領域
 133  ノード内ボリュームマッピングテーブル
 141  不揮発性メモリ
 142  コントローラ
 143  バッファメモリ
 145  ポート
 

Claims (8)

  1.  他の計算機と接続された計算機であって、
     中央演算装置と、
     前記他の計算機からアクセスされる記憶装置と、
     前記計算機全体の電源供給を制御する前記中央演算装置に電源を供給する第1の電源供給手段と、
     前記記憶装置に電源を供給する第2の電源供給手段と、
     を備え、
     前記中央演算装置は、前記記憶装置の制御情報を前記他の計算機に送信した後、前記計算機全体の電源を遮断し、
     前記第2の電力供給手段は、前記計算機全体の電源が遮断された状態で前記記憶装置に前記他の計算機からのアクセスがあった場合に、前記記憶装置に電源を供給する
     ことを特徴とする、計算機。
  2.  前記他の計算機は、
     前記計算機の電源が遮断されている状態で前記計算機の記憶装置にアクセスする場合に、前記送信された前記記憶装置の制御情報をもとに前記記憶装置にアクセスする
     ことを特徴とする、請求項1に記載の計算機。
  3.  前記記憶装置の制御情報は、1または2以上の仮想ボリュームと、前記仮想ボリュームの記憶領域を提供する計算機との対応付けを管理する仮想ボリューム情報である
     ことを特徴とする、請求項1に記載の計算機。
  4.  前記他の計算機は、前記計算機の電源が遮断されている状態で前記計算機の記憶装置にアクセスする場合に、前記仮想ボリューム情報を参照してアクセス先の記憶装置を有する前記計算機を特定する
     ことを特徴とする、請求項3に記載の計算機。
  5.  前記記憶装置は、前記他の計算機と接続する接続装置と、前記記憶装置へのアクセスを制御する制御装置とともに1の基板に搭載される
     ことを特徴とする、請求項1に記載の計算機。
  6.  前記第2の電源供給手段は、前記他の記憶装置と接続するネットワークを介して前記記憶装置に電源を供給する
     ことを特徴とする、請求項1に記載の計算機。
  7.  前記中央演算装置は、前記記憶装置の制御情報を前記他の計算機に送信した後、前記中央演算装置の電源を遮断し、ネットワークを介して前記記憶装置に電源を供給する省電力モードとする
     ことを特徴とする、請求項1に記載の計算機。
  8.  他の計算機と接続された計算機における電源制御方法であって、
     前記計算機は、中央演算装置と、前記他の計算機からアクセスされる記憶装置と、前記計算機全体の電源供給を制御する前記中央演算装置に電源を供給する第1の電源供給手段と、前記記憶装置に電源を供給する第2の電源供給手段と、を備え、
     前記中央演算装置が、前記記憶装置の制御情報を前記他の計算機に送信するステップと、
     前記中央演算装置が、前記計算機全体の電源を遮断するステップと、
     前記第2の電力供給手段が、前記計算機全体の電源が遮断された状態で前記記憶装置に前記他の計算機からのアクセスがあった場合に、前記記憶装置に電源を供給するステップと、
     前記他の計算機からのアクセス要求に応じて、前記記憶装置に格納されたデータを入出力するステップと、
     を含むことを特徴とする、電源制御方法。
     
PCT/JP2015/062291 2015-04-22 2015-04-22 計算機及び電源制御方法 WO2016170632A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/062291 WO2016170632A1 (ja) 2015-04-22 2015-04-22 計算機及び電源制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/062291 WO2016170632A1 (ja) 2015-04-22 2015-04-22 計算機及び電源制御方法

Publications (1)

Publication Number Publication Date
WO2016170632A1 true WO2016170632A1 (ja) 2016-10-27

Family

ID=57142951

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/062291 WO2016170632A1 (ja) 2015-04-22 2015-04-22 計算機及び電源制御方法

Country Status (1)

Country Link
WO (1) WO2016170632A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007219703A (ja) * 2006-02-15 2007-08-30 Fujitsu Ltd ハードディスクストレージ制御プログラム、ハードディスクストレージ装置、ハードディスクストレージ制御方法
JP2010198464A (ja) * 2009-02-26 2010-09-09 Hitachi Ltd 論理ユニット管理方法、プログラムおよびディスク装置
JP2012089064A (ja) * 2010-10-22 2012-05-10 Toshiba Corp 電子機器、電子機器の制御方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007219703A (ja) * 2006-02-15 2007-08-30 Fujitsu Ltd ハードディスクストレージ制御プログラム、ハードディスクストレージ装置、ハードディスクストレージ制御方法
JP2010198464A (ja) * 2009-02-26 2010-09-09 Hitachi Ltd 論理ユニット管理方法、プログラムおよびディスク装置
JP2012089064A (ja) * 2010-10-22 2012-05-10 Toshiba Corp 電子機器、電子機器の制御方法

Similar Documents

Publication Publication Date Title
JP6709245B2 (ja) 適応持続性システム、方法、インタフェース
US9648081B2 (en) Network-attached memory
US7613876B2 (en) Hybrid multi-tiered caching storage system
US10339056B2 (en) Systems, methods and apparatus for cache transfers
US8392670B2 (en) Performance management of access to flash memory in a storage device
KR20210147976A (ko) 확장 가능하고 일관성 있는 메모리 장치를 위한 시스템 및 방법
US20050246508A1 (en) System and method for interleaving memory
CN109344090B (zh) 数据中心中kvm虚拟机的虚拟硬盘系统及数据中心
EP3382557B1 (en) Method and apparatus for persistently caching storage data in a page cache
US20080177947A1 (en) Storage system and storage migration method
US9323463B2 (en) Storage system and cache control method
JP2014130420A (ja) 計算機システム及び計算機の制御方法
JP2021128802A (ja) 情報処理システム、ストレージシステム及びデータ転送方法
JP6068676B2 (ja) 計算機システム及び計算機システムの制御方法
US20110082950A1 (en) Computer system and computer system input/output method
US10719118B2 (en) Power level management in a data storage system
US9766824B2 (en) Storage device and computer system
US10705977B2 (en) Method of dirty cache line eviction
WO2007146845A2 (en) Configurable and scalable hybrid multi-tiered caching storage system
US7725654B2 (en) Affecting a caching algorithm used by a cache of storage system
US20230236966A1 (en) Intelligent defragmentation in a storage system
US20240053917A1 (en) Storage device, operation method of storage device, and storage system using the same
US20050038958A1 (en) Disk-array controller with host-controlled NVRAM
WO2016170632A1 (ja) 計算機及び電源制御方法
WO2024088150A1 (zh) 基于开放通道固态盘的数据存储方法、装置、设备、介质及产品

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15889871

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15889871

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP