Interface de ligne de commande Azure Service Fabric
L’interface de ligne de commande Azure Service Fabric est un utilitaire de ligne de commande pour interagir avec des entités Service Fabric, et les gérer. L’interface de ligne de commande Service Fabric peut être utilisée avec des clusters Windows ou Linux. L’interface de ligne de commande Service Fabric s’exécute sur toute plateforme prenant en charge Python.
Important
Deux utilitaires CLI sont utilisés pour interagir avec Service Fabric. Azure CLI est utilisé pour gérer les ressources Azure, comme un cluster Service Fabric hébergé par Azure. Service Fabric CLI est utilisé pour se connecter directement au cluster Service Fabric (peu importe où il est hébergé) et gérer le cluster, les applications et les services.
Prérequis
Avant l’installation, vérifiez que Python et pip sont installés dans votre environnement. Pour plus d’informations, consultez la documentation de démarrage rapide de pip et la documentation d’installation officielle de Python.
L’interface CLI prend en charge les versions 2.7 et 3.6+ de Python, Python 3.x étant recommandé.
Runtime Service Fabric cible
L’interface CLI Service Fabric a pour objectif de prendre en charge la dernière version du runtime du Kit de développement logiciel (SDK) Service Fabric. Utilisez le tableau suivant pour déterminer la version de CLI que vous devez installer :
Version de la CLI | Version du runtime prise en charge |
---|---|
Plus récente (~=10) | Plus récente (~=7,1) |
9.0.0 | 7.1 |
8.0.0 | 6.5 |
7.1.0 | 6.4 |
6.0.0 | 6.3 |
5.0.0 | 6.2 |
4.0.0 | 6.1 |
3.0.0 | 6.0 |
1.1.0 | 5.6, 5.7 |
Vous pouvez éventuellement spécifier une version cible de l’interface CLI à installer ajoutant à la commande pip install
le suffixe ==<version>
. Par exemple, pour la version 1.1.0, la syntaxe serait la suivante :
pip install -I sfctl==1.1.0
Remplacez la commande pip install
par la commande mentionnée précédemment, si nécessaire.
Pour plus d’informations sur les versions de l’interface de ligne de commande de Service Fabric, consultez la documentation GitHub.
Installer pip, Python et l’interface de ligne de commande Service Fabric
Il existe différentes façons d’installer pip et Python sur votre plateforme. Voici quelques étapes permettant de configurer rapidement les principaux systèmes d’exploitation avec Python 3 et pip.
Windows
Pour Windows 10, Windows Server 2016 et Windows Server 2012 R2, utilisez les instructions d’installation officielles standard. Par défaut, le programme d’installation de Python installe aussi pip.
Accédez à la page officielle des téléchargements de Python pour télécharger la dernière version de Python 3.x.
Démarrez le programme d’installation.
Au bas de l’invite, sélectionnez Ajouter Python 3.x à PATH.
Sélectionnez Installer maintenantet terminez l’installation.
Vous pouvez maintenant ouvrir une nouvelle fenêtre de commande et obtenir la version de Python et celle de pip.
python --version
pip --version
Exécutez ensuite la commande suivante pour installer Azure Service Fabric CLI (sfctl) et afficher la page d’aide CLI :
pip install sfctl
sfctl -h
Sous-systèmes Windows et Ubuntu pour Linux
Exécutez les commandes suivantes pour installer l’interface CLI Service Fabric :
sudo apt-get install python3
sudo apt-get install python3-pip
pip3 install sfctl
Vous pouvez ensuite tester l’installation avec la commande suivante :
sfctl -h
Si vous recevez une erreur de type « command not found » comme suit :
sfctl: command not found
Assurez-vous que le répertoire ~/.local/bin
est accessible depuis le chemin d’accès $PATH
:
export PATH=$PATH:~/.local/bin
echo "export PATH=$PATH:~/.local/bin" >> .shellrc
Si l’installation sur le sous-système Windows de Linux échoue en signalant que les autorisations du dossier sont incorrectes, vous devrez peut-être réessayer, en utilisant des autorisations élevées :
sudo pip3 install sfctl
Red Hat Enterprise Linux 7.4 (prise en charge de la préversion de Service Fabric)
Exécutez les commandes suivantes pour installer l’interface CLI de Service Fabric sur Red Hat :
sudo yum install -y python38
sudo yum install python38-setuptools
sudo easy_install-3.4 pip
sudo pip3 install sfctl
Pour tester l’installation, vous pouvez utiliser les étapes indiquées dans la section Sous-systèmes Windows et Ubuntu pour Linux.
MacOS
Pour MacOS, nous vous recommandons d’utiliser le Gestionnaire de package HomeBrew. Si HomeBrew n’est pas déjà installé, installez-le en exécutant la commande suivante :
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Installez ensuite à partir du terminal la dernière version de Python 3.x, pip et l’interface CLI de Service Fabric en exécutant les commandes suivantes :
brew install python3
pip3 install sfctl
sfctl -h
Syntaxe d’Azure CLI
Les commandes portent toujours le préfixe sfctl
. Pour obtenir des informations générales sur toutes les commandes dont vous pouvez vous servir, utilisez sfctl -h
. Pour obtenir de l’aide avec une seule commande, utilisez sfctl <command> -h
.
Les commandes suivent une structure répétable, où la cible de la commande précède le verbe ou l’action.
sfctl <object> <action>
Dans cet exemple, <object>
est la cible de <action>
.
Sélectionner un cluster
Avant d’effectuer toute opération, vous devez sélectionner un cluster auquel vous connecter. Vous pouvez par exemple exécuter la commande suivante pour sélectionner le cluster nommé testcluster.com
et vous y connecter :
Avertissement
N’utilisez pas de clusters Service Fabric non sécurisés dans un environnement de production.
sfctl cluster select --endpoint http://testcluster.com:19080
Le point de terminaison de cluster doit inclure le préfixe http
ou https
. Il doit inclure le port pour la passerelle HTTP. Le port et l’adresse sont identiques à l’URL de Service Fabric Explorer.
Pour les clusters sécurisés avec un certificat, vous pouvez spécifier un certificat codé PEM. Le certificat peut être spécifié en tant que fichier unique ou en tant que certificat et paire de clé. S’il s’agit d’un certificat auto-signé qui n’est pas signé par une autorité de certification, vous pouvez passer l’option --no-verify
pour ignorer la vérification de l’autorité de certification.
sfctl cluster select --endpoint https://testsecurecluster.com:19080 --pem ./client.pem --no-verify
Pour plus d’informations, consultez Se connecter à un cluster sécurisé.
Opérations de base
Les informations de connexion du cluster sont conservées dans plusieurs sessions de l’interface de ligne de commande Service Fabric. Une fois qu’un cluster Service Fabric est sélectionné, vous pouvez exécuter n’importe quelle commande Service Fabric sur le cluster.
Par exemple, pour obtenir l’état d’intégrité d’un cluster Service Fabric, utilisez la commande suivante :
sfctl cluster health
La commande débouche sur le résultat suivant :
{
"aggregatedHealthState": "Ok",
"applicationHealthStates": [
{
"aggregatedHealthState": "Ok",
"name": "fabric:/System"
}
],
"healthEvents": [],
"nodeHealthStates": [
{
"aggregatedHealthState": "Ok",
"id": {
"id": "66aa824a642124089ee474b398d06a57"
},
"name": "_Test_0"
}
],
"unhealthyEvaluations": []
}
Conseils et résolution des problèmes
Voici quelques suggestions et conseils pour résoudre les problèmes courants.
Convertir un certificat au format PFX en PEM
L’interface de ligne de commande Service Fabric prend en charge les certificats côté client en tant que fichiers PEM (extension .pem). Si vous utilisez des fichiers PFX à partir de Windows, vous devez convertir ces certificats au format PEM. Pour convertir un fichier PFX en fichier PEM, utilisez la commande suivante :
openssl pkcs12 -in certificate.pfx -out mycert.pem -nodes
De même, pour convertir un fichier PEM en fichier PFX, vous pouvez utiliser la commande suivante (aucun mot de passe n’est fourni ici) :
openssl pkcs12 -export -out Certificates.pfx -inkey Certificates.pem -in Certificates.pem -passout pass:''
Pour plus d’informations, consultez la documentation OpenSSL.
Problèmes de connexion
Certaines opérations peuvent générer le message suivant :
Failed to establish a new connection
Vérifiez que le point de terminaison du cluster spécifié est disponible et à l’écoute. Vérifiez également que l’interface utilisateur de Service Fabric Explorer est disponible au niveau de cet hôte et de ce port. Utilisez sfctl cluster select
pour mettre à jour le point de terminaison.
Journaux d’activité détaillés
Les journaux d’activité détaillés sont souvent utiles lorsque vous déboguez ou signalez un problème. L’indicateur --debug
augmente les commentaires de la sortie.
Aide et syntaxe de commande
Pour obtenir de l’aide sur une commande spécifique ou un groupe de commandes, utilisez l’indicateur -h
.
sfctl application -h
Voici un autre exemple :
sfctl application create -h
Mettre à jour l’interface de ligne de commande Service Fabric
Pour mettre à jour l’interface de ligne de commande Service Fabric, exécutez les commandes suivantes (remplacez pip
par pip3
selon ce que vous avez choisi lors de l’installation initiale) :
pip uninstall sfctl
pip install sfctl