Рассматривали ли вы использование сценария запуска на экземпляре (я полагаю, вы также можете добавить сценарий запуска с помощью Terraform)? Вы можете использовать цикл if
, чтобы определить, отформатирован ли диск, а если нет, то вы можете попробовать выполнить команды форматирования / монтирования в документации, которую вы связали (я понимаю, вы предлагали не выполнять инструкции в документации, но они могут быть интегрированы в сценарий запуска для достижения желаемого результата).
Запуск следующих выходных данных и пустой строки, если диск не отформатирован:
sudo blkid /dev/sdb
Поэтому вы можете использовать это в сценарии запуска, чтобы определить, отформатирован ли диск, а затем выполнить форматирование / монтирование, если это не так. Например, вы можете использовать что-то вроде этого (Примечание *** Если диск отформатирован, но не смонтирован, это может быть опасно и не должно использоваться, если в вашем случае использования могут использоваться существующие диски, которые, возможно, уже отформатированы):
#!/bin/bash
if sudo blkid /dev/sdb;then
exit
else
sudo mkfs.ext4 -m 0 -F -E lazy_itable_init=0,lazy_journal_init=0,discard /dev/sdb; \
sudo mkdir -p /mnt/disks/newdisk
sudo mount -o discard,defaults /dev/sdb /mnt/disks/newdisk
fi