Ajouter Ressource SaltStack Config au modèle de cloud
Ressource SaltStack Config
au modèle de cloudEn tant que développeur de modèle de cloud, vous pouvez ajouter des propriétés au fichier YAML qui installe le minion Salt lorsque vous déployez le modèle.
Les propriétés de base que vous ajoutez au modèle incluent l'accès à distance pour la machine que vous souhaitez déployer et les propriétés de configuration pour la
Ressource SaltStack Config
. La procédure inclut uniquement les propriétés sélectionnées. Le fichier YAML inclut d'autres propriétés Ressource SaltStack Config
qui ne sont pas utilisées dans cet exemple. Pour plus d'informations, consultez le schéma.Bien que cet exemple montre comment ajouter le nom d'utilisateur et le mot de passe pour les propriétés d'accès à distance, vous pouvez configurer une propriété secrète et l'ajouter au modèle. Pour obtenir un exemple, reportez-vous à la section Propriétés secrètes Automation Assembler.
Si le minion Salt est déployé dans un environnement Windows, reportez-vous à la section Déploiement des minions Windows pour connaître les exigences de dépendance supplémentaires.
- DansAutomation Assembler, sélectionnez .
- Ouvrez un modèle existant.
- Localisez laRessource SaltStack Configet faites-la glisser vers le canevas.
- Attachez laRessource SaltStack Configà la machine sur laquelle le minion sera installé.
- Dans le volet de code, ajoutez des propriétés à laRessource SaltStack Config.Vous n'êtes pas obligé d'inclure toutes les propriétés possibles. Les valeurs utilisées dans cet exemple sont expliquées dans le tableau.Par défaut, la propriété createTimeout est définie sur 30 minutes. Vous pouvez mettre à jour cette valeur si nécessaire en utilisant le format minute/heure (par exemple : 30m ou 1h).Cloud_SaltStack_1: type: Cloud.SaltStack properties: masterId: saltstack_enterprise_installer hosts: - ${resource["Cloud_VM_1".id} saltEnvironment: sse stateFiles: - /doe.sls variables: user: joe additionalMinionParams: grains: roles: - webserver - database additionalAuthParams: profile: tmp_dir: /var/runDescription des propriétésCloud_SaltStack_1utilisées dans cet exemple.PropriétéDescriptionmasterIdDans l'exemple de schéma, la valeur demasterIdestsaltstack_enterprise_installer.Vous pouvez définir les ID master deAutomation Configdans .hostsLa valeur de la propriétéhostsest l'ID de la machine ou du cluster de machines sur lesquelles vous souhaitez installer le minion. Par défaut, le nom de la machine est transmis en tant qu'ID de minion dansAutomation Config.Il est recommandé de choisir des noms de machine comportant 15 caractères ou moins, en particulier si vous déployez des minions sous Windows. Windows n'autorise pas les noms d'hôte de plus de 15 caractères.Si vous souhaitez définir une convention d'attribution de nom personnalisée pour les machines que vous souhaitez déployer, consultez Attribution de nom personnalisée pour les ressources déployées dansAutomation Assembler.saltEnvironmentDans cet exemple,sseest un emplacement de fichier pour les fichiers d'état.Vos fichiers d'état peuvent être enregistrés dans d'autres emplacements du serveur de fichiers deAutomation Configdans .stateFilesDans cet exemple,doe.slsest un fichier d'état par défaut fourni dans le répertoire du serveur de fichiers spécifié commesaltEnvironment.variablesLes variables définies dans le modèle de cloud sont transmises sous forme de Pillar à des états Salt. Dans cet exemple, la variableuserest transmise au fichierdoe.sls.Les variables peuvent être référencées dans les fichiers d'état à l'aide de Jinja, comme le montre l'exemple suivant :{% set username = pillar.get('user', 'random') %} friend: user.present: - names: - {{username}}Le fichierdoe.slsgarantit qu'un utilisateur, représenté par la variableuserdans le modèle de cloud, existe. Si la variable n'est pas spécifiée dans le modèle de cloud, elle garantit que l'utilisateurrandomest présent.additionalMinionParamsUtilisez cette propriété pour transmettre des paramètres de configuration supplémentaires pour le minion. Ces paramètres doivent être transmis en tant que dictionnaire :
- grains: utilisez cette propriété pour attribuer des grains Salt personnalisés au minion. Une ou plusieurs paireskey:valuesont acceptées. Les valeurs peuvent être une chaîne, un tableau ou un mappage.Vous pouvez uniquement attribuer des données de grain personnalisées lors du provisionnement d'une nouvelle machine. Vous ne pouvez pas attribuer de données de grain personnalisées lors de l'exécution de l'action de jour 2Attacher une ressource SaltStackouMettre à jour la configuration Salt.
additionalAuthParamsUtilisez cette propriété pour transmettre des paramètres d'autorisation supplémentaires pour le provisionnement du minion qui sera fusionné/remplacé par la configuration salt-cloud par défaut. Ces paramètres doivent être transmis en tant que dictionnaire.Une ou plusieurs paires key:value sont acceptées sous forme de chaîne, de tableau ou de mappage. Pour voir un exemple d'utilisation de cette propriété, consultez la section Cas d'utilisation : déploiement de minions à l'aide de l'API dans un environnement Linux.Vous ne pouvez pas attribuer de paramètres d'autorisation supplémentaires lors de l'exécution de l'action de jour 2Mettre à jour la configuration de Salt. - Ajoutez les propriétésremoteAccessà la machine qui héberge le minion Salt.Si vous déployez un minion Salt sur une machine Windows, la cléauthenticationpeut avoir la valeurusernamePasswordougeneratedPublicPrivateKey.publicPrivateKeyn'est pas pris en charge.Si vous déployez un minion Salt sur une machine Windows, la cléauthenticationdoit avoir la valeurusernamePassword..remoteAccess: authentication: usernamePassword username: adminUser password: adminPassword
- Vérifiez que votre fichier YAML inclut des propriétés semblables à l'exemple suivant.resources: Cloud-Network: type: Cloud.Network properties: networkType: existing Cloud_VM_1: type: Cloud.vSphere.Machine properties: image: ubuntu flavor: small remoteAccess: authentication: usernamePassword username: adminUser password: adminPassword networks: - network: ${resource["Cloud-Network"].id} Cloud_SaltStack_1: type: Cloud.SaltStack properties: masterId: saltstack_enterprise_installer hosts: - ${resource["Cloud_VM_1"].id} saltEnvironment: sse stateFiles: - /doe.sls variables: user: joe additionalMinionParams: grains: roles: - webserver - database
- Testez et déployez le modèle de cloud.Si le déploiement de votre minion échoue, consultez Dépanner les déploiements de minion.
- Vérifiez les propriétés de configuration Salt pour la machine déployée.
- Sélectionnezet ouvrez les détails du déploiement.
- Dans l'ongletTopologie, cliquez sur la machine et développez les propriétés deConfiguration Saltdans le volet de droite.
Vérifiez le minion dans Automation Config
Automation Config
Après avoir installé le minion sur la machine virtuelle, localisez le minion et exécutez les tâches ou les commandes sur la ressource.
- Pour ouvrirAutomation Config, cliquez sur le menu des applications dans le coin supérieur droit, puis cliquez surConsole de Cloud Services.
- Ouvrez le serviceVMware Aria Automation.
- Cliquez sur la vignette du service Config.
- DansAutomation Config, développezClés de minionet cliquez surAccepté.
- Dans la colonneID de minion, cliquez sur l'icône de filtre et entrez le nom du minion.Le nom par défaut du minion est le nom d'hôte de la machine virtuelle. Dans cet exemple, l'ID de minion est salt-vm-010.
- Pour afficher les détails, cliquez sur le nom du minion.Vous pouvez exécuter des tâches ou des commandes sur le minion. Par exemple, Exemple d'utilisation du disque. Cette tâche renvoie les statistiques d'utilisation du disque pour un minion.
Afficher les données de grain de Salt
Une fois que vous avez terminé le déploiement d'un minion Salt sur vos machines virtuelles, vous pouvez afficher les grains du minion dans
Automation Assembler
.Les grains Salt sont collectés pour le système d'exploitation, le nom de domaine, l'adresse IP, le noyau, le type de système d'exploitation et la mémoire du minion, ainsi que de nombreuses autres propriétés système. Si vous n'avez pas accès à
Automation Config
ou si vous souhaitez afficher rapidement les données de grain sans quitter l'interface utilisateur de Automation Assembler
, vous pouvez utiliser l'onglet Topologie
pour afficher les données de grain. Pour en savoir plus sur les données de grain, reportez-vous à la section Grains Salt.Pour afficher les grains d'un minion :
- DansAutomation Assembler, sélectionnez et localisez votre déploiement.
- Dans l'ongletTopologie, sélectionnez la machine virtuelle attachée à laRessource SaltStack Config.
- Localisez la sectionConfiguration de Saltdans le volet de droite et faites défiler la liste vers le bas pour afficher la liste des données de grain.
Les données de grain d'un minion sont récupérées après le déploiement du minion. Pour voir quand les données de grain ont été mises à jour pour la dernière fois, vous pouvez faire défiler l'écran jusqu'au bas de la section
Configuration Salt
.Vous pouvez également afficher les données et les attributs Salt Grain en cliquant sur
et en sélectionnant la machine souhaitée pour afficher les configurations et les attributs de la machine.