Une fois que vous avez reçu l'accès à votre instance de SaltStack Config Cloud, vous pouvez connecter vos masters Salt à SaltStack Config Cloud. Vous pouvez connecter des masters Salt sur site ou dans le cloud.

Chaque master Salt doit être autorisé à se connecter à votre instance de SaltStack Config Cloud. Pour autoriser votre master Salt, vous devez générer un jeton d'API à partir de la page de votre compte dans VMware Cloud Services Platform (CSP). Exportez ensuite le jeton d'API en tant que variable d'environnement sur votre master Salt et exécutez une commande pour connecter votre master Salt à SaltStack Config Cloud.

Avant de commencer

  • Vous devez disposer d'un environnement Salt existant, composé d'un master Salt et d'au moins un minion Salt. Chaque minion Salt doit déjà être connecté à un master Salt. Reportez-vous à la section Installer ou mettre à niveau Salt (préinstallation) pour plus d'informations sur l'installation des services de master et de minion Salt sur vos nœuds.
  • Vous devez installer la version 8.10.1.2 ou une version ultérieure du plug-in Master sur chaque master Salt.
  • Vous devez installer les bibliothèques PyJWT et Pika Python sur votre master Salt à l'aide des commandes suivantes :
    pip3 install pika==1.2.0
    pip3 install pyjwt==2.3.0
  • Vous devez disposer des rôles CSP suivants :
    • Rôle d'organisation : propriétaire de l'organisation ou administrateur de l'organisation
    • Rôle de service : superutilisateur pour le service SaltStack Config dans CSP
  • Définissez votre organisation par défaut sur l'organisation disposant d'un accès au service SaltStack Config Cloud.

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 CSP. Ce jeton est utilisé pour authentifier votre master Salt avec CSP.

Pour générer un jeton d'API :

  1. Dans la barre d'outils de la console Cloud Services, cliquez sur votre nom d'utilisateur et sélectionnez Mon compte > Jetons d'API.
  2. Cliquez sur Générer le jeton.

    Page Jetons d'API dans CSP

  3. Remplissez le formulaire.

    Générer le formulaire de jeton dans CSP

    1. Entrez un nom pour le jeton.
    2. 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.
    3. 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ôle Administrateur d'organisation sélectionné sur la page Générer un jeton d'API
      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, sélectionnez le rôle de service SaltStack Config et sélectionnez tous les rôles de service disponibles.

      Tous les rôles de service sélectionnés pour le service SaltStack Config
    4. (Facultatif) Définissez une préférence d'e-mail pour recevoir un rappel lorsque votre jeton est sur le point d'expirer.
    5. Cliquez sur Générer.

      Le jeton d'API récemment généré s'affiche dans la fenêtre Jeton généré.

  4. 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.

  5. Cliquez sur Continuer.

Connecter votre master 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 :

  1. Connectez-vous à votre master Salt et vérifiez que le fichier /etc/salt/master.d/raas.conf existe.

    S'il n'existe pas, vous devez installer et configurer le plug-in master.

  2. Dans le terminal du master Salt, enregistrez votre jeton d'API en tant que variable d'environnement.
    export CSP_API_TOKEN=<api token value>
  3. Si votre master Salt exécute la version 8.9.0 ou une version antérieure du plug-in master, vous devez réenregistrer votre master Salt dans SaltStack Config Cloud. Pour plus d'informations, reportez-vous à la section Reconnexion des masters Salt à SaltStack Config Cloud.
  4. Si votre master Salt exécute la version 8.9.1 ou une version ultérieure du plug-in master, exécutez la commande suivante pour connecter votre master Salt à SaltStack Config Cloud, en remplaçant les valeurs ssc-url et csp-url par vos URL spécifiques à la région.
    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
    
  5. Redémarrez le service du master Salt.
    systemctl restart salt-master
  6. 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. Ceci 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 CSP pour chaque master Salt. Les masters Salt utilisent l'application OAuth pour obtenir un jeton d'accès CSP qui est ajouté à chaque demande à SaltStack Config Cloud. Vous pouvez afficher les détails de l'application OAuth en sélectionnant Organisation > Applications Oauth.

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.

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

Si vous devez changer votre secret, vous pouvez exécuter à nouveau la commande sseapi-config join.

Pour en savoir plus sur les données de Pillar, consultez Création de fichiers d'état et de données de Pillar.

Accepter la clé du master Salt

Lors du démarrage du master Salt (sauf si vous utilisez l'authentification par mot de passe), un fichier de clé publique est généré. Le master commence à s'exécuter, mais la communication avec SaltStack Config Cloud échoue jusqu'à l'acceptation de la clé.

Pour accepter la clé du master Salt :

  1. Connectez-vous à l'interface utilisateur de SaltStack Config.
  2. Dans la barre de navigation supérieure gauche, cliquez sur l'icône de menu Menu, puis sélectionnez Administration pour accéder à l'espace de travail Administration. Cliquez sur l'onglet Clés de master.
  3. Dans le menu latéral, cliquez sur En attente pour afficher la liste de toutes les clés de master en attente.

    Si vous ne voyez pas la clé de master, reportez-vous à la section Dépannage de SaltStack Config Cloud.

  4. Cochez la case en regard de la clé du master pour la sélectionner. Cliquez ensuite sur Accepter la clé.
  5. Une fois que vous avez accepté la clé du master, une alerte s'affiche et indique que vous avez des clés en attente à accepter. Pour accepter ces clés de minion, accédez à Clés de minion > En attente.
  6. Cochez les cases en regard de vos minions pour les sélectionner. Cliquez ensuite sur Accepter la clé.
  7. Cliquez sur Accepter dans la boîte de dialogue de confirmation.

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.

Prochaines étapes

Après avoir exécuté une commande test.ping, vous pouvez commencer à utiliser SaltStack Config Cloud pour provisionner, configurer et déployer des logiciels sur vos machines virtuelles à n'importe quelle échelle à l'aide de l'automatisation basée sur les événements.

Vous pouvez également intégrer SaltStack Config Cloud à Cloud Assembly pour déployer des minions Salt et des fichiers d'état à l'aide de modèles de cloud.

Le tableau suivant répertorie les ressources utiles pour obtenir plus d'informations.

Pour plus d'informations sur… Reportez-vous à
Gestion de l'accès des utilisateurs dans SaltStack Config Cloud
Intégration de SaltStack Config Cloud à Cloud Assembly Configurer une intégration SaltStack Config dans vRealize Automation Cloud
Fonctionnalités clés dans SaltStack Config Démarrage de SaltStack Config