Развертывание приложения ASP.NET на Windows Server в Compute Engine

1. Обзор

ASP.NET — это веб-платформа с открытым исходным кодом для создания современных веб-приложений и сервисов с помощью .NET. ASP.NET создает веб-сайты на основе HTML5, CSS и JavaScript, которые просты, быстры и могут масштабироваться для миллионов пользователей.

В ходе этой лабораторной работы вы развернете простое приложение ASP.NET на Windows Server, работающее на Compute Engine . Эта лаборатория кода основана на лаборатории кода «Развертывание Windows Server с ASP.NET Framework для Compute Engine» . Возможно, вы захотите сначала завершить эту лабораторную работу.

Кроме того, вам понадобится Visual Studio 2013 или более поздней версии, чтобы написать приложение ASP.NET и развернуть его в Compute Engine.

Что вы узнаете

  • Как создать простое приложение ASP.NET.
  • Как запустить приложение ASP.NET локально в Visual Studio.
  • Как развернуть и запустить приложение ASP.NET на Windows Server в Compute Engine.

Что вам понадобится

Как вы будете использовать этот урок?

Прочтите только до конца Прочитайте его и выполните упражнения.

Как бы вы оценили свой опыт работы с Google Cloud Platform?

Новичок Средний Опытный

2. Настройка и требования

Самостоятельная настройка среды

У вас уже должен быть проект Google Cloud Platform из предыдущей лабораторной работы, поэтому нет необходимости создавать новый проект. Войдите в консоль Google Cloud Platform ( console.cloud.google.com ) и выберите проект из предыдущей лабораторной работы.

3. Загрузите приложение ASP.NET.

Загрузите образец в виде zip-файла и распакуйте его.

Альтернативно вы можете клонировать его репозиторий git.

git clone https://github.com/GoogleCloudPlatform/getting-started-dotnet.git

В любом случае у вас должна быть папка getting-started-dotnet со следующим содержимым.

1acce2c66bc3b8aa.png

4. Запустите приложение локально.

Дважды щелкните aspnet\1-hello-world\hello-world.sln . Это откроет решение в Visual Studio.

8a699ba7495ab79e.png

Взгляните на WebApiConfig.cs . Он включает в себя простой HTTP-обработчик HelloWorld.

public class HelloWorldHandler : HttpMessageHandler
{
  protected override Task<HttpResponseMessage> SendAsync(
       HttpRequestMessage request,
       CancellationToken cancellationToken)
  {
    return Task.FromResult(new HttpResponseMessage()
    {
      Content = new ByteArrayContent(Encoding.UTF8.GetBytes("Hello World."))
    });
  }
};

В Visual Studio нажмите F5, чтобы создать и запустить приложение. После того как Visual Studio загрузит зависимости NuGet и создаст приложение, в браузере должно появиться всплывающее сообщение Hello World.

77768b92a41434c2.png

Убедившись, что приложение работает локально, нажмите Shift + F5, чтобы остановить его.

5. Развертывание Windows Server с помощью ASP.NET Framework.

В этом разделе мы узнаем, как создать новый экземпляр виртуальной машины Google Compute Engine с установленными Windows Server и ASP.NET Framework с помощью Cloud Marketplace из Google Cloud Console.

Войдите в Google Cloud Console.

Перейдите в Google Cloud Console из другой вкладки или окна браузера по адресу https://console.cloud.google.com . Используйте учетные данные для входа, которые вы указали при регистрации в Google Cloud Platform, или те, которые вам предоставил инспектор лаборатории.

f6cb1591046097da.png

В Google Cloud Console щелкните значок меню « Продукты и услуги» в левом верхнем углу экрана:

32152624d878d9f8.png

Затем перейдите в Cloud Marketplace.

6c08c9a31e3a9c6c.png

Найдите ASP.NET Framework

Введите ASP.NET для поиска ASP.NET Framework , а затем щелкните поле результатов ниже.

d64d04962212c3c1.png

Запуск на Compute Engine

На следующем экране нажмите « Запустить на Compute Engine» .

Существует множество параметров, которые вы можете настроить при создании нового экземпляра. Давайте использовать следующее:

Имя

gcelab

Имя развертывания

windows-aspnet-instance

Зона

europe-west1-d Дополнительные сведения о зонах см. в документации по регионам и зонам .

Тип машины

1 vCPU (n1-standard-1) n1-standard-1 более чем достаточно для нашего веб-сайта ASP.NET с 1 ядром и 3,75 ГБ оперативной памяти. Однако вы можете выбрать машины меньшего или большего размера, вплоть до 32-ядерного процессора / 208 ГБ ОЗУ. Дополнительные сведения об этом и нестандартных типах машин см. в документации по типам машин . Примечание . Новый проект имеет квоту ресурсов по умолчанию, которая может ограничивать количество ядер ЦП. Вы можете запросить больше для своих проектов.

Версия ОС Windows Server

2016

Тип загрузочного диска

Standard persistent disk . Примечание. При необходимости вы можете выбрать более производительный твердотельный диск (SSD). См. «Параметры хранения» .

Размер диска в ГБ

100Мы используем значение по умолчанию — 100 ГБ, но вы можете увеличить или уменьшить его в зависимости от ваших потребностей.

Брандмауэр

Allow HTTP traffic
Allow HTTPS traffic
Allow WebDeploy traffic
Allow RDP traffic Оставьте настройки по умолчанию, которые создадут правила брандмауэра, разрешающие трафик HTTP, HTTPS, а также трафик WebDeploy и RDF.

Нажмите « Развернуть» , чтобы создать новый экземпляр виртуальной машины с Windows Server и ASP.NET Framework! Вы перейдете на новую страницу, где сможете увидеть прогресс.

3276c6d3647fd36.png

После завершения перейдите в Compute Engine из меню слева и выберите «Экземпляры виртуальных машин». Вы должны увидеть новую виртуальную машину в списке экземпляров виртуальных машин .

fc50b1cfd8b1f4b3.png

Если вы нажмете « Внешний IP-адрес» , вы также увидите веб-сайт IIS по умолчанию, обслуживаемый экземпляром.

iis.PNG

Обратите внимание, что вы также можете подключить к компьютеру удаленный рабочий стол (RDP), но сначала нам нужно создать пользователя и пароль Windows.

6. Создайте пользователя и пароль Windows.

Чтобы создать пользователя и пароль Windows, выберите «Создать или сбросить пароль Windows» .

cf9b67269c4fa290.png

Откроется новое окно, в котором вы сможете создать пользователя. Оставьте значение по умолчанию и выберите «Установить» . Через несколько секунд у вас должно появиться диалоговое окно «Новый пароль Windows» с вновь созданным паролем. Запишите пароль, он понадобится вам в следующем разделе.

7. Разверните приложение на своем Windows Server в Compute Engine.

Пришло время развернуть ваше приложение на Windows Server, работающем на экземпляре Compute Engine.

Сначала вам нужно найти внешний IP-адрес экземпляра Compute Engine, который вы развернули в разделе «Развертывание Windows Server с помощью ASP.NET Framework в Compute Engine» . В облачной консоли перейдите в раздел «Вычисления» > «Экземпляры виртуальных машин», найдите свой экземпляр и запишите его внешний IP-адрес.

8163b495fda4a4c5.png

Теперь вам понадобятся имя пользователя и пароль Windows, которые вы создали на предыдущем шаге.

В обозревателе решений Visual Studio щелкните проект правой кнопкой мыши и выберите «Опубликовать» в контекстном меню.

31dc67741553583e.png

В диалоговом окне «Публикация в Интернете» выберите «Пользовательский» в качестве цели публикации.

В диалоговом окне «Новый пользовательский профиль» укажите имя профиля развертывания и нажмите «ОК».

Заполните свой профиль следующим образом.

Сервер

The external IP address of your Compute Engine instance. This address can be found on the странице экземпляров виртуальных машин in the Cloud Console. The IP address is эфемерный , which is sufficient for our purposes.

Название сайта

Default Web Site . Примечание . Указанное здесь имя сайта должно совпадать с именем, которое отображается в диспетчере IIS на вашем экземпляре Compute Engine.

Имя пользователя

The username of the Windows user account you created on your Compute Engine instance.

Пароль

The password of the Windows user account you created on your Compute Engine instance.

Целевой URL

http:// Примечание . Целевой URL-адрес — это адрес, по которому ваша страница будет доступна после ее развертывания.

Нажмите «Проверить соединение» , чтобы убедиться в правильности свойств.

5587e66e1f61acd6.png

Поскольку установка Microsoft IIS в вашем развертывании по умолчанию использует самозаверяющий сертификат, во время процесса проверки вы увидите ошибку сертификата . Установите флажок « Сохранить этот сертификат для будущих сеансов Visual Studio» и нажмите «Принять» , чтобы принять сертификат.

e7cc4bdef3064b9b.png

Если ваша конфигурация действительна, нажмите «Настройки» . Нажмите «Параметры публикации файла» и установите флажок «Удалить дополнительные файлы в месте назначения» . Это важно для последующих шагов, когда вы публикуете новые веб-сайты в том же экземпляре Compute Engine.

1014554485ba6720.png

Нажмите «Опубликовать» , чтобы развернуть приложение. После завершения публикации Visual Studio откроет приложение в веб-браузере по умолчанию.

feab07f5ac573240.png

8. Очистка

Вот и все! Теперь пришло время очистить использованные вами ресурсы (чтобы сэкономить на расходах и стать хорошим гражданином облака).

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

a3152ac7b76cdd4e.png

Конечно, вы также можете удалить весь проект, но вы потеряете все выполненные вами настройки оплаты (предварительно необходимо отключить оплату проекта). Кроме того, удаление проекта прекращает выставление счетов только после завершения текущего платежного цикла.

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

Google Compute Engine является основой инфраструктуры как услуги Google Cloud Platform. Как вы видели, развернуть приложение ASP.NET на Windows Server в Compute Engine довольно просто.

Что мы рассмотрели

  • Как создать простое приложение ASP.NET.
  • Как запустить приложение ASP.NET локально в Visual Studio.
  • Как развернуть и запустить приложение ASP.NET на Windows Server в Compute Engine.

Следующие шаги

Лицензия

Эта работа распространяется под лицензией Creative Commons Attribution 2.0 Generic License.

/