Een Linux Service Fabric-cluster instellen via WSL2 op uw Windows-ontwikkelcomputer

In dit document wordt beschreven hoe u een lokaal Linux Service Fabric-cluster instelt via WSL2 op een Windows-ontwikkelcomputer. Het instellen van een lokaal Linux-cluster is handig om snel toepassingen te testen die zijn gericht op Linux-clusters, maar die zijn ontwikkeld op een Windows-computer.

Vereisten

Service Fabric-clusters op basis van Linux worden niet rechtstreeks op Windows uitgevoerd, maar om platformoverschrijdende prototypen mogelijk te maken, hebben we een manier geboden om het Service Fabric-cluster binnen Linux-distributie te implementeren via WSL2 (Windows-subsysteem voor Linux) voor Windows.

Voordat u aan de slag gaat, hebt u het volgende nodig:

  • WSL2 instellen in Windows en ervoor zorgen dat WSL 2 als standaardversie is
  • Ubuntu 18.04 Linux-distributie instellen vanuit de Microsoft Store tijdens het instellen van WSL2

Tip

Als u WSL2 wilt installeren op uw Windows-computer, volgt u de stappen in de WSL-documentatie. Zorg er na de installatie voor dat Ubuntu-18.04 is geïnstalleerd, maak dit uw standaarddistributie en het moet actief zijn.

Service Fabric SDK instellen in Linux-distributie

Service Fabric-installatie kan niet worden uitgevoerd in WSL2 Linux-distributie zoals dit wordt gedaan in het standaard Linux-besturingssysteem. Omdat systemd as PID1 niet wordt uitgevoerd binnen de VM en gesystemdeerd als PID1 is een vereiste voor een succesvolle werking van de SF SDK. Als u systemd als PID1 wilt inschakelen, wordt systemd-genie gebruikt als tijdelijke oplossing. Meer informatie over systemd-genie vindt u in systemd genie setup Script installation and manual installation steps (Scriptinstallatie en handmatige installatiestappen) behandelen de installatie van systemd-genie en service fabric sdk beide.

Installatie van script

Voor het gemak wordt een script verstrekt voor het installeren van de algemene Service Fabric-SDK samen met de sfctl CLI. Als u het script uitvoert, wordt ervan uitgegaan dat u akkoord gaat met de licenties voor alle software die wordt geïnstalleerd. U kunt ook de stappen voor handmatige installatie uitvoeren in de volgende sectie, waarin de bijbehorende licenties en de onderdelen die worden geïnstalleerd, worden weergegeven.

Nadat het script is uitgevoerd, kunt u verdergaan met Een lokaal cluster instellen.

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

Handmatige installatie

Volg de rest van deze handleiding voor handmatige installatie van de Service Fabric-runtime en de algemene SDK.

  1. Open een terminal.

  2. Aanmelden bij WSL2 Linux-distributie

  3. Systemd-genie instellen zoals vermeld in systemd genie setup (als systemd-genie al is ingesteld, kunt u naar de volgende stap gaan)

  4. Voer in de genie-naamruimte in met behulp van genie -s

  5. In de genie-naamruimte kan SF SDK ook worden geïnstalleerd zoals vermeld onder Scriptinstallatie of Handmatige installatiestappen in Een lokaal Linux-cluster instellen

  6. Sudo-bevoegdheden verlenen aan de huidige gebruiker door een vermelding <USERNAME\> ALL = (ALL) NOPASSWD:ALL te maken in /etc/sudoers

Een lokaal cluster instellen

Service Fabric in WSL2 VM wordt aanbevolen voor beheer vanuit hostvensters

  1. Service Fabric SDK (versie 6.0 of hoger) installeren in de Windows-host

  2. In Windows kan het cluster worden beheerd met het hulpprogramma ServiceFabricLocalClusterManager dat wordt geleverd als onderdeel van SF SDK

  3. De optie voor het beheren van een lokaal Linux-cluster is alleen ingeschakeld wanneer een. WSL2 VM wordt uitgevoerd, b. Systemd-genie-, servicefabricruntime- en servicefabricsdkcommon-pakketten worden correct geïnstalleerd in VM en c. Systemd-genie is actief. U kunt vanuit dit hulpprogramma een lokaal Linux-cluster instellen of overschakelen naar een lokaal Linux-cluster.

  4. Een andere manier om een Linux-cluster in te stellen, is door te implementeren met behulp van clusterinstallatiescripts die worden geleverd als onderdeel van DE SF SDK.

  5. Open een webbrowser en ga naar Service Fabric Explorer http://localhost:19080. Wanneer het cluster is gestart, ziet u het Service Fabric Explorer-dashboard. Het kan enkele minuten duren voordat het cluster is ingesteld. Als uw browser de URL niet kan openen of als Service Fabric Explorer het cluster niet weergeeft, wacht u enkele minuten en probeert u het opnieuw. U kunt het cluster ook zien in ServiceFabricExplorer in SF SDK.

  6. Zodra het cluster actief is, kunt u verbinding maken met een lokaal cluster in PowerShell en Visual Studio.

Handmatige installatie met aangepast Debian-pakket ServiceFabric en ServieFabricSdkCommon

Volg de rest van deze handleiding voor handmatige installatie van Service Fabric vanuit aangepaste of gedownloade Debian-pakketten.

  1. Open een terminal.

  2. Aanmelden bij WSL2 Linux-distributie

  3. Set-upbestand klonen

sudo curl -s https://raw.githubusercontent.com/Azure/service-fabric-scripts-and-templates/master/scripts/SetupServiceFabric/SetupServiceFabric.sh > SetupServiceFabric.sh
  1. Het bestand uitvoerbaar maken
sudo chmod +x SetupServiceFabric.sh
  1. Voer het set-upscript uit met het pad naar lokale debian-pakketten. Zorg ervoor dat de opgegeven paden geldig zijn. Hieronder ziet u een voorbeeld:
sudo ./SetupServiceFabric.sh --servicefabricruntime=/mnt/c/Users/testuser/Downloads/servicefabric.deb --servicefabricsdk=/mnt/c/Users/testuser/Downloads/servicefabric_sdkcommon.deb

Bekende beperkingen

Hier volgen bekende beperkingen van het lokale cluster dat wordt uitgevoerd in Linux-distributie:

  • Momenteel wordt ubuntu-18.04-distributie alleen ondersteund.
  • Voor een naadloze ervaring met Lokaal clusterbeheer en Visual Studio is het raadzaam om het cluster te beheren vanuit PowerShell-scripts of LocalClusterManager in De Windows-host.

Veelgestelde vragen

  1. Welke Linux-distributies worden ondersteund voor het instellen van lokale SF-clusters?
    Op dit moment wordt alleen Ubuntu-18.04 ondersteund voor een lokaal Linux-cluster.

  2. Kan het Windows- en Linux SF-cluster parallel worden uitgevoerd met de installatie van WSL2?
    Nee, in één keer kan slechts één lokaal cluster worden uitgevoerd in de host of in de gast-VM.

  3. Een lokaal Linux-cluster implementeren
    Eén of vijf knooppunten lokaal Linux-cluster kunnen worden geïmplementeerd vanuit Lokaal clusterbeheer via de menuopties. Tijdens de implementatie vanuit het installatiescript wordt standaard een cluster met vijf knooppunten geïmplementeerd en voor één knooppunt moet het cluster CreateOneNodeCluster worden doorgegeven.

  4. Verbinding maken met een lokaal Linux-cluster in PowerShell en Visual Studio
    Als het lokale Linux-cluster actief is, moet de cmdlet connect-servicefabriccluster automatisch verbinding maken met dit cluster. Vergelijkbare Visual Studio detecteert dit lokale cluster automatisch. Dit cluster kan ook worden verbonden door een clustereindpunt op te geven in PowerShell of Visual Studio.

  5. Waar bevinden de SF-clustergegevens zich voor het lokale Linux-cluster?
    Als u Ubuntu-18.04-distributie gebruikt, bevinden SF-gegevens zich op \wsl$\Ubuntu-18.04\home\sfuser\sfdevcluster van de Windows-host.

Volgende stappen