- Create EKS cluster with 3 nodes and install Longhorn.
- Create deployment and write some data to it.
- In Longhorn, set
replica-replenishment-wait-intervalto0. - Go to the launch template of the EKS cluster node-group. You can find in the EKS cluster tab
Configuration/Compute/<node-group-name>and click the launch template. - Click
Modify template (Create new version)in theActionsdrop-down menu. - Choose the
Source template versionin theLaunch template name and version description. - Click
AdvancedthenAdd new volumeinConfigure storageand fill in the fields. - Adjust the auto-mount script and add to
User datainAdvanced details. Make sure theDEV_PATHmatches theDevice nameof the additional volume.MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="==MYBOUNDARY==" --==MYBOUNDARY== Content-Type: text/x-shellscript; charset="us-ascii" #!/bin/bash # https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html#launch-template-user-data echo "Running custom user data script" DEV_PATH="/dev/sdb" mkfs -t ext4 ${DEV_PATH} MOUNT_PATH="/mnt/longhorn" mkdir ${MOUNT_PATH} mount ${DEV_PATH} ${MOUNT_PATH} - Click
Create template versionto save changes. - Go to the EKS cluster node-group and change
Launch template versioninNode Group configuration. Track the status in theUpdate historytab. - After update succeeded, check the deployment in step 2 still running and data exist, and check the extra volume can be added through Longhorn UI.