amazon-ecs-agent всегда перезапускается

У меня есть группа автомасштабирования на Amazon, которая порождает экземпляры серверов.

Моя конфигурация aws-cli:

[default]
s3 =
    signature_version = s3v4
    addressing_style = path
region = eu-central-1

Моя конфигурация ecs-agent считывается из s3 с помощью aws-cli при загрузке экземпляра и выглядит следующим образом:

ECS_CLUSTER=cluster-mongodb
ECS_ENGINE_AUTH_TYPE=dockercfg
ECS_ENGINE_AUTH_DATA={"domain.com":{"auth":"bsaewfgvewgf23g9hv3","email":""}}

К сожалению, ecs-agent на порожденном экземпляре всегда перезапускается через 10 секунд вместо регистрации в кластере «cluster-mongodb».

Журнал ошибок находится здесь:

2016-02-05T14:40:47Z [INFO] Starting Agent: Amazon ECS Agent - v1.7.1 (007985c)
2016-02-05T14:40:47Z [INFO] Loading configuration
2016-02-05T14:40:47Z [INFO] Checkpointing is enabled. Attempting to load state
2016-02-05T14:40:47Z [INFO] Loading state! module="statemanager"
2016-02-05T14:40:47Z [INFO] Detected Docker versions [1.17 1.18 1.19 1.20]
2016-02-05T14:40:47Z [INFO] Registering Instance with ECS
2016-02-05T14:41:07Z [ERROR] Could not register module="api client" err="RequestError: send request failed
caused by: Post https://ecs.eu-central-1.amazonaws.com/: net/http: request canceled while waiting for connection"
2016-02-05T14:41:07Z [ERROR] Error registering: RequestError: send request failed
caused by: Post https://ecs.eu-central-1.amazonaws.com/: net/http: request canceled while waiting for connection

Кто-то видел это раньше? Возможно, это связано с испорченными группами безопасности / конфигурацией LB?

заранее спасибо

[EDIT] нашел решение:

проверьте, прописана ли подсеть в правой таблице маршрутизации (vpc -> таблицы маршрутов). в моем случае это было не то.

Кроме того, моим экземплярам требовался общедоступный IP-адрес, назначенный конфигурацией запуска группы Autoscaling, но это было особенным для моей настройки.


person cari    schedule 05.02.2016    source источник


Ответы (3)


Это сообщение указывает на то, что ваш экземпляр не может выполнить HTTPS POST для ecs.eu-central-1.amazonaws.com конечной точки.

Убедитесь, что ваши группы безопасности и / или конфигурация VPC разрешают исходящий HTTPS на ваш Конечная точка ECS.

Вы можете подтвердить подключение конечной точки от экземпляра к конечной точке с помощью командной строки:

curl https://ecs.eu-central-1.amazonaws.com

Это должно вернуть сообщение, подобное следующему:

<MissingAuthenticationTokenException>
  <Message>Missing Authentication Token</Message>
</MissingAuthenticationTokenException>
person Rodrigo M    schedule 05.02.2016
comment
да, я не могу подключиться к ecs.eu-central-1.amazonaws.com из экземпляра, у меня тайм-аут. Однако списки ACL VPC полностью открыты, весь трафик разрешен. то же самое касается группы безопасности группы автомасштабирования и экземпляра. где еще я могу поискать? - person cari; 05.02.2016
comment
Вы используете iptables / local firewall для ограничения исходящих сообщений с экземпляра? Можете ли вы получить доступ, скажем, к google.com из локального экземпляра? Есть ли у самого экземпляра группа безопасности? Какие там исходящие правила? - person Rodrigo M; 05.02.2016
comment
ну, у экземпляров есть общедоступный IP-адрес, но они не могут подключиться к Интернету. если я вручную прикреплю к экземпляру эластичный IP-адрес, они смогут. но поскольку экземпляр запускается из автомасштабирования, мне нужно другое решение проблемы. у тебя есть идея? - person cari; 08.02.2016
comment
обнаружил: подсеть не была прописана в правой таблице маршрутов (vpc - ›таблицы маршрутов) - person cari; 08.02.2016
comment
Была такая же проблема, я понял, что в моих группах безопасности открыт HTTP, а не HTTPS. - person ObjectiveTruth; 01.08.2016
comment
Мне пришлось добавить конечную точку ECS в VPC. - person HeikoG; 27.11.2020

Используйте экземпляр NAT и позвольте Интернету течь через него для частной виртуальной машины внутри вашего VPC.

person raaone7    schedule 16.10.2016

На самом деле агенту ecs необходим доступ в Интернет для подключения к конечной точке ecs, то есть https://ecs.eu-central-1.amazonaws.com.

Либо у экземпляра ECS есть общедоступный IP-адрес, либо они используют экземпляр / шлюз NAT для общего доступа.

см. ссылку https://forums.aws.amazon.com/message.jspa?messageID=781868 для получения дополнительной информации.

person dushyant    schedule 24.10.2019