Thin Provisioning Function Support

Thin Provisioning (TP) operates by allocating disk storage space in a flexible manner among multiple devices, based on the minimum space required by each volume at any given time.

Test Case

  1. On the Lightbits server, check the total free physical capacity of storage.
  2. Create volumes, in which the total logical size is bigger than the free physical size of storage.
  3. Prove that each client can allocate volumes that exceed the total physical capacity of the resource pool.
  4. Connect these volumes on the client side (reflected as a new namespace on the client side), and use FIO to test that they work properly.
  5. On the Lightbits server, check the freePhysicalStorage capacity parameter, to find out how much free storage capacity is available: $ lbcli get cluster -o json
Bash
Copy

In this example, we have 27.8 terabytes physically available, which means that you can create a total of X terabytes of logical volumes.

  1. Run a simple ‘for’ loop in order to create a few volumes, whose total capacity are greater than the ‘freePhysicalStorage’ parameter. In this example, we will create six volumes of 12 Tib each; 6x12=72 Terabytes.
Bash
Copy

Sample Output

Bash
Copy
  1. From the client server, connect to the newly-created volumes and check that six new NVME devices of 12 Tib each are attached, with lsblk:
Bash
Copy
  1. Run random FIO tests on the volumes and check performance:
  • Make sure you have FIO installed. If not: $ yum install fio -y
  • With lshw, double-check the num of CPUs and apply accordingly, on numjobs=32 cpus_allowed=0-31 in the FIO file.

Sample FIO file:

Bash
Copy
Type to search, ESC to discard
Type to search, ESC to discard
Type to search, ESC to discard