Размещение приложения Node.js в Azure Service Fabric

Это краткое руководство поможет вам развернуть имеющееся приложение (Node.js в этом примере) в кластере Service Fabric, выполняющемся в Azure.

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

Прежде чем приступить к работе, убедитесь, что имеется настроенная среда разработки, которая включает установку пакета SDK Service Fabric и Visual Studio 2019 или 2015.

У вас также должно быть имеющееся приложение Node.js для развертывания. В этом кратком руководстве используется простой веб-сайт Node.js, который можно загрузить здесь. Извлеките этот файл в папку <path-to-project>\ApplicationPackageRoot\<package-name>\Code\ после создания проекта на следующем шаге.

Если у вас еще нет подписки Azure, создайте бесплатную учетную запись Azure.

Создание службы

Запустите Visual Studio от имени администратора.

Создайте проект, нажав клавиши CTRL+SHIFT+N.

В диалоговом окне Создание проекта выберите Облако > Приложение Service Fabric.

Присвойте приложению имя MyGuestApp и нажмите кнопку Создать.

Важно!

Node.js может легко преодолеть лимит в 260 знаков для путей Windows. Используйте короткий путь для самого проекта, например c:\code\svc1. При необходимости можно выполнить эти инструкции , чтобы включить длинные пути к файлам в Windows 10.

Диалоговое окно

Вы можете создать любой тип службы Service Fabric из следующего диалогового окна. В рамках этого краткого руководства выберите Гостевой исполняемый файл.

Назовите службу MyGuestService и задайте параметрам справа следующие значения:

Параметр Значение
Папка пакета кода <папка с вашим приложением Node.js>
Поведение пакета кода Скопируйте содержимое папки в проект
Программа node.exe
Аргументы server.js
Рабочая папка CodePackage

Нажмите кнопку ОК.

Диалоговое окно

Visual Studio создаст проект приложения и проект службы субъекта, а затем отобразит их в обозревателе решений.

Проект приложения (MyGuestApp) не содержит никакого кода. Проект ссылается на набор проектов служб. Также он содержит данные еще трех типов.

  • Профили публикации
    Средства настройки для различных сред.

  • Создание и запуск скриптов PowerShell из консоли Configuration Manager
    Сценарий PowerShell для развертывания и обновления приложения.

  • Определение приложения
    Содержит манифест приложения в разделе ApplicationPackageRoot. Связанные файлы параметров приложения расположены в разделе ApplicationParameters. Они определяют характеристики этого приложения, и с помощью них можно настроить приложение для конкретной среды.

Обзор содержимого проекта службы вы найдете в статье Начало работы со службами Reliable Services в Service Fabric.

Настройка сети

Пример приложения Node.js, которое мы развертываем, использует порт 80, и нам нужно сообщить Service Fabric о необходимости использования этого порта.

Откройте файл ServiceManifest.xml в проекте. В нижней области манифеста находится <Resources> \ <Endpoints> с уже определенной записью. Измените эту запись, чтобы добавить Port, Protocol и Type.

  <Resources>
    <Endpoints>
      <!-- This endpoint is used by the communication listener to obtain the port on which to 
           listen. Please note that if your service is partitioned, this port is shared with 
           replicas of different partitions that are placed in your code. -->
      <Endpoint Name="MyGuestAppServiceTypeEndpoint" Port="80" Protocol="http" Type="Input" />
    </Endpoints>
  </Resources>

Развернуть в Azure

Если вы нажмете клавишу F5 и запустите проект, он будет развернут в локальном кластере. Тем не менее давайте лучше развернем его в Azure.

Щелкните проект правой кнопкой мыши и выберите Опубликовать, чтобы открыть диалоговое окно для публикации в Azure.

Публикация в диалоговом окне Azure для службы Service Fabric

Выберите целевой профиль PublishProfiles\Cloud.xml.

Выберите учетную запись Azure для развертывания, если вы этого еще не сделали. Если у вас ее нет, зарегистрируйте ее.

В разделе Конечная точка подключения: выберите кластер Service Fabric для развертывания. Если у вас нет кластера, выберите <Создать новый кластер> . Откроется окно веб-браузера на портале Azure. Дополнительные сведения см. в разделе Создание кластера на портале Azure.

При создании кластера Service Fabric обязательно установите для параметра настраиваемых конечных точек значение 80.

Конфигурация типа узла Service Fabric с настраиваемой конечной точкой

Создание нового кластера Service Fabric займет некоторое время. После его создания вернитесь в диалоговое окно публикации и выберите <Обновить> . Новый кластер появится в окне раскрывающегося списка. Выберите его.

Щелкните Опубликовать и дождитесь завершения развертывания.

Это может занять несколько минут. После завершения развертывания необходимо подождать некоторое время, чтобы приложение стало полностью доступным.

Тестирование веб-сайта

После публикации службы проверьте ее в веб-браузере.

Сначала откройте портал Azure и найдите службу Service Fabric.

Просмотрите колонку обзора адреса службы. Используйте доменное имя из свойства конечной точки подключения клиента. Например, http://mysvcfab1.westus2.cloudapp.azure.com.

Колонка обзора Service Fabric на портале Azure

Перейдите на этот адрес, где вы увидите ответ HELLO WORLD.

Удаление кластера

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

Дальнейшие действия

Ознакомьтесь с дополнительными сведениями о гостевых исполняемых файлах.