Я пытаюсь автоматически загружать экземпляры контейнера ECS, чтобы каждый раз при запуске экземпляра он монтировал экземпляр с хранилищем EFS.
Я перешел в стек формирования облака для своего кластера и попытался добавить свой сценарий начальной загрузки в пользовательские данные при обновлении стека. Следующие скрипты уже присутствуют:
#!/bin/bashecho ECS_CLUSTER=flask-ecs >> /etc/ecs/ecs.config;echo ECS_BACKEND_HOST= >> /etc/ecs/ecs.config;
Attempt1 Сценарий начальной загрузки (я вставил команды, которые использовал для ручного монтирования):
#!/bin/bashecho ECS_CLUSTER=flask-ecs >> /etc/ecs/ecs.config;echo ECS_BACKEND_HOST= >> /etc/ecs/ecs.config;sudo yum install -y amazon-efs-utils;cd /home/ec2-user/;mkdir efs;sudo mount -t efs fs-456665f:/ efs;
Attempt2 Сценарий начальной загрузки (добавлен со ссылкой на документацию Документация AWS)
#!/bin/bashecho ECS_CLUSTER=flask-ecs >> /etc/ecs/ecs.config;echo ECS_BACKEND_HOST= >> /etc/ecs/ecs.config; #cloud-config repo_update: true repo_upgrade: all packages: - amazon-efs-utils runcmd: - file_system_id_01=fs-456665f - efs_directory=/home/ec2-user/efs - mkdir -p ${efs_directory} - echo "${file_system_id_01}:/ ${efs_directory} efs tls,_netdev" >> /etc/fstab - mount -a -t efs defaults
Ни одна из попыток не смонтировала EFS в экземпляры после входа в экземпляр. Теперь экземпляры контейнера не отображаются в консоли кластера ECS.