Создание изолированного кластера под управлением Windows Server

Azure Service Fabric позволяет создавать кластеры Service Fabric на любых виртуальных машинах или компьютерах под управлением Windows Server. Это означает, что вы сможете разворачивать и запускать приложения Service Fabric в любой среде с набором подключенных друг к другу компьютеров с Windows Server как в локальной среде, так и у любого поставщика облачных служб. Service Fabric предоставляет установочный пакет для создания кластеров Service Fabric, который называется изолированным пакетом Windows Server. Традиционные кластеры Service Fabric в Azure доступны в виде управляемой службы, а изолированные являются самостоятельными. Дополнительные сведения об их различиях см. статье Сравнение традиционных и изолированных кластеров Service Fabric в Azure под управлением Windows Server и Linux.

В этой статье описывается процесс создания изолированного кластера Service Fabric.

Примечание.

Этот изолированный пакет Windows Server сейчас доступен бесплатно и может использоваться для рабочих развертываний. Этот пакет может содержать новые функции Service Fabric, которые находятся на этапе предварительной версии. Прокрутите экран вниз до раздела Возможности на этапе предварительной версии в этом пакете, чтобы посмотреть список компонентов, которые находятся на этапе предварительной версии. Вы можете загрузить копию лицензионного соглашения.

Получение поддержки для Service Fabric для пакета Windows Server

Скачивание Service Fabric для пакета Windows Server

Чтобы создать кластер, используйте пакет Service Fabric для Windows Server (Windows Server 2012 R2 и более поздней версии), приведенный здесь:
Ссылка для скачивания изолированного пакета Service Fabric для Windows Server

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

Пакет среды выполнения Service Fabric автоматически скачивается во время создания кластера. Если развертывание с компьютера, не подключенного к Интернету, скачайте пакет среды выполнения из диапазона:
Ссылка для скачивания среды выполнения Service Fabric для Windows Server

Найдите примеры автономной конфигурации кластера по адресу:
Примеры конфигурации изолированного кластера

Создайте кластер.

Некоторые примеры файлов конфигурации кластера устанавливаются с помощью пакета установки. ClusterConfig.Unsecure.DevCluster.json — это самая простая конфигурация кластера: незащищенный кластер из трех узлов, работающий на одном компьютере. Другие файлы конфигурации описывают кластеры с одним или несколькими компьютерами, защищенными с помощью системы безопасности Windows или сертификатов X.509. Для работы с этим руководством не нужно изменять параметры конфигурации по умолчанию. Просто просмотрите файл конфигурации и ознакомьтесь с параметрами. В разделе Узлы описываются три узла в кластере: имя, IP-адрес, а также тип узла, домен сбоя и обновления. В разделе Свойства определяются безопасность, уровень надежности, сбор диагностических сведений и типы узлов для кластера.

Кластер, созданный в этой статье, не защищен. Любой пользователь может анонимно подключиться и выполнять операции управления, поэтому рабочие кластеры нужно обязательно защищать с помощью сертификатов X.509 или средств обеспечения безопасности Windows. Безопасность настраивается только во время создания кластера. После этого ее невозможно включить. Обновите файл конфигурации, включив в нем безопасность сертификата или безопасность Windows. См. дополнительные сведения о безопасности кластера Service Fabric в статье о защите кластеров.

Шаг 1. Создание кластера

Сценарий А. Создание незащищенного локального кластера разработки

Service Fabric можно развернуть на кластере с одним компьютером разработки с помощью файла ClusterConfig.Unsecure.DevCluster.json из примеров.

Распакуйте изолированный пакет на свой компьютер, скопируйте пример файла конфигурации на локальный компьютер, а затем в папке изолированного пакета запустите сценарий CreateServiceFabricCluster.ps1 в сеансе PowerShell с правами администратора.

.\CreateServiceFabricCluster.ps1 -ClusterConfigFilePath .\ClusterConfig.Unsecure.DevCluster.json -AcceptEULA

Дополнительные сведения об устранении неполадок указаны в подразделе "Настройка среды" статьи Планирование и подготовка развертывания изолированного кластера Service Fabric.

После завершения выполнения сценариев разработки кластер Service Fabric можно будет удалить с компьютера с помощью действий, описанных в разделе Удаление кластера.

Сценарий Б. Создание кластера с несколькими компьютерами

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

У администратора кластера, который развертывает и настраивает кластер, должны быть привилегии администратора на компьютере. Пакет Service Fabric нельзя установить на контроллере домена.

  1. Скрипт TestConfiguration.ps1 в изолированном пакете используется как рекомендуемый анализатор, проверяющий возможность развертывания кластера в конкретной среде. Здесь перечислены предварительные требования к среде при подготовке к развертыванию. Выполните сценарий чтобы проверить, можно ли создать кластер разработки:

    .\TestConfiguration.ps1 -ClusterConfigFilePath .\ClusterConfig.json
    

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

    Trace folder already exists. Traces will be written to existing trace folder: C:\temp\Microsoft.Azure.ServiceFabric.WindowsServer\DeploymentTraces
    Running Best Practices Analyzer...
    Best Practices Analyzer completed successfully.
    
    LocalAdminPrivilege        : True
    IsJsonValid                : True
    IsCabValid                 : True
    RequiredPortsOpen          : True
    RemoteRegistryAvailable    : True
    FirewallAvailable          : True
    RpcCheckPassed             : True
    NoConflictingInstallations : True
    FabricInstallable          : True
    Passed                     : True
    
  2. Создайте кластер: запустите сценарий CreateServiceFabricCluster.ps1 для развертывания кластера Service Fabric на каждом компьютере в конфигурации.

    .\CreateServiceFabricCluster.ps1 -ClusterConfigFilePath .\ClusterConfig.json -AcceptEULA
    

Примечание.

Трассировки развертывания записываются на компьютер или виртуальную машину, на которой запущен сценарий PowerShell CreateServiceFabricCluster.ps1. Их можно найти во вложенной папке DeploymentTraces в каталоге, в котором был запущен сценарий. Чтобы узнать, правильно ли развернут кластер Service Fabric на компьютере, найдите установленные файлы в каталоге FabricDataRoot, как описано в разделе FabricSettings файла конфигурации кластера (по умолчанию он находится в C:\ProgramData\SF). Кроме того, процессы FabricHost.exe и Fabric.exe должны отображаться в диспетчере задач.

Сценарий В. Создание кластера в автономном состоянии (не подключенного к Интернету)

Пакет среды выполнения Service Fabric автоматически скачивается во время создания кластера. При развертывании кластера на компьютерах, не подключенных к Интернету, необходимо скачать пакет среды выполнения Service Fabric отдельно и указать путь к нему во время создания кластера. Пакет среды выполнения можно скачать отдельно, с другого компьютера, подключенного к Интернету, по ссылке для скачивания среды выполнения Service Fabric для Windows Server. Скопируйте пакет среды выполнения туда, откуда вы развертываете не подключенный к Интернету кластер, и создайте кластер, выполнив CreateServiceFabricCluster.ps1 с включенным параметром -FabricRuntimePackagePath, как показано ниже:

.\CreateServiceFabricCluster.ps1 -ClusterConfigFilePath .\ClusterConfig.json -FabricRuntimePackagePath .\MicrosoftAzureServiceFabric.cab

.\ClusterConfig.json и .\MicrosoftAzureServiceFabric.cab — это пути к файлу конфигурации кластера и CAB-файлу среды выполнения соответственно.

Шаг 2. Подключение к кластеру

Подключитесь к кластеру, чтобы убедиться, что кластер запущен и доступен. Модуль PowerShell ServiceFabric устанавливается вместе со средой выполнения. Вы можете подключиться к кластеру с одного из узлов кластера или с удаленного компьютера с помощью среды выполнения Service Fabric. Подключитесь к кластеру, используя командлет Connect-ServiceFabricCluster.

Для подключения к незащищенному кластеру выполните следующую команду PowerShell.

Connect-ServiceFabricCluster -ConnectionEndpoint <*IPAddressofaMachine*>:<Client connection end point port>

Например:

Connect-ServiceFabricCluster -ConnectionEndpoint 192.13.123.234:19000

Примеры других способов подключения к кластеру см. в статье о безопасном подключении к кластеру. После подключения к кластеру используйте командлет Get-ServiceFabricNode, чтобы отобразить список узлов в кластере и сведения о состоянии каждого узла. Состояние работоспособности каждого узла должно иметь значение ОК.

PS C:\temp\Microsoft.Azure.ServiceFabric.WindowsServer> Get-ServiceFabricNode |Format-Table

NodeDeactivationInfo NodeName IpAddressOrFQDN NodeType  CodeVersion  ConfigVersion NodeStatus NodeUpTime NodeDownTime HealthState
-------------------- -------- --------------- --------  -----------  ------------- ---------- ---------- ------------ -----------
                     vm2      localhost       NodeType2 5.6.220.9494 0                     Up 00:03:38   00:00:00              OK
                     vm1      localhost       NodeType1 5.6.220.9494 0                     Up 00:03:38   00:00:00              OK
                     vm0      localhost       NodeType0 5.6.220.9494 0                     Up 00:02:43   00:00:00              OK

Шаг 3. Визуализация кластера с помощью Service Fabric Explorer

Service Fabric Explorer — хорошее средство для визуализации кластера и управления приложениями. Service Fabric Explorer — это служба, которая выполняется в кластере. Чтобы получить к ней доступ, перейдите в браузере по адресу http://localhost:19080/Explorer.

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

Service Fabric Explorer

Добавление и удаление узлов

Вы можете добавить узлы в изолированный кластер Service Fabric или удалить их из него в соответствии с изменениями потребностей компании. Подробные инструкции статье Добавление узлов в автономный кластер Service Fabric или удаление узлов из него .

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

Чтобы удалить кластер, запустите сценарий Powershell RemoveServiceFabricCluster.ps1 из папки пакета и передайте в него путь к файлу конфигурации JSON. При необходимости можно указать расположение журнала удаления.

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

# Removes Service Fabric from each machine in the configuration
.\RemoveServiceFabricCluster.ps1 -ClusterConfigFilePath .\ClusterConfig.json -Force
# Removes Service Fabric from the current machine
.\CleanFabric.ps1

Собираемые данные телеметрии и отказ от них

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

  1. Эта отправка является необходимой и не влияет на функциональные возможности кластера. Данные телеметрии отправляется только с узла, на котором первоначально выполняется диспетчер отработки отказа. С других узлов данные телеметрии не отправляются.
  2. Данные телеметрии включают:
  • количество служб;
  • количество типов служб;
  • количество приложений;
  • количество обновлений приложений;
  • количество единиц с отработкой отказа;
  • количество единиц со встроенной отработкой отказа;
  • количество единиц с неработоспособной отработкой отказа;
  • количество реплик;
  • количество встроенных реплик;
  • количество реплик в режиме ожидания;
  • количество автономных реплик;
  • длина общей очереди;
  • длина очереди запросов;
  • длина очереди единиц с отработкой отказа;
  • длина очереди фиксаций;
  • количество узлов;
  • выполнен ли контекст: значение True или False;
  • идентификатор кластера — это глобальный уникальный идентификатор, который случайным образом формируется для каждого кластера;
  • версия Service Fabric;
  • IP-адрес виртуальной машины или компьютера, с которых отправляются данные телеметрии.

Чтобы отключить сбор данных телеметрии, добавьте следующий фрагмент кода к элементу properties в конфигурации кластера: enableTelemetry: false.

Возможности на этапе предварительной версии в этом пакете

Нет.

Примечание.

Начиная с новой Общедоступной версии автономного кластера для Windows Server (версия 5.3.204.x), обновление кластера до будущих версий осуществляется вручную или автоматически. Дополнительные сведения см. в документе Upgrade a standalone Service Fabric cluster version (Обновление версии изолированного кластера Service Fabric).

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