Установка кластера Service Fabric на платформе Linux на компьютере разработчики Windows
В этом документе описывается настройка установка локального кластера Service Fabric на платформе Linux на компьютерах разработки Windows. Установка локального кластера Linux удобна для быстрого тестирования приложений, нацеленных на кластеры Linux, но разработанных на компьютере Windows.
Необходимые компоненты
Кластеры Service Fabric на основе Linux не работают в Windows, но для включения кроссплатформенного создания прототипов мы предусмотрели в Service Fabric для Linux контейнер Docker кластера с одним полем, который можно развернуть с помощью Docker для Windows.
Перед началом работы вам потребуются:
- не менее 4 ГБ ОЗУ;
- Последняя версия Docker для Windows
- Docker должен работать в режиме контейнеров для Linux
Совет
Чтобы установить Docker на компьютере Windows, следуйте инструкциям, приведенным в документации Docker. Затем проверьте правильность установки.
Создание локального контейнера и настройка Service Fabric
Чтобы настроить локальный контейнер Docker и запустить его в кластере Service Fabric, выполните следующие действия.
Обновите конфигурацию управляющей программы Docker на узле следующим образом и перезапустите управляющую программу Docker:
{ "ipv6": true, "fixed-cidr-v6": "2001:db8:1::/64" }
Рекомендуемый способ обновления заключается в переходе по следующему пути:
- Значок Docker > Параметры > Подсистема Docker
- Добавьте новые поля, перечисленные выше;
- Применение и перезапуск: перезапустите управляющую программу Docker, чтобы изменения вступили в силу.
Запустите кластер с помощью PowerShell.
Ubuntu 20.04 LTS:docker run --name sftestcluster -d -v /var/run/docker.sock:/var/run/docker.sock -p 19080:19080 -p 19000:19000 -p 25100-25200:25100-25200 mcr.microsoft.com/service-fabric/onebox:u20
Ubuntu 18.04 LTS:
docker run --name sftestcluster -d -v /var/run/docker.sock:/var/run/docker.sock -p 19080:19080 -p 19000:19000 -p 25100-25200:25100-25200 mcr.microsoft.com/service-fabric/onebox:u18
Совет
По умолчанию вы получите образ с последней версией Service Fabric. Сведения о конкретных редакциях см. на странице Service Fabric OneBox в Docker Hub.
Необязательно: создайте расширенный образ Service Fabric.
В новом каталоге создайте файл
Dockerfile
для построения настраиваемого образа:Примечание.
Указанный выше образ можно адаптировать с помощью Dockerfile, чтобы добавить в контейнер дополнительные программы или зависимости. Например, добавленный элемент
RUN apt-get install nodejs -y
разрешает поддержку приложенийnodejs
в качестве гостевых исполняемых файлов.FROM mcr.microsoft.com/service-fabric/onebox:u18 RUN apt-get install nodejs -y EXPOSE 19080 19000 80 443 WORKDIR /home/ClusterDeployer CMD ["./ClusterDeployer.sh"]
Совет
По умолчанию вы получите образ с последней версией Service Fabric. Сведения о конкретной версии см. на странице центра Docker.
Чтобы создать образ для многократного использования на основе файла
Dockerfile
, откройте терминал и с помощью командыcd
перейдите в каталог, в котором хранитсяDockerfile
. Затем выполните следующий код:docker build -t mysfcluster .
Примечание.
Для выполнения этой операции потребуется некоторое время, но она выполняется только один раз.
Теперь при необходимости вы можете быстро запустить локальную копию Service Fabric, выполнив следующий код:
docker run --name sftestcluster -d -v /var/run/docker.sock:/var/run/docker.sock -p 19080:19080 -p 19000:19000 -p 25100-25200:25100-25200 mysfcluster
Совет
Укажите имя экземпляра контейнера, которое будет более удобным для чтения.
Если приложение ожидает передачи данных через определенные порты, их необходимо указать с помощью дополнительных тегов
-p
. Например, если приложение ожидает передачи данных через порт 8080, добавьте следующий тег-p
:docker run -itd -p 19000:19000 -p 19080:19080 -p 8080:8080 --name sfonebox mcr.microsoft.com/service-fabric/onebox:u18
Для запуска кластера потребуется некоторое время. Чтобы просмотреть состояние работоспособности кластера, можно перейти к панели мониторинга кластера
http://localhost:19080
или просмотреть журналы с помощью следующей команды:docker logs sftestcluster
После успешного развертывания кластера, как показано на шаге 4, с компьютера под управлением Windows можно перейти по адресу
http://localhost:19080
, чтобы найти панель мониторинга Service Fabric Explorer. На этом этапе можно подключиться к кластеру с помощью инструментов на компьютере разработки Windows и развернуть приложение, нацеленное на кластеры Service Fabric на платформе Linux.Примечание.
Подключаемый модуль Eclipse сейчас не поддерживается в Windows.
Когда все будет готово, остановите работу контейнера и очистите его с помощью следующей команды:
docker rm -f sftestcluster
Известные ограничения
Ниже перечислены известные ограничения для локального кластера, запущенного в контейнере для Mac:
- Служба DNS в контейнере не запускается и в настоящее время не поддерживается. Проблема №132
- Для выполнения приложений на основе контейнеров необходимо запустить SF на узле Linux. Вложенные приложения контейнеров в настоящее время не поддерживаются.
Следующие шаги
- Настройка кластера Linux в Windows с использованием WSL2
- Создание первого приложения Azure Service Fabric
- Приступите к работе с Eclipse.
- Просмотрите другие примеры Java.
- Сведения о вариантах поддержки Service Fabric