Skip to main content

Preparing Storage Classes

Ignition will allocate a persistent volume claim (PVC) for its "data" volume. The default settings are as follows:

You can discover what storage classes you have available with kubectl get storageclass:

$ kubectl get storageclass
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE
efs efs.csi.aws.com Delete Immediate false 11d
gp2 kubernetes.io/aws-ebs Delete WaitForFirstConsumer false 14d
gp3 (default) kubernetes.io/aws-ebs Delete WaitForFirstConsumer true 14d

The storage class you use should be performant block storage, such as the gp3 example above within AWS EKS. You should avoid file-share systems backed by SMB/NFS--these are typically not fast enough to provide adequate performance for Ignition. Additionally, some lack appropriate file-locking provisions and can cause problems with various subsystems in Ignition.

Configuring the data volume size​

The chart defaults to 3Gi size in order to stay small for testing purposes. You'll typically want to set gateway.dataVolumeStorageSize to a larger value for production use. Some storage classes will allow you to dynamically resize your volume later. Consult the documentation for your backing storage on how to configure your storage class for volume expansion.