Introduction to disk pools


A pool is constructed of disk groups. There are several types of disk groups: 

  • Data disk groups – disks that contain the actual data. Each data disk group has a number of disks that may fail before losing data. Choosing data disk groups that will support disk failures will result in lower available space on the group – depending on the number of disks that may fail (e.g. if a data disk group of 5 disks will allow 2 disks to fail before losing data then the total available space on the disks group will be reduced by 40%). 
  • Spare disk group – the disks in this group are not actively used but will automatically replace a data disk if it fails. Adding spare disks is optional.
  • Read cache disk group – this group contains disks that are actively used to speed up the data reading process. It is recommended to use high-speed disks (SSD) in this group. Adding disks to this group is optional.
  • Write acceleration disk group – this group contains disks that are actively used to speed up the data writing process. It is recommended to use only high-speed disks (SSD) in this group. Having a write cache will greatly improve performance, especially in synchronous type workloads (NFS, database operations etc.) when confirmation of current request must be received before sending the next one — this makes latency and actual write speed of the underlying disks to directly affect performance.  Adding disks to this group is optional.

The recommended number of disks in a data disk group, that may allow only 1 failing disk before losing data, is between 3 and 9. For a large number of disks on the system, for better performance, try using more groups. For large space requirements, you may take into consideration using more disks per group.


Creating Disk Pools Using the Web Interface on SynetoOS


To access the disk pool section go to Data management > Disk pools.


 

Disk pools


The available disks for creation are listed in the disks section. Disks allocated to disk pools are blue-labeled with the name of the pool and cannot be used in a new disk pool. Available disks are gray-labeled as available.


Disks


To create a new disk pool, go to the Disk Pools menu and click on the Add button in the upper right corner and a new pool configuration menu will appear:


NewPool


To add a disk in a ‘Data Disk Group’, ‘Spare Disk Group’, ‘Read Cache Disk Group’ or ‘Write Cache Disk Group’ you have to click on the corresponding blue Add button (blue square with a plus sign) and select the disks from the available ones.


AddDataDisks


Adding multiple data disk groups is done by clicking on the New data disk group button.

NOTE: All disks in one disk pool group must have identical sizes! After adding the first disks, only disks of the same size can be added.

If the disks have been used previously in another disk pool, you will need to force creation.

NOTE: Disks are grouped by controller name. If you have more than four controllers, you may choose to create multiple data disk groups that do not have more than two disks from the same controller. This way you can create a pool that is immune to controller failure in addition to disk failure. 

When you have completed your desired configuration you can finish the creation by clicking the Create button or you can cancel the operation by hitting the Cancel button on the bottom of the page.

Disk pools used in High Availability clusters will be marked when listed.


UsedInHA


Checking pool integrity


You can initiate an integrity checking procedure by clicking on the contextual menu Check integrity button. You will then have the possibility to start or schedule integrity checks.


Scrub menu

 

NOTE: Doing regular integrity checks is strongly recommended, but be careful not to initiate them when storage is under load – it can affect performance and take a significant amount of time, based on the pool size. Also take note that if any changes occur in pool structure (disk replacement, fail etc.) a regenerating procedure will initiate – it is an operation similar to the integrity check, also affecting the pool performance.

Replacing a Faulted Disk

The true power of pools comes into action when one or more of your disks fail. According to your disk pool configuration, a certain number of disks may fail before data loss.

When replacing a faulted disk make sure that the replacement disk is of the same size as the one faulted. To replace the faulted disk take the following steps:

  1. Identify the name and position of the faulted disk – this can be done using the web interface. A faulted disk is labeled with an orange color on the Disks page. 
  2. Enter contextual menu and click on Replace in pool.

    FaultedDisk
  3. On the next menu, you can select which disk to replace the faulty one with.

        4. Click Replace and once the operation is completed make sure that you also replace it physically with a healthy disk.


At this point the faulted disk is replaced with the new disk and the system is automatically restoring the data on the new disk.


Replacing a Faulted System Disk


All the conditions from 3. apply here. To replace the system disk, follow these steps:

  1. Extract the faulted disk from the bay.
  2. Insert a new disk in its place.
  3. Log in via console or SSH and execute: unsupported shell.
  4. Detach the disk by executing the following command: zpool detach name_of_rpool name_of_faulted_disk
  5. Insert the disk in rpool by executing the next command: rpool-mirror name_of_faulted_disk

At this point the faulted disk is replaced with the new disk and the system is automatically restoring the data on the new disk.


Export a disk pool


Occasionally, you might need to move a storage pool between systems. To do so, the storage devices must be disconnected from the original system and reconnected to the destination system. This task can be accomplished by physically re-cabling the devices, or by using multiported devices such as the devices on a SAN. ZFS enables you to export the pool from one machine and import it on the destination system, even if the system are of different architectural endianness.


To export a pool, navigate to the Disk pools menu. Click the Contextual menu > Export button on to export the disk pool. The pool on which the system is running, usually named rpool, can not be exported.


ExportPool


After exporting a disk pool, the data is no longer accessible. Reimport the disk pool to regain access to your data.


Importing a disk pool


Navigate to the Disk pools menu. Click the Import an existing pool button. If there are disk pools that can be imported a list will be shown. Select the disk pool to be imported an click Import.

Import


If a disk pool was previously used in another machine, you will need to force import it. This option will be proposed to you when clicking Import