The storage controller 10 checks the states 523 of the extents 40 in the extent state management table 520 and selects an extent 40 in the state 523 indicating “CLOSE,” that is, the extent 40 in the close state (step S501). The storage controller 10 selects the SSD blocks 21 of the added SSD 20b as destinations of data (step S502). The storage controller 10 selects the SSD blocks corresponding to the entries in the selected extent 40 as sources of the data (step S503).
The storage controller 10 copies the data stored in the source SSD blocks 21 into the destination SSD blocks 21 (step S504). The storage controller 10 updates correspondence relationships between the entries 42 and the SSD blocks 21 in the extent configuration management table 510 and the SSD block management table 540 (step S505). The storage controller 10 liberates the source SSD blocks 21 (step S506). The source SSD blocks 21 are liberated by issuance of unmap commands for cancellation of the correspondence relationships between the SSD blocks 21 and the entries 42 to the SSDs 20 or the like, for instance.
The storage controller 10 checks whether any extent 40 in the close state that has not been selected in step S501 exists or not (step S507). If the extent 40 that has not been selected exists, the storage controller 10 returns to processing of step S501. In the processing of step S501, the storage controller 10 selects the extent 40 in the close state from among the extents 40 that have not yet been selected.