Skip to main content
Version: 3.2

Scale Portworx on ARO

As your cluster usage increases and the data on your storage pools grows, you may start to run out of capacity. In order to handle this, you must use one of the two method.

  1. Expanding the storage pools with pxctl
  2. Using Autopilot for dynamically achieving the same.

Volume resize limitations

This limitation is specific to the ext4 filesystem and does not apply to volumes using the XFS filesystem.

When using the ext4 filesystem with Portworx, there is a limitation on the maximum size to which a volume can be resized. This limitation is due to the inode constraints of the ext4 filesystem and not specific to Portworx.

ext4 default configuration limit

For volumes formatted using the default ext4 configuration, where the bytes-per-inode ratio is 16384, the maximum size to which a volume can be resized is 65535 GiB. This restriction is due to the ext4 filesystem's maximum allowable inode count, which is capped at 2³² - 1 inodes.

Custom ext4 formatting limit

If custom formatting options are used for the ext4 filesystem, the maximum volume size can vary based on the selected bytes-per-inode ratio. To determine whether a volume can be resized to a desired size with custom formatting, follow these steps:

  1. Use the tune2fs command on the Portworx device to retrieve the Inode count, Block size, and Block count:
    tune2fs -l /dev/pxd/pxdxxx | grep "Inode count:"
    tune2fs -l /dev/pxd/pxdxxx | grep "Block count:"
    tune2fs -l /dev/pxd/pxdxxx | grep "Block size:"
  2. Calculate the bytes-per-inode ratio using the following formula:
    bytesperinode = (blocksize * blockcount) / inodecount
  3. Calculate the number of inodes required for the desired volume size in bytes:
    numofinodes = desiredvolumesizeinbytes / bytesperinode
  4. If the calculated number of inodes exceeds 2³² - 1, the volume cannot be resized to the desired size, and the requested size should be reduced. If the number of inodes is within the limit, the volume can be resized accordingly.