AWS Elastic Beanstalk - легкое развертывание приложений



Это руководство по AWS Elastic Beanstalk поможет вам понять, как развертывать веб-приложения в облаке AWS с помощью AWS Elastic Beanstalk.

уже не на своих начальных стадиях. Сейчас это хорошо установлено ислужит инновационной платформой, позволяющей компаниям внедрять приложения, которые невозможно реализовать в традиционной инфраструктуре.Этот успех сопровождался экспоненциальным ростом , PaaS является одним из них. Amazon запустила собственный сервис, который следует модели PaaS, а именно: AWS Эластичный бобовый стебель!

Давайте посмотрим на темы, затронутые в этой статье AWS Beanstalk:





  1. Что такое Amazon Elastic Beanstalk?
  2. Преимущества AWS Elastic Beanstalk
  3. Компоненты AWS Elastic Beanstalk
  4. Архитектура AWS Elastic Beanstalk
  5. Демо - Развертывание приложения на Beanstalk

Что такое Amazon Elastic Beanstalk?

ElasticBeanstalk - Эластичный бобовый стебель - Edureka

Облачные вычисления меняют весь процесс разработки приложений. Ряд поставщиков облачных услуг, включаяAmazon Web Services и Microsoft Azure предлагают инструменты разработки, которые помогают сделать процесс более простым и безопасным. AWS Elastic Beanstalk - один из таких инструментов разработки, реализованный на основе модели PaaS.



AWS Elastic Beanstalk - это простой в использовании сервис для развертывания и масштабирования веб-приложений и сервисов, разработанных с помощью Java, .NET, PHP, Node.js, Python, Ruby, Go и Docker на знакомых серверах, таких как Apache, Nginx, Passenger и IIS.

С помощью AWS Elastic Beanstalk разработчик может развернуть приложение, не выделяя базовую инфраструктуру, сохраняя при этом высокую доступность. Посмотрите следующее видео, чтобы узнать больше об Elastic Beanstalk.

Руководство по AWS Elastic Beanstalk | Эдурека

Но зачем выбирать Elastic Beanstalk, если у нас уже есть много других платформ? Итак, давайте обсудим преимущества Elastic Beanstalk.



Преимущества AWS Elastic Beanstalk

Ниже приведены некоторые преимущества, которые AWS Elastic Beanstalk предлагает по сравнению с другими сервисами PaaS.

Скорость - Эластичный бобовый стебель - ЭдурикаПредлагает более быстрое развертывание: Elastic Beanstalk предлагает разработчикам самый быстрый и простой способ развернуть свое приложение. Через несколько минут приложение будет готово к использованию, и пользователям не придется иметь дело с базовой инфраструктурой или конфигурацией ресурсов.

Логотип - Эластичный бобовый стебель - EdurekaПоддерживает Mульти-арендаторАрхитектура: AWS Elastic Beanstalk позволяет пользователям совместно использовать свои приложения на разных устройствах с высокой масштабируемостью и безопасностью. Он предоставляет подробный отчет об использовании приложений и профилях пользователей.

Логотип - Эластичный бобовый стебель - EdurekaУпрощает операции: Beanstalk подготавливает и управляет инфраструктурой и управляет стеком приложений. Разработчики должны просто сосредоточиться на разработке кода для своего приложения, а не тратить время на управление и настройку серверов, баз данных, межсетевых экранов и сетей.

Предлагает полный контроль ресурсов: Бобовый стебель дает деразработчикисвобода выбора AWS ресурсы, например Экземпляр EC2 тип, оптимальные для своего применения. Это позволяет разработчикам сохранять полный контроль над ресурсами AWS и получать к ним доступ в любое время.

Теперь, когда у нас есть веские причины полагать, почему разработчики предпочитают AWS Elastic Beanstalk, давайте взглянем на его основные концепции.

Хотите стать сертифицированным архитектором AWS?

Компоненты AWS Elastic Beanstalk

Есть определенные ключевые концепции, с которыми вы часто будете сталкиваться при развертывании приложения на Beanstalk. Давайте посмотрим на эти концепции:

Заявка:

  • Приложение в Elastic Beanstalk концептуально похоже на папку.
  • Приложение - это набор компонентов, включая среды, версии и конфигурация среды

Версия приложения:

  • Версия приложения - это конкретная помеченная итерация развертываемого кода для веб-приложения.
  • Версия приложения указывает на объект Amazon S3, содержащий развертываемый код, например файл WAR Java.

Окружающая среда:

  • Среды в приложении Elastic Beanstalk - это то место, где будет активна текущая версия приложения.
  • В каждой среде одновременно запускается только одна версия приложения. Но можно запускать одну и ту же или разные версии приложения во многих средах одновременно.

Уровень окружающей среды:

В зависимости от требований beanstalk предлагает два разных уровня среды: веб-серверОкружающая среда, Рабочая среда

  • Среда веб-сервера: РучкиHTTP-запросы от клиентов
  • РабочийОкружающая среда: процессыфоновые задачи, требующие больших затрат ресурсов и времени

Вот иллюстрация, чтобы показать, какПриложение, версия приложения и средыотносятся друг к другу:

А вот как выглядит среда Beanstalk Environment с использованием типа контейнера по умолчанию:

Пример вызова удаленного метода Java


Теперь, когда вы знаете о различных ключевых концепциях, относящихся к Elastic Beanstalk, давайте разберемся с архитектурой Elastic Beanstalk.

Архитектура AWS Elastic Beanstalk

Прежде чем переходить к архитектуре AWS Elastic Beanstalk, давайте ответим на наиболее часто задаваемый вопрос:

Что такое среда Elastic Beanstalk?

Среда относится к текущей версии приложения. Когда вы запускаете среду для своего приложения, Beanstalk просит вас выбрать один из двух разных уровней среды, то есть Web Сервер Окружающая среда или Рабочая среда . Давайте разберемся с ними по очереди.

Среда веб-сервера

Версия приложения, установленная в среде веб-сервера, обрабатывает HTTP-запросы от клиента. На следующей диаграмме показан пример архитектуры AWS Elastic Beanstalk для уровня среды веб-сервера и показано, как компоненты в этом типе уровня среды работают вместе.

Окружающая среда бобового стебля - Окружающая среда - это сердце приложения. Когда вы запускаете среду, Beanstalk назначает различные ресурсы, необходимые для успешного запуска приложения.

Балансировщик эластичной нагрузки - Когда приложение получает несколько запросов от клиента, Amazon Route53 пересылает эти запросы в Elastic Load Balancer. Балансировщик нагрузки распределяет запросы между экземплярами EC2 Auto Scaling Group.

Группа автоматического масштабирования - Auto Scaling Group автоматически запускает дополнительные инстансы Amazon EC2, чтобы приспособиться к возрастающей нагрузке на ваше приложение. Если нагрузка на ваше приложение уменьшается, Amazon EC2 Auto Scaling останавливает инстансы, но всегда оставляет работающим хотя бы один инстанс.

Хост-менеджер - Это программный компонент, который работает на каждом экземпляре EC2, назначенном вашему приложению. Хост-менеджер отвечает за различные вещи, например

  • Создание и мониторинг файлов журнала приложений
  • Генерация событий уровня экземпляра
  • Сервер приложений мониторинга

Группы безопасности - Группа безопасности подобна межсетевому экрану для вашего экземпляра. У Elastic Beanstalk есть группа безопасности по умолчанию, которая позволяет клиенту получать доступ к приложению через HTTP-порт 80. Он также предоставляет вам возможность определять группы безопасности для сервера базы данных. На изображении ниже показано, что мы узнали о среде веб-сервера.

Вот и все о среде веб-сервера. Но что, если версия приложения, установленная на уровне веб-сервера, продолжает отклонять несколько запросов, потому что она столкнулась с трудоемкими и ресурсоемкими задачами при обработке запроса? Что ж, вот где на сцену выходит рабочий уровень.

Хотите вывести свои «облачные» знания на новый уровень?

Рабочая среда

Рабочий - это отдельный фоновый процесс, который помогает уровню веб-сервера обрабатывать ресурсоемкие или длительные операции. Кроме того, он также отправляет уведомления по электронной почте, генерирует отчеты и очищает базы данных. Это позволяет приложению оставаться отзывчивым и обрабатывать несколько запросов.

Это здорово, но как Worker-процесс узнает, какие задачи нужно обрабатывать и когда? Как связаны эти два уровня среды? Для этого мы используем службу очередей сообщений AWS, вызывающую Amazon Simple Queue Service (SQS). Изображение ниже дает вам общее представление о том, как рабочий процесс получает и обрабатывает фоновые задачи.

Рабочий процесс рабочего процесса довольно прост. Когда вы запускаете уровень рабочей среды, Elastic Beanstalk устанавливает демон на каждый экземпляр EC2 в группе Auto Scaling. Демон извлекает запросы, отправленные из очереди Amazon SQS. В зависимости от приоритета очереди SQS отправит сообщение черезСООБЩЕНИЕзапрос к HTTP-пути рабочей среды. Рабочий по полученииmessage выполняет задачи и отправляет HTTP-ответ после завершения операции. SQS при получении ответного сообщения удаляет сообщение из очереди. Если ему не удается получить ответ, он будет постоянно повторять попытки отправки сообщения.

Теперь, когда мы рассмотрели Elastic Beanstalk теоретически, в оставшейся части этого блога мы увидим, как развернуть приложение на Elastic Beanstalk.

Развертывание приложения на Elastic Beanstalk

Развертывание приложения на Elastic Beanstalk - довольно простой процесс. Давайте посмотрим, как пошагово развернуть приложение.

Шаг 1: На консоли Elastic Beanstalk нажмите Создать новое приложение вариант. Появится диалоговое окно, в котором вы можете дать имя и соответствующее описание для вашего приложения.

Шаг 2: Теперь, когда папка приложения создана, вы можете нажать на Вкладка Действия и выберите Создать среду вариант. Beanstalk предоставляет вам возможность создать несколько сред для вашего приложения.

что такое перегрузка функций в c ++

Шаг 3: Выберите один из двух вариантов уровня среды. Выберите «Среда веб-сервера», если вы хотите, чтобы ваше приложение обрабатывало HTTP-запросы, или выберите «Рабочая среда» для обработки фоновых задач.

Шаг 4: Появится еще одно диалоговое окно, в котором вам нужно указать доменное имя и описание для вашего приложения.

Шаг 5: Выберите платформу по вашему выбору для своего приложения. Elastic Beanstalk предоставит вам несколько вариантов. Вы можете выбрать образец приложения, предоставленный Beanstalk, или загрузить файл с кодом для вашего приложения.

Для запуска среды Beanstalk потребуется несколько минут. После запуска Environment на панели навигации вы можете увидеть несколько вариантов, в которых вы можете изменить конфигурацию своего приложения, просмотреть файлы журналов и события. Поскольку вы уже находитесь на странице Environment, попробуйте изучить различные функции, которые предлагает Beanstalk.

Шаг 6: В правом верхнем углу вы найдете URL-адрес версии вашего приложения. Щелкните этот URL. Вы попадете на страницу, которая подтвердит, что вы успешно запустили свое приложение на Elastic Beanstalk.

Поздравляю! Вы успешно развернули приложение на платформе Elastic Beanstalk.

Я надеюсь, что теперь у вас есть четкое представление об Elastic Beanstalk и о том, как вы можете использовать Beanstalk для развертывания своих приложений.

Так вот оно! Я надеюсь, что этот блог был информативным и повысил ценность ваших знаний. Если вы хотите поднять свои знания об Amazon Web Services на новый уровень, запишитесь на конечно от Эдурека.

Есть вопрос к нам? Пожалуйста, укажите это в разделе комментариев «AWS Elastic Beanstalk», и мы свяжемся с вами в ближайшее время.