Pour configurer et vérifier votre instance de SaltStack Config Cloud, installez Salt et le plug-in master sur votre master Salt, générez un jeton d'API dans la console Cloud Services, puis connectez votre master Salt à SaltStack Config Cloud. Vous pouvez connecter des masters Salt sur site ou dans le cloud.
Conditions préalables
- Vérifiez que vous disposez des rôles suivants dans VMware Cloud Services :
- Rôle d'organisation : propriétaire de l'organisation ou administrateur de l'organisation
- Rôle de service : superutilisateur du service SaltStack Config Cloud
- Définissez votre organisation par défaut sur l'organisation disposant d'un accès au service SaltStack Config Cloud.
Présentation de la configuration
La configuration de SaltStack Config Cloud inclut les tâches suivantes.
- Installez Salt sur votre master Salt et les nœuds que vous prévoyez de gérer à l'aide de SaltStack Config Cloud. Consultez Étape 1 : installer Salt pour plus d'informations.
- Installez ou mettez à niveau le plug-in master sur les masters Salt qui doivent communiquer avec SaltStack Config Cloud. Consultez Étape 2 : installer et configurer le plug-in master pour plus d'informations.
- Générez un jeton d'API pour permettre à vos masters Salt de se connecter à SaltStack Config Cloud. Consultez Étape 3 : générer un jeton d'API pour plus d'informations.
- Connectez vos masters Salt à SaltStack Config Cloud. Consultez Étape 4 : connectez vos masters Salt à SaltStack Config Cloud pour plus d'informations.
- Acceptez les clés du master Salt dans l'interface utilisateur de SaltStack Config Cloud. Consultez Étape 5 : accepter les clés du master Salt pour plus d'informations.
Étape 1 : installer Salt
Avant de pouvoir utiliser SaltStack Config Cloud, vous devez installer Salt sur votre master Salt.
Vous devez installer le service de master Salt et le service de minion Salt sur le nœud du master Salt. Les instructions suivantes installent la dernière version de Salt sur RHEL 8. Pour plus d'informations sur l'installation de Salt sur d'autres systèmes d'exploitation ou sur d'autres versions de Python, reportez-vous au guide d'installation de Salt.
- Dans le terminal du master Salt, exécutez les commandes suivantes pour installer le référentiel et la clé du projet Salt :
sudo rpm --import https://repo.saltproject.io/py3/redhat/8/x86_64/latest/SALTSTACK-GPG-KEY.pub curl -fsSL https://repo.saltproject.io/py3/redhat/8/x86_64/latest.repo | sudo tee /etc/yum.repos.d/salt.repo
- Exécutez
sudo yum clean expire-cache
. - Installez le service salt-minion et le service salt-master sur votre master Salt :
sudo yum install salt-master sudo yum install salt-minion
- Créez un fichier
master.conf
dans le répertoire/etc/salt/minion.d
. Dans ce fichier, définissez l'adresse IP du master Salt pour qu'elle pointe vers elle-même :master: localhost
- Démarrez le service de master Salt et le service de minion Salt :
sudo systemctl enable salt-master && sudo systemctl start salt-master sudo systemctl enable salt-minion && sudo systemctl start salt-minion
Étape 2 : installer et configurer le plug-in master
Après avoir installé Salt sur votre infrastructure, vous devez installer et configurer le plug-in master, ce qui permet à vos masters Salt de communiquer avec SaltStack Config Cloud.
Si vous disposez déjà d'un master Salt, mettez à niveau le plug-in master avant de connecter votre master Salt à SaltStack Config Cloud. Pour plus d'informations, reportez-vous à la section Mettre à niveau le plug-in master.
Pour installer et configurer le plug-in master :
- Connectez-vous à votre master Salt.
- Installez la bibliothèque PyJWT et la bibliothèque Pika Python sur votre master Salt à l'aide des commandes suivantes :
salt-call --local pip.install pika==1.2.0 target='/usr' salt-call --local pip.install pyjwt==2.3.0 target='/usr'
- Si nécessaire, téléchargez le fichier wheel du plug-in master sur Customer Connect.
Le plug-in master est inclus dans le fichier .tar.gz du programme d'installation automatisé. Après avoir téléchargé et extrait le fichier.tar.gz, vous pouvez trouver le plug-in master dans le répertoire
sse-installer/salt/sse/eapi_plugin/files
. - Installez le plug-in master en installant manuellement le fichier wheel Python mis à jour. Utilisez les exemples de commandes suivants, en utilisant le nom exact du fichier wheel :
RHEL/CentOS
salt-call --local pip.install SSEAPE-file-name.whl target='/usr'
Ubuntusalt-call --local pip.install SSEAPE-file-name.whl target='/usr'
- Générez les paramètres de configuration du master.
- Vérifiez que le répertoire
/etc/salt/master.d
existe ou créez-le. - Exécutez la commande suivante pour générer le fichier de configuration maître.
sudo sseapi-config --all > /etc/salt/master.d/raas.conf
Si l'exécution de cette commande provoque une erreur, reportez-vous à la section Dépannage de SaltStack Config Cloud.
- Vérifiez que le répertoire
- Redémarrez le service du master Salt.
sudo systemctl restart salt-master
Étape 3 : générer un jeton d'API
Avant de pouvoir connecter votre master Salt à SaltStack Config Cloud, vous devez générer un jeton d'API à l'aide de la console Cloud Services. Ce jeton est utilisé pour authentifier votre master Salt dans VMware Cloud Services.
Pour générer un jeton d'API :
- Dans la barre d'outils de la console Cloud Services, cliquez sur votre nom d'utilisateur et sélectionnez .
- Cliquez sur Générer le jeton.
- Remplissez le formulaire.
- Entrez un nom pour le jeton.
- Sélectionnez la durée de vie du jeton. La durée par défaut est de six mois.
Note : Un jeton sans date d'expiration peut être un risque de sécurité s'il est compromis. Si cela se produit, vous devez révoquer le jeton.
- Définissez les étendues du jeton.
Portée Description Rôles d'organisation Les rôles d'organisation déterminent l'accès d'un utilisateur aux ressources de l'organisation.
Pour accéder au service SaltStack Config Cloud, vous devez sélectionner le rôle Administrateur d'organisation ou Propriétaire d'organisation.
Rôles de service Les rôles de service sont des ensembles prédéfinis et intégrés qui accordent l'accès à VMware Cloud Services.
Pour accéder au service SaltStack Config Cloud, recherchez le service SaltStack Config et sélectionnez le rôle de service Master Salt.
- (Facultatif) Définissez une préférence d'e-mail pour recevoir un rappel lorsque votre jeton est sur le point d'expirer.
- Cliquez sur Générer.
Le jeton d'API récemment généré s'affiche dans la fenêtre Jeton généré.
- Enregistrez les informations d'identification du jeton dans un emplacement sécurisé.
Après avoir généré le jeton, vous pourrez uniquement voir le nom du jeton sur la page Jetons de l'API, pas les informations d'identification. Pour régénérer le jeton, cliquez sur Régénérer.
- Cliquez sur Continuer.
Étape 4 : connectez vos masters Salt à SaltStack Config Cloud
Après avoir généré un jeton d'API, vous pouvez l'utiliser pour connecter votre master Salt à SaltStack Config Cloud.
Pour connecter votre master Salt :
- Dans le terminal du master Salt, enregistrez votre jeton d'API en tant que variable d'environnement.
export CSP_API_TOKEN=<api token value>
- Exécutez la commande suivante pour connecter votre master Salt à SaltStack Config Cloud en remplaçant les valeurs de
ssc-url
etcsp-url
par les URL spécifiques à votre région.sseapi-config join --ssc-url <SSC URL> --csp-url <CSP URL>
Note :Si vous utilisez
sudo
, exécutez la commande suivante :sudo CSP_API_TOKEN=<api token value> sseapi-config join --ssc-url <SSC URL> --csp-url <CSP URL>
Nom de la région URL SSC URL CSP US (États-Unis) https://ssc-gateway.mgmt.cloud.vmware.com https://console.cloud.vmware.com DE (Allemagne) https://de.ssc-gateway.mgmt.cloud.vmware.com https://console.cloud.vmware.com IN (Inde) https://in.ssc-gateway.mgmt.cloud.vmware.com https://console.cloud.vmware.com L'exemple de code suivant montre un exemple de réponse réussie dans la région US.2022-08-16 21:28:26 [INFO] SSEAPE joining SSC Cloud... v8.9.1.1 2022-08-16T15:28:12 2022-08-16 21:28:26 [INFO] Retrieving CSP auth token. 2022-08-16 21:28:27 [INFO] Creating new oauth app. 2022-08-16 21:28:27 [INFO] Finished with oauth app [Salt Master App for master id:my-salt-master] in org [6bh70973-b1g2-716c-6i21-i9974a6gdc85]. 2022-08-16 21:28:29 [INFO] Added service role [saltstack:master] for oauth app [Salt Master App for master id:my-salt-master]. 2022-08-16 21:28:29 [INFO] Created pillar [CSP_AUTH_TOKEN]. 2022-08-16 21:28:29 [INFO] Updated master config. Please restart master for config changes to take effect. 2022-08-16 21:28:29 [INFO] Updated master cloud.conf. 2022-08-16 21:28:29 [INFO] Validating connectivity to SaltStack Cloud instance [https://ssc-gateway.mgmt.cloud.vmware.com] 2022-08-16 21:28:29 [INFO] Successfully validated connectivity to SaltStack Cloud instance [https://ssc-gateway.mgmt.cloud.vmware.com]. Response: {'version': 'v8.9.0.5', 'vipVersion': '8.9.0'} 2022-08-16 21:28:29 [INFO] Finished SSEAPE joining SSC Cloud... v8.9.1.1 2022-08-16T15:28:12
Si l'exécution de cette commande provoque une erreur, reportez-vous à la section Dépannage de SaltStack Config Cloud.
- Redémarrez le service du master Salt.
systemctl restart salt-master
- Répétez ce processus pour chaque master Salt.
Note : Après avoir connecté chaque master Salt à SaltStack Config Cloud, vous pouvez supprimer le jeton d'API. Cela est requis uniquement pour connecter votre master Salt à SaltStack Config Cloud.
Après avoir exécuté la commande sseapi-config
, une application OAuth est créée dans votre organisation pour chaque master Salt. Les masters Salt utilisent l'application OAuth pour obtenir un jeton d'accès qui est ajouté à chaque demande à SaltStack Config Cloud. Vous pouvez afficher les détails de l'application OAuth en sélectionnant .
La commande crée également des données de Pillar appelées CSP_AUTH_TOKEN
sur le master Salt. Les Pillars sont des structures de données stockées sur le master Salt et transmises à un ou plusieurs minions autorisés à accéder à ces données. Les données de Pillar sont stockées dans /srv/pillar/csp.sls
et contiennent l'ID client, le secret, votre ID d'organisation et l'URL CSP. Si vous devez changer votre secret, vous pouvez exécuter à nouveau la commande sseapi-config join
.
Exemple de données de Pillar :
CSP_AUTH_TOKEN: csp_client_id: kH8wIvNxMJEGGmk7uCx4MBfPswEw7PpLaDh csp_client_secret: ebH9iuXnZqUOkuWKwfHXPjyYc5Umpa00mI9Wx3dpEMlrUWNy95 csp_org_id: 6bh70973-b1g2-716c-6i21-i9974a6gdc85 csp_url: https://console.cloud.vmware.com
Étape 5 : accepter les clés du master Salt
Après avoir connecté votre master Salt à SaltStack Config Cloud, vous devez accepter la clé du master Salt dans l'interface utilisateur de SaltStack Config Cloud.
Pour accepter la clé du master Salt :
- Connectez-vous à l'interface utilisateur de SaltStack Config.
- Dans la barre de navigation supérieure gauche, cliquez sur
Menu, puis sélectionnez Administration pour accéder à l'espace de travail Administration. Cliquez sur l'onglet Clés de master.
- Cochez la case en regard de la clé du master pour la sélectionner. Cliquez ensuite sur Accepter la clé.
- Si vous avez déjà connecté vos minions Salt à votre master Salt, une alerte s'affiche et indique que vous avez des clés de minion en attente à accepter. Pour accepter ces clés de minion, accédez à
- Cochez les cases en regard de vos minions pour les sélectionner. Cliquez ensuite sur Accepter la clé.
La clé est maintenant acceptée. Au bout de quelques secondes, le minion s'affiche sous l'onglet Accepté et dans l'espace de travail Cibles.
.
Vous pouvez vérifier que votre master Salt et vos minions Salt communiquent en exécutant une commande test.ping dans l'interface utilisateur de SaltStack Config. Pour plus d'informations, reportez-vous à la section Exécution d'une tâche ad hoc depuis l'espace de travail Cibles.