0

Я подключил EBS к экземпляру с поддержкой ecs в AWS.Перезагрузка ecs-agent из пользовательских данных

Для того, чтобы EBS была видна докере, демон докеров должен быть перезапущен. Я добавил соответствующие команды к пользовательским данным. Но я не могу перезагрузить контейнер-доклер ecs-agent из пользовательских данных.

Ниже мой пользователь-данные:

#!/bin/bash 
echo ECS_CLUSTER=MYCLUSTER>> /etc/ecs/ecs.config 
mkfs -t ext4 /dev/sdb 
mkdir /db/ 
mount /dev/sdb /db/ 
service docker stop 
service docker start 
docker start ecs-agent 

На SSH, я мог видеть, что контейнер ЭКС-агент создан, но он не работает. Когда я запускаю контейнер вручную, он работает. Каков правильный способ запустить его во время запуска экземпляра? Что мне не хватает в моем скрипте пользовательских данных?

Мне нужно создать конфигурацию запуска для использования в моей группе автомасштабирования. Экземпляры должны иметь EBS и видны докере.

ответ

3

Если вам нужно перезапустить демон Docker, представляется вероятным, что вы имеете дело с существующим экземпляром EC2. В этом случае скрипты пользовательских данных вам не помогут, потому что согласно EC2 User Guide они «работают только во время первого цикла загрузки при запуске экземпляра».

Что касается правильного запуска агента ECS во время запуска экземпляра, это зависит от того, какой дистрибутив вы используете. Для экземпляров Amazon Linux ECS Developer Guide рекомендует ecs-init пакет:

sudo yum install -y ecs-init 
sudo service docker start 
sudo start ecs 

(Если вы поместите это в ваших сценариях пользовательских данных, не используйте sudo.)

+0

Спасибо. Мой AMI является ecs-enabed. Поэтому мне не нужно делать «yum install». Но я пробовал два других шага. Перезагрузка докеров не чистая. Попытка ecs-agent, похоже, терпит неудачу с некоторой ошибкой devicemapper. – Nataraj

+0

Вы имеете в виду, что используете [Amazon ECS-оптимизированный AMI] (http://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html)? В этом случае «ecs-init» предварительно установлен и обрабатывает инициализацию агента ECS, поэтому вам не нужно беспокоиться о правильном способе его запуска во время запуска экземпляра. – rbarni

 Смежные вопросы

  • Нет связанных вопросов^_^