Введение в AWS Elastic Beanstalk
AWS Elastic Beanstalk - это управляемый AWS сервис для веб-приложений. Elastic beanstalk - это предварительно настроенный сервер EC2, который может напрямую принимать код вашего приложения и конфигурации среды и использовать их для автоматического выделения и развертывания необходимых ресурсов в AWS для запуска веб-приложения. В отличие от EC-2, который представляет собой «Инфраструктура как услуга», Elastic beanstalk является услугой «платформа как услуга» (PAAS), поскольку позволяет пользователям напрямую использовать предварительно настроенный сервер для своего приложения. Конечно, вы можете развертывать приложения, даже не используя эластичный beanstalk, но это будет означать, что вам придется выбирать соответствующий сервис из огромного набора сервисов, предлагаемых AWS, вручную выделять эти ресурсы AWS и объединять их вместе, чтобы сформировать полное веб-приложение. . Elastic beanstalk абстрагируется от основной работы по настройке и позволяет вам как пользователю сосредоточиться на более насущных вопросах.
Это вызывает опасения, что, если эластичный beanstalk сам настраивает большую часть ресурсов, и абстрагирует лежащие в основе детали. Могут ли разработчики изменить конфигурацию при необходимости ? Ответ - да . Elastic Beanstalk предназначен для упрощения развертывания приложений, но ни на каком уровне он не ограничивает разработчиков в изменении каких-либо конфигураций.
Возможности AWS Elastic Beanstalk:
- Применение: Elastic Beanstalk напрямую принимает код проекта. Итак, приложение Elastic Beanstalk называется так же, как и домашний каталог вашего проекта.
- Среды приложений: пользователи могут захотеть, чтобы их приложение работало в разных средах, таких как DEV, UAT и PROD. Вы можете создавать и настраивать разные среды для запуска приложения на разных этапах.
- Здоровье окружающей среды: одна из самых прибыльных функций запуска приложений на AWS или большинстве других облачных платформ - это автоматические проверки работоспособности. AWS выполняет автоматические проверки работоспособности во всех развертываниях EC-2 (Elastic Beanstalk - это управляемый сервис EC-2), за которым можно следить с консоли AWS. Например, в случае веб-приложений AWS будет регулярно, по расписанию разработчиков, проверять связь с приложением, чтобы проверить, имеет ли ответ код состояния 200 и приложение работает должным образом. Ответы на проверку работоспособности:
- Красный : приложение не прошло все тесты работоспособности.
- Желтый: приложение не прошло некоторые тесты работоспособности.
- Серый: приложение обновляется.
- Зеленый: приложение успешно прошло проверку работоспособности.
- Изолированный: все среды в одном приложении изолированы друг от друга (независимо от состояния выполнения друг друга). Излишне говорить, что два разных приложения также изолированы.
- Масштабируемость: использование Auto-Scaling в Elastic beanstalk делает приложение динамически масштабируемым.
- Эластичная балансировка нагрузки: все веб-запросы к приложению не передаются напрямую экземплярам приложения. Сначала они попадают в Elastic Load Balancer (ELB), который, как следует из названия, распределяет нагрузку между всеми экземплярами приложения.
- Поддержка языков: Elastic Beanstalk поддерживает приложения, разработанные с помощью Java, .NET, PHP, Node.js, Python, Ruby, Go и Docker на знакомых серверах, таких как Apache, Nginx, Passenger и IIS.
- Цена: за использование Elastic Beanstalk не взимается дополнительная плата. От пользователей требуется только платить за услуги и ресурсы, предоставляемые Elastic Beanstalk Service.
- Автоматическая инициализация: Elastic Beanstalk избавляет от необходимости выбирать нужные службы и настраивать их группы безопасности для совместной работы.
- Невозможно перерасти: AWS утверждает, что, поскольку Elastic Beanstalk использует функцию автоматического масштабирования , теоретически он может обрабатывать любой объем интернет-трафика.
Команды AWS Elastic Beanstalk:
AWS предоставляет набор команд, которые можно запускать в AWS-CLI (интерфейс командной строки AWS) для управления вашими сервисами. Во многом так же, как если бы вы управляли из консоли AWS. Ниже приведен список команд, которые можно запустить для управления сервисом AWS Elastic Beanstalk.
- abort-environment-update
- применить действие, управляемое средой
- проверить наличие DNS
- компоновка среды
- создать приложение
- создать-приложение-версия
- создать шаблон конфигурации
- создать среду
- создать-платформу-версию
- создать-хранилище-место
- удалить приложение
- удалить-версию-приложения
- удалить шаблон конфигурации
- удалить конфигурацию среды
- удалить версию платформы
- описать-счет-атрибуты
- описать версии приложений
- описать приложения
- описать параметры конфигурации
- описать настройки конфигурации
- описать здоровье окружающей среды
- описать-окружающая-управляемая-история-действия
- описать действия, управляемые средой
- описать-окружающие-ресурсы
- описать среду
- описать события
- описать-экземпляры-здоровье
- описать платформенную версию
- список-доступных-стеки решений
- список-платформа-ветки
- список-платформа-версии
- список тегов для ресурса
- перестроить среду
- запрос-информация-среда
- перезапустить сервер приложений
- получить информацию о среде
- своп-среда-cnames
- оконечная среда
- приложение-обновление
- обновление-приложение-ресурс-жизненный цикл
- обновление-версия-приложения
- шаблон обновления конфигурации
- среда обновления
- теги обновления для ресурса
- проверить настройки конфигурации
Проще говоря, Elastic Beanstalk - это служба автоматического развертывания приложений. Это самый простой способ развернуть ваши приложения на AWS, даже если у вас, возможно, еще нет опыта работы с этой платформой.