Partager via


Configurer un cluster Linux Service Fabric via WSL2 sur votre machine de développement Windows

Ce document explique comment configurer un cluster Linux Service Fabric local via WSL2 sur une machine de développement Windows. La configuration d'un cluster Linux local est utile pour tester rapidement les applications ciblées pour les clusters Linux mais développées sur une machine Windows.

Prérequis

Les clusters Service Fabric basés sur Linux ne s’exécutent pas directement sur Windows, mais pour permettre le prototypage multiplateforme, nous avons fourni un moyen de déployer un cluster Service Fabric dans la distribution Linux via WSL2 (sous-système Windows pour Linux) pour Windows.

Avant de commencer, vous avez besoin des éléments suivants :

  • WSL2 configuré dans Windows et vérifier que WSL 2 est la version par défaut
  • Configurer la distribution Linux Ubuntu 18.04 à partir de Microsoft Store lors de la configuration de WSL2

Conseil

Pour installer WSL2 sur votre machine Windows, suivez les étapes indiquées dans la documentation de WSL. Ensuite, installez Ubuntu-18.04, faites-en votre distribution par défaut et vérifiez son bon fonctionnement.

Configurer le SDK Service Fabric dans la distribution Linux

La configuration de Service Fabric ne peut pas être effectuée dans la distribution Linux WSL2 comme elle est effectuée dans le système d’exploitation Linux standard. Étant donné que systemd en tant que PID1 n’est pas en cours d’exécution dans la machine virtuelle et que systemd en tant que PID1 est un prérequis pour que le SDK SF fonctionne correctement. Pour activer systemd en tant que PID1, systemd-genie est utilisé comme solution de contournement. Pour plus d’informations sur systemd-genie, consultez les étapes d’installation du script de configuration systemd genie et d’installation manuelle qui couvrent l’installation du SDK systemd-genie et de service fabric.

Installation de script

Un script est fourni pour faciliter l’installation du SDK Service Fabric courant avec l’interface de ligne de commande sfctl. L’exécution du script suppose que vous acceptez les licences de tous les logiciels en cours d’installation. Vous pouvez également effectuer les étapes d’installation manuelle de la section suivante, qui présente les licences associées et les composants en cours d’installation.

Une fois que le script s’exécute, vous pouvez passer directement à la section Configurer un cluster local.

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

Installation manuelle

Suivez les étapes restantes de ce guide pour réaliser une installation manuelle du runtime Service Fabric et du Kit de développement logiciel (SDK) courant.

  1. Ouvrez un terminal.

  2. Connectez-vous à la distribution Linux WSL2

  3. Configurez systemd-genie comme mentionné dans configuration de systemd genie (si systemd-genie est déjà configuré, vous pouvez passer à l’étape suivante)

  4. Entrez dans l’espace de noms genie en utilisant genie-s

  5. Dans l’espace de noms genie, le SDK SF peut également être installé comme indiqué dans les étapes d’installation du script ou d’installation manuelle sous Configurer un cluster local Linux

  6. Fournissez les privilèges sudo à l’utilisateur actuel en créant une entrée <USERNAME\> ALL = (ALL) NOPASSWD:ALL dans /etc/sudoers

Configurer un cluster local

Service Fabric dans la machine virtuelle WSL2 est recommandé pour la gestion à partir de l’hôte Windows

  1. Installer le SDK Service Fabric (version 6.0 ou ultérieure) dans l’hôte Windows

  2. Dans Windows, le cluster peut être géré à l’aide de l’outil ServiceFabricLocalClusterManager fourni dans le cadre du SDK SF

  3. L’option de gestion du cluster local Linux est activée uniquement quand a. La machine virtuelle WSL2 est en cours d’exécution, b. Les packages systemd-genie, servicefabricruntime et servicefabricsdkcommon sont correctement installés dans la machine virtuelle et c. Systemd-genie est en état d’exécution. Vous pouvez configurer ou basculer vers un cluster local Linux à partir de cet outil.

  4. Une autre façon de configurer un cluster Linux consiste à déployer à l’aide des scripts d’installation de cluster fournis dans le kit SDK SF.

  5. Ouvrez un navigateur web et accédez à Service Fabric Explorer http://localhost:19080. Au moment où le cluster démarre, vous accédez au tableau de bord Service Fabric Explorer. La configuration du cluster peut prendre plusieurs minutes. Si votre navigateur ne parvient pas à ouvrir l’URL ou si Service Fabric Explorer n’affiche pas le cluster, patientez quelques minutes, puis réessayez. Vous pouvez également voir le cluster dans ServiceFabricExplorer fourni dans le SDK SF.

  6. Une fois le cluster opérationnel, vous pouvez vous connecter au cluster local dans PowerShell et Visual Studio.

Installation manuelle avec le package Debian ServiceFabric et ServieFabricSdkCommon personnalisé

Pour une installation manuelle de Service Fabric à partir de packages Debian personnalisés ou téléchargés, suivez le reste de ce guide.

  1. Ouvrez un terminal.

  2. Connectez-vous à la distribution Linux WSL2

  3. Clonez le fichier de configuration

sudo curl -s https://raw.githubusercontent.com/Azure/service-fabric-scripts-and-templates/master/scripts/SetupServiceFabric/SetupServiceFabric.sh > SetupServiceFabric.sh
  1. Rendez le fichier exécutable
sudo chmod +x SetupServiceFabric.sh
  1. Exécutez le script de configuration avec le chemin local des packages Debian. Vérifiez que les chemins fournis sont valides. Voici un exemple :
sudo ./SetupServiceFabric.sh --servicefabricruntime=/mnt/c/Users/testuser/Downloads/servicefabric.deb --servicefabricsdk=/mnt/c/Users/testuser/Downloads/servicefabric_sdkcommon.deb

Limites connues

Voici les limitations connues du cluster local qui s’exécute dans la distribution Linux :

  • Actuellement, seule la distribution Ubuntu-18.04 est prise en charge.
  • Pour une expérience fluide avec le Gestionnaire de cluster local et Visual Studio, il est recommandé de gérer le cluster à partir de scripts PowerShell ou de LocalClusterManager dans l’hôte Windows.

Forum Aux Questions (FAQ)

  1. Quelles sont les distributions Linux prises en charge pour la configuration du cluster local SF ?
    Actuellement, seul Ubuntu-18.04 est pris en charge pour le cluster local Linux.

  2. Windows et le cluster SF Linux peuvent-ils être exécutés en parallèle avec la configuration WSL2 ?
    Non, un seul cluster local peut être exécuté dans l’hôte ou dans la machine virtuelle invitée à la fois.

  3. Comment déployer un cluster local Linux à un nœud ?
    Un cluster local Linux à un nœud ou à cinq nœuds peut être déployé à partir du Gestionnaire de cluster local dans les options de menu. Lors du déploiement à partir du script d’installation, un cluster à cinq nœuds est déployé par défaut et pour un cluster à un nœud, CreateOneNodeCluster doit être transmis.

  4. Comment se connecter à un cluster local Linux dans PowerShell et Visual Studio ?
    Si le cluster local Linux est opérationnel, la cmdlet connect-servicefabriccluster doit se connecter automatiquement à ce cluster. De même, Visual Studio détecte automatiquement ce cluster local. Ce cluster peut également être connecté en fournissant un point de terminaison de cluster dans PowerShell ou Visual Studio.

  5. Où se trouvent les données du cluster SF pour un cluster local Linux ?
    Si vous utilisez la distribution Ubuntu-18.04, les données SF se trouvent sous \wsl$\Ubuntu-18.04\home\sfuser\sfdevcluster dans l’hôte Windows.

Étapes suivantes