Ваш вопрос
Является ли ECS просто докер установить в EC2? Если у меня уже есть EC2, то I запускает ECS, значит ли это, что у меня есть два экземпляра?
No. AWS ECS
это просто логическая группировка (кластер) из EC2
экземпляров, и все экземпляры EC2
часть ECS
выступать в качестве хоста Docker
т.е. ECS может послать команду, чтобы запустить контейнер на них (EC2
). Если у вас уже есть EC2, а затем запускается ECS, у вас все равно будет один экземпляр. Если вы добавите/зарегистрируете (путем установки агента контейнера AWS ECS) EC2 в ECS, он станет частью кластера, но все равно будет единственным экземпляром EC2.
Amazon ECS без регистрации EC2 (добавлен в кластер) никуда не годится.
TL; DR
Обзор
EC2
- это просто удаленный (виртуальная) машина.
ECS
означает EC2 Cluster Service
- по основному определению computer cluster, ECS
в основном логическая группировка EC2
машин/экземпляров.С технической точки зрения ECS
является лишь конфигурация для эффективного использования и управления вашей EC2
экземпляра (ов) ресурсов т.е. хранения, память, CPU и т.д.
Чтобы упростить его дальше, если вы запустили Amazon ECS
без добавленных к нему экземпляров EC2
, это ни к чему не важно, т. е. вы ничего не можете с этим поделать. ECS
имеет смысл только после добавления одного (или более) EC2
экземпляров.
Следующая запутанным здесь является контейнер термин - который не является полностью виртуализированных экземпляров машины, и Docker это одна технология, которую мы можем использовать для создания экземпляров контейнера. Docker
- это утилита, которую вы можете установить на нашей машине, что делает ее хостом Docker
, и на этом хосте вы можете создавать контейнеры (такие же, как виртуальные машины, но гораздо более легкие). Подводя итог, ECS
касается кластеризации экземпляров EC2 и использует Docker
для создания экземпляров контейнеров/экземпляров/виртуальных машин на этих (EC2
) хостах.
Все, что вам нужно сделать, это запустить ECS
и зарегистрировать/добавить столько фактов EC2
, сколько вам нужно. Вы можете добавлять/регистрировать экземпляры EC2, все, что вам нужно, это агент контейнеров Amazon ECS, работающий на вашем экземпляре/машине EC2, который можно выполнить вручную или напрямую с помощью специального AMI (Amazon Machine Image), то есть AMI с оптимизацией AMASON, который уже имеет агент контейнера Amazon ECS. Во время запуска нового экземпляра EC2 Агент автоматически регистрирует его в кластере ECS по умолчанию.
Контейнер агент работает на каждом из экземпляров (EC2
экземпляры) в пределах Amazon ECS
кластера посылает информацию о текущих запущенных задач экземпляра и использования ресурсов на Amazon ECS и запускает и останавливает задания всякий раз, когда он получает запрос от Amazon ECS. Для получения дополнительной информации см. Amazon ECS Container Agent. После установки каждый из созданных экземпляров контейнера (любого из EC2
machine/node) будет экземпляром в рое Amazon ECS
.
Для получения дополнительной информации - читать шаг 10 из этой документации: Launching an Amazon ECS Container Instance:
Выберите AMI для экземпляра контейнера. Вы можете выбрать Amazon ECS-оптимизированный AMI или другую операционную систему, такую как CoreOS или Ubuntu. Если вы не выбрали AMI, оптимизированный для Amazon ECS, вам необходимо выполнить в соответствии с процедурой в Installing the Amazon ECS Container Agent.
По умолчанию экземпляр контейнера запускается в ваш кластер по умолчанию . Если вы хотите запустить свой собственный кластер вместо по умолчанию, выберите список дополнительных деталей и вставьте следующий сценарий в поле данных пользователя, заменив your_cluster_name на имя вашего кластера .
#!/bin/bash
echo ECS_CLUSTER=your_cluster_name >> /etc/ecs/ecs.config
Или, если у вас есть ecs.config в Amazon S3 и включили Доступ к содержимому экземпляра Amazon S3 только для чтения, выберите список дополнительных деталей и вставьте следующий сценарий в поле данных пользователя , заменив your_bucket_name на имя вашего ведра до install AWS CLI и напишите файл конфигурации во время запуска. Примечание. Дополнительные сведения об этой конфигурации см. В разделе Хранение Конфигурация экземпляра контейнера в Amazon S3.
#!/bin/bash
yum install -y aws-cli
aws s3 cp s3://your_bucket_name/ecs.config /etc/ecs/ecs.config
Просто чтобы прояснить его дальше - вы можете создать контейнеры на вашем одном EC2
например без ECS
. Установите любую из технологий контейнеризации, то есть Docker
, и запустите команду создания контейнера, установив EC2
в качестве хоста Docker
и имея столько контейнеров Docker
, сколько захотите (или столько, сколько позволяют ваши ресурсы EC2
).
Не стоит ли использовать ECS для обслуживания эластичных контейнеров? – lfk