Я пытаюсь использовать эластичную файловую систему (EFS) в AWS ... Моя цель состоит в том, чтобы автоматически смонтировать его с помощью/и т.д./FstabДинамический IP в/и т.д./Fstab
Поскольку экземпляры EC2 будут автоматически масштабируется по доступных зон, изменение IP-адресов монтирования EFS в зависимости от зоны экземпляра. На данный момент AWS предоставляет эту команду, чтобы смонтировать его в нужную зону ...
sudo mount -t nfs4 -o nfsvers=4.1 $(curl -s http://169.254.169.254/latest/meta-data/placement/availability-zone).fs-xxxx.efs.us-east-1.amazonaws.com:/ efs
Однако, есть некоторые проблемы с EFS DNS URL, я только смог подключиться через условие EFS IP. Так что я создал Баш скрипт, чтобы получить правильный IP, относящийся к зоне ...
нано /efsmount.sh
#!/bin/sh
CURR_ZONE=$(/usr/bin/curl -s http://169.254.169.254/latest/meta-data/placement/availability-zone)
if [ "$CURR_ZONE" == "us-east-1e" ];then
echo "172.xx.xx.xx"
fi
... more if statements to cover all zones
можно монтировать с помощью этого скрипта
sudo mount -t nfs4 -o nfsvers=4.1 $(/efsmount.sh):/ /efs
Теперь мой вопрос ... как мне авто монтировать с помощью fstab?
Что-то вроде этого не работает
$(/efsmount.sh):/ /efs nfs auto,noatime,nolock,bg,nfsvers=4.1,intr,tcp,actimeo=1800 0 0
Благодаря
Fstab не является средой программирования, и вы не можете вставлять динамическое содержимое в него. вы можете генерировать файл динамически, но он читается как статический текст, независимо от того, что вы пытаетесь сделать внутренне. –
Спасибо ... любые альтернативы, чтобы получить это смонтировано при загрузке? – Jsp
внешний скрипт в cron или какой-либо другой среде автоматического триггера, которая требует от вас монтирования. то вы можете определить IP-адреса и напрямую подключить mount. –