Udostępnij za pośrednictwem


Konfigurowanie klastra usługi Service Fabric systemu Linux za pośrednictwem protokołu WSL2 na maszynie deweloperskiej z systemem Windows

W tym dokumencie opisano sposób konfigurowania lokalnego klastra usługi Service Fabric systemu Linux za pośrednictwem programu WSL2 na maszynie deweloperskiej z systemem Windows. Skonfigurowanie lokalnego klastra systemu Linux jest przydatne do szybkiego testowania aplikacji przeznaczonych dla klastrów systemu Linux, ale są opracowywane na maszynie z systemem Windows.

Wymagania wstępne

Klastry usługi Service Fabric oparte na systemie Linux nie działają bezpośrednio w systemie Windows, ale w celu włączenia międzyplatformowego tworzenia prototypów udostępniliśmy sposób wdrażania klastra usługi Service Fabric w dystrybucji systemu Linux za pośrednictwem protokołu WSL2 (Podsystem Windows dla systemu Linux) dla systemu Windows.

Przed rozpoczęciem potrzebne są następujące elementy:

  • WSL2 Skonfigurować w systemie Windows i upewnij się, że WSL 2 jako wersja domyślna
  • Konfigurowanie dystrybucji systemu Ubuntu 18.04 Linux ze sklepu Microsoft Store podczas konfigurowania protokołu WSL2

Napiwek

Aby zainstalować program WSL2 na maszynie z systemem Windows, wykonaj kroki opisane w dokumentacji programu WSL. Po zainstalowaniu upewnij się, że instalacja systemu Ubuntu-18.04 jest domyślna i powinna być uruchomiona.

Konfigurowanie zestawu SDK usługi Service Fabric w dystrybucji systemu Linux

Nie można wykonać instalacji usługi Service Fabric w dystrybucji systemu Linux WSL2 w sposób, w jaki odbywa się w standardowym systemie operacyjnym Linux. Ponieważ systemd as PID1 nie działa wewnątrz maszyny wirtualnej i systemd as PID1 jest warunkiem wstępnym, aby zestaw SF SDK działał pomyślnie. Aby włączyć system jako PID1, systemd-genie jest używany jako obejście. Więcej szczegółowych informacji na temat systemd-genie można znaleźć w temacie Systemd Genie setup Script installation and manual installation steps cover installation installation of systemd-genie and service fabric sdk both ( Instalacja skryptu systemd-genie i zestaw SDK usługi Service Fabric).

Instalacja skryptu

Dla wygody dostępny jest skrypt umożliwiający zainstalowanie wspólnego zestawu SDK usługi Service Fabric wraz z interfejsem wiersza polecenia sfctl. Podczas uruchamiania skryptu jest przyjmowane założenie, że wyrażasz zgodę na warunki licencji wszystkich instalowanych programów. Alternatywnie możesz uruchomić kroki instalacji ręcznej w następnej sekcji, która będzie przedstawiać skojarzone licencje i instalowane składniki.

Po pomyślnym uruchomieniu skryptu możesz przejść do części Konfigurowanie klastra lokalnego.

sudo curl -s https://raw.githubusercontent.com/Azure/service-fabric-scripts-and-templates/master/scripts/SetupServiceFabric/SetupServiceFabric.sh | sudo bash

Instalacja ręczna

Aby przeprowadzić ręczną instalację środowiska uruchomieniowego usługi Service Fabric i wspólnego zestawu SDK, wykonaj kroki z dalszej części tego przewodnika.

  1. Otwórz terminal.

  2. Zaloguj się do dystrybucji systemu Linux WSL2

  3. Skonfiguruj systemd-genie, jak wspomniano w konfiguracji systemd genie (jeśli systemd-genie jest już skonfigurowany, możesz przejść do następnego kroku)

  4. Wprowadź w przestrzeni nazw genie przy użyciu genie -s

  5. Wewnątrz przestrzeni nazw genie zestaw SDK sf można również zainstalować zgodnie z opisem w temacie Instalacja skryptu lub Procedura instalacji ręcznej w temacie Konfigurowanie klastra lokalnego systemu Linux

  6. Podaj uprawnienia sudo do bieżącego użytkownika, tworząc wpis <USERNAME\> ALL = (ALL) NOPASSWD:ALL w /etc/sudoers

Tworzenie klastra lokalnego

Usługa Service Fabric wewnątrz maszyny wirtualnej WSL2 jest zalecana do zarządzania z poziomu okien hosta

  1. Instalowanie zestawu SDK usługi Service Fabric (wersja 6.0 lub nowsza) na hoście systemu Windows

  2. W systemie Windows klaster można zarządzać przy użyciu narzędzia ServiceFabricLocalClusterManager udostępnionego jako część zestawu SDK SF

  3. Opcja zarządzania klastrem lokalnym systemu Linux jest włączona tylko wtedy, gdy. Maszyna wirtualna WSL2 jest uruchomiona, b. Pakiety Systemd-genie, servicefabricruntime i servicefabricsdkcommon są prawidłowo instalowane na maszynie wirtualnej i c. Systemd-genie jest w stanie uruchomienia. Możesz skonfigurować lub przełączyć się do klastra lokalnego systemu Linux z tego narzędzia.

  4. Innym sposobem skonfigurowania klastra systemu Linux jest wdrożenie przy użyciu skryptów konfiguracji klastra udostępnianych w ramach zestawu SDK sf.

  5. Otwórz przeglądarkę internetową i przejdź do narzędzia Service Fabric Explorer http://localhost:19080. Po uruchomieniu klastra zostanie wyświetlony pulpit nawigacyjny narzędzia Service Fabric Explorer. Skonfigurowanie klastra może potrwać kilka minut. Jeśli przeglądarka nie otworzy adresu URL lub narzędzie Service Fabric Explorer nie wyświetli klastra, zaczekaj kilka minut i spróbuj ponownie. Klaster można również wyświetlić w usłudze ServiceFabricExplorer dostępnej w zestawie SDK SF.

  6. Po uruchomieniu klastra możesz nawiązać połączenie z klastrem lokalnym w programie PowerShell i programie Visual Studio.

Instalacja ręczna z niestandardowym pakietem ServiceFabric i ServieFabricSdkCommon Debian

Aby przeprowadzić ręczną instalację usługi Service Fabric z niestandardowych lub pobranych pakietów debian, postępuj zgodnie z resztą tego przewodnika.

  1. Otwórz terminal.

  2. Zaloguj się do dystrybucji systemu Linux WSL2

  3. Klonowanie skonfigurowanego pliku

sudo curl -s https://raw.githubusercontent.com/Azure/service-fabric-scripts-and-templates/master/scripts/SetupServiceFabric/SetupServiceFabric.sh > SetupServiceFabric.sh
  1. Utwórz plik wykonywalny
sudo chmod +x SetupServiceFabric.sh
  1. Uruchom skrypt konfiguracji z lokalną ścieżką pakietów debian. Upewnij się, że podane ścieżki są prawidłowe. Poniżej przedstawiono przykład:
sudo ./SetupServiceFabric.sh --servicefabricruntime=/mnt/c/Users/testuser/Downloads/servicefabric.deb --servicefabricsdk=/mnt/c/Users/testuser/Downloads/servicefabric_sdkcommon.deb

Znane ograniczenia

Poniżej przedstawiono znane ograniczenia klastra lokalnego działającego wewnątrz dystrybucji systemu Linux:

  • Obecnie dystrybucja Ubuntu-18.04 jest obsługiwana tylko.
  • Aby bezproblemowo korzystać z menedżera klastra lokalnego i programu Visual Studio, zaleca się zarządzanie klastrem za pomocą skryptów programu PowerShell lub LocalClusterManager na hoście systemu Windows.

Często zadawane pytania

  1. Jakie dystrybucje systemu Linux są obsługiwane w przypadku konfiguracji klastra lokalnego SF?
    Obecnie tylko system Ubuntu-18.04 jest obsługiwany w przypadku klastra lokalnego systemu Linux.

  2. Czy klaster SF systemu Windows i Linux można uruchomić równolegle z konfiguracją WSL2?
    Nie, w jednym momencie można uruchomić tylko jeden klaster lokalny na hoście lub na maszynie wirtualnej gościa.

  3. Jak wdrożyć lokalny klaster z systemem Linux z jednym węzłem?
    Jeden węzeł lub pięć węzłów klastra lokalnego systemu Linux można wdrożyć z Menedżera klastra lokalnego z opcji menu. Podczas wdrażania ze skryptu konfiguracji domyślnie wdrażany jest pięć klastrów węzłów, a dla jednego klastra węzłów należy przekazać klaster CreateOneNodeCluster.

  4. Jak nawiązać połączenie z klastrem lokalnym systemu Linux w programie PowerShell i programie Visual Studio?
    Jeśli klaster lokalny systemu Linux jest uruchomiony, polecenie cmdlet connect-servicefabriccluster powinno automatycznie łączyć się z tym klastrem. Podobny program Visual Studio automatycznie wykryje ten klaster lokalny. Ten klaster można również połączyć, udostępniając punkt końcowy klastra w programie PowerShell lub visual studio.

  5. Gdzie znajdują się dane klastra SF dla klastra lokalnego systemu Linux?
    W przypadku korzystania z dystrybucji Ubuntu-18.04 dane SF znajdują się w folderze \wsl$\Ubuntu-18.04\home\sfuser\sfdevcluster z hosta systemu Windows.

Następne kroki