Перенос интернет-приложения ASP.NET в сервис AWS Elastic Beanstalk

с помощью интерактивного средства Windows Web Application Migration Assistant (WWAMA)

Обзор

Цель данного практического занятия – перенести интернет‑приложение ASP.NET в полностью управляемую среду AWS Elastic Beanstalk с помощью средства Windows Web Application Migration Assistant (WWAMA). Дополнительные сведения о средстве Windows Web Application Migration Assistant см. здесь.

Ожидаемый результат

Вы перенесете интернет-приложение ASP.NET в полностью управляемую среду AWS Elastic Beanstalk.

Предварительные требования

Вам потребуется аккаунт AWS и разрешения IAM, чтобы создать инстанс EC2, пару ключей, группу безопасности, пользователя IAM и среду Elastic Beanstalk. В данном учебном пособии мы развернем шаблон AWS CloudFormation, автоматически подготавливающий веб-сайт на инстансе EC2, который будет исходным интернет-приложением для миграции.  

Об этом учебном пособии
Время 15 минут                                           
Стоимость Доступен уровень бесплатного пользования
Сценарий использования Перенос приложений Windows
Продукты AWS Elastic Beanstalk
Аудитория Разработчик
Уровень Начинающий
Последнее обновление 30.03.2020

1. Регистрация в AWS

Шаблон CloudFormation, используемый в данном учебном пособии, запускает инстанс EC2 t2.micro. На инстансы t2.micro распространяется уровень бесплатного пользования. Если выбрать другой тип инстанса, вам будет начислена плата за использование сервиса EC2. Оценить затраты на использование сервиса EC2 можно на странице цен EC2.

 

Уже есть аккаунт? Вход

2. Создание и настройка

С помощью CloudFormation запустите инстанс EC2, в котором будет размещен веб-сайт. Затем настройте необходимые разрешения IAM.

А. Запустите инстанс EC2 с помощью CloudFormation

С помощью CloudFormation запустите инстанс EC2 в регионе US-East-1.

Запустить стек CloudFormation >>

Затем нажмите кнопку Next (Далее).

WWAMA - CFN

Выберите имеющуюся пару ключей или (если у вас нет ее) создайте ее. Затем нажмите кнопку Next (Далее).

WWAMA - 2

На экране Configure Stack Options (Настройка параметров стека) нажмите кнопку Next (Далее). В нижней части экрана Review (Проверка) нажмите кнопку Create Stack (Создать стек).  

 

WWAMA - 3

После создания стека его состояние изменится на CREATE_COMPLETE.

 

WWAMA - 5

Б. Создайте пользователя IAM

Войти в консоль IAM >>

В расположенном слева меню навигации щелкните Users (Пользователи), а затем Add User (Добавить пользователя).

В поле User name (Имя пользователя) введите имя MigrationUser, установите флажок Programmatic access (Программный доступ) и щелкните Next:Permissions (Далее: разрешения).

WWAMA - 6

Щелкните Attach existing policies directly (Прикрепить существующие политики напрямую) и в строке поиска введите текст Beanstalk, чтобы отфильтровать политики.

Установите флажки для указанных ниже политик, управляемых AWS, и щелкните Next:Tags (Далее: теги).

  • IAMReadOnlyAccess
  • AWSElasticBeanstalkFullAccess

 

WWAMA - 8

Щелкните Next:Review (Далее: проверка), а затем нажмите кнопку Create User (Создать пользователя).


 

 

WWAMA - 9

После создания пользователя на отобразившемся экране нажмите кнопку Download CSV (Загрузить CSV-файл).

 

 

WWAMA - 10

3. Вход в систему в консоли EC2 и выполнение настройки для запуска средства WWAMA

А. Перейдите в консоль EC2 и выполните вход

Войти в EC2 >>

После входа в систему в консоли EC2 выберите инстанс WWAMA и нажмите кнопку Connect (Подключиться).

WWAMA - launch-instance

Нажмите кнопку Download Remote Desktop File (Загрузить файл удаленного рабочего стола) и сохраните RDP-файл. Затем нажмите кнопку Get Password (Получить пароль) и отправьте свой файл пары ключей, чтобы получить пароль Widows Server. Пароль отобразится в виде простого текста. Скопируйте его, так как он понадобится вам на следующем шаге.

 

 

WWAMA - RDP_LI

Войдите в систему в инстансе EC2 с помощью ранее сохраненного RDP-файла и введите свой пароль.

 

 

Б. Откройте терминал PowerShell в EC2 Windows Server

Откройте терминал PowerShell от имени администратора и выполните команды, указанные в расположенном внизу справа примере, чтобы настроить данные AWS для доступа. В процессе создания пользователя MigrationUser замените значения параметров ACCESS_KEY и SECRET_ACCESS_KEY значениями, указанными в ранее загруженном CSV-файле.

 

WWAMA - 13
PS C:\> Import-Module AWSPowerShell
PS C:\> Set-AWSCredential -AccessKey ACCESS_KEY -SecretKey SECRET_ACCESS_KEY -StoreAs default

В. Извлеките файлы помощника по миграции

Помощник по миграции предварительно загружен шаблоном CloudFormation и находится на диске C:\. Это файл wwama.zip.

Щелкните файл wwama.zip правой кнопкой мыши и извлеките помощник.

WWAMA - 14

Г. Просмотрите веб-сайт перед переносом

Откройте веб-браузер в инстансе EC2 Windows Server и перейдите по адресу http://localhost/. Отобразится веб-сайт, который предполагается перенести с использованием помощника по миграции.

WWAMA - localhost_LI

4. Запуск помощника по миграции

А. Запустите скрипт MigrateIISWebsiteToElasticBeanstalk.ps1

В ранее открытом вами терминале PowerShell запустите скрипт миграции.

Помощник предложит указать расположение вашего файла с данными для доступа. Нажмите клавишу ВВОД, чтобы пропустить это действие.

Когда будет предложено ввести имя профиля AWS, введите default.

   

PS C:\> .\MigrateIISWebsiteToElasticBeanstalk.ps1

Б. Выберите регион AWS

Укажите регион AWS, в котором вы хотите запустить свою среду Elastic Beanstalk. Пример: us-east-1. Перечень регионов AWS, в которых доступен сервис Elastic Beanstalk, см. в разделе адресов и расценок сервиса AWS Elastic Beanstalk в общих справочных материалах по AWS.

 

Enter the AWS Region (default us-east-1):

В. Выберите интернет-приложение, которое необходимо перенести

Далее помощник обнаружит все веб-сайты, работающие на вашем сервере IIS, и отобразит их, как показано в примере ниже.

 

 

WWAMA - 16

Введите число 2, чтобы перенести сайт.

Enter the number of the website to migrate: (default 1):

Г. Обновите строки подключений

Далее помощник предложит обновить выбранные выше строки подключений. Нажмите клавишу ВВОД, так как в этом приложении нет строк подключений.

Отобразится следующее сообщение:

The migration assistant didn't find any connection strings. (Помощнику по миграции не удалось найти ни одной строки подключения).

Enter the number of the connection string you would like to update, or press ENTER:

Д. Настройте приложение Elastic Beanstalk

Далее присвойте имя своему новому приложению Elastic Beanstalk.

 

 

Когда будет предложено выбрать версию Windows Server, введите 6 и нажмите клавишу ВВОД.

Enter a unique name for your new Elastic Beanstalk application:
WWAMA - 17

Введите тип инстанса, в котором будет работать ваше приложение. Введите t2.micro. Полный перечень см. в разделе типов инстансов Amazon EC2.

Enter the instance type (default t3.medium) : t2.micro

Далее помощник по миграции перенесет ваше приложение в сервис Elastic Beanstalk.

 

WWAMA - 18

По завершении миграции в интерфейсе командной строки (CLI) отобразится сообщение об успешном выполнении.

 

WWAMA - 19

5. Переход к интернет-приложению, размещенному в сервисе Elastic Beanstalk

Теперь, когда веб-сайт успешно перенесен, убедитесь, что он работает.

А. Доступ в веб-браузере

URL-адрес можно найти в выходных данных скрипта PowerShell.

Перейдите по этому URL-адресу в веб-браузере. Должно отобразиться ваше интернет-приложение, которое теперь работает в сервисе Elastic Beanstalk.

 

WWAMA - 20
WWAMA - 21

Б. Доступ в консоли Elastic Beanstalk

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

 

WWAMA - 22

6. Удаление ресурсов

На этом финальном шаге вы удалите все свои ресурсы.

А. Удаление приложения Elastic Beanstalk

Перейдите в консоль Elastic Beanstalk и щелкните расположенное справа меню Actions (Действия). Затем щелкните Terminate Environment (Завершить работу среды).

 

 

WWAMA - 22

Б. Удаление стека CloudFormation

Перейдите в консоль CloudFormation и удалите стек CloudFormation с именем WWAMAStack, созданный в начале этого практического занятия.

 

 

Поздравляем!

Вы успешно перенесли интернет‑приложение ASP.NET в полностью управляемую среду Elastic Beanstalk с помощью средства Windows Web Application Migration Assistant (WWAMA).


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

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

Дополнительные сведения см. в разделе AWS Elastic Beanstalk.

Была ли полезной информация, представленная в этом учебном пособии?

Спасибо!
Укажите, что вам понравилось.
Приносим извинения за причиненные неудобства
Вы обнаружили устаревшую, неточную или неподходящую информацию? Оставьте свой отзыв, чтобы мы могли улучшить качество предоставляемых услуг.