Dans cet exemple, vous allez apprendre à appliquer des fichiers d'état pour déployer et gérer rapidement des paramètres de configuration à l'aide de SaltStack Config. En tant qu'administrateur de système informatique ou membre de l'équipe DevOps, vous savez qu'il est très long d'ajouter ou de mettre à jour manuellement des paramètres de configuration sur plusieurs nœuds successivement, en particulier à grande échelle. Pour ne rien arranger, vous pouvez également introduire la possibilité d'erreurs de configuration ou d'une dérive de configuration lorsque vous devez gérer des centaines, voire des milliers de nœuds en même temps. Le système de fichiers d’état peut vous aider à résoudre ce problème. Dans cet exemple, vous allez apprendre à utiliser des fichiers d'état avec SaltStack Config pour ajouter et mettre à jour de manière cohérente des paramètres de configuration, tels que des paramètres de pare-feu sur un serveur Windows.

Avertissement :

Cet exemple pratique apporte des modifications à votre environnement et vous devez faire preuve de prudence après l'avoir exécuté. Essayez cet exemple en utilisant uniquement des nœuds dans un environnement de test ou de développement plutôt qu'un environnement de production.

Configurer les paramètres de pare-feu sur un nœud Windows

Pour configurer les paramètres du pare-feu sur un minion Windows en ouvrant le pare-feu pour le port 445 :

  1. Créez un fichier dans le serveur de fichiers SaltStack Config.
    1. Dans l'interface utilisateur de SaltStack Config, cliquez sur Configuration > Serveur de fichiers dans le menu latéral.
    2. Lorsque vous ouvrez l'espace de travail Serveur de fichiers pour la première fois, vous voyez le répertoire de fichiers et un nouveau fichier vide. Utilisez ce fichier vide pour créer un fichier.
  2. Créez un fichier d’état (SLS) dans le serveur de fichiers.
    1. Cliquez sur le menu Saltenv et sélectionnez base.
    2. En regard du menu sans étiquette, entrez le chemin d'accès et le nom de fichier. Utilisez /windows/firewall.sls.
    3. Dans le corps du fichier, copiez et collez le code de fichier d’état suivant (qui utilise la syntaxe YAML) :
      open_smb_port:
        win_firewall.add_rule:
          - name: SMB (445)
          - localport: 445
          - protocol: tcp
          - action: allow
      

      Pour plus d'informations sur le module de pare-feu Windows, reportez-vous à la section Modules Salt - Pare-feu Windows.

    4. Enregistrez le fichier d'état.
    5. Confirmez que le nouveau fichier apparaît dans le répertoire du serveur de fichiers sous base > windows > firewall.sls.
  3. Créez une tâche.
    1. Ouvrez l'espace de travail Tâches en cliquant sur Configuration > Tâches dans le menu latéral.
    2. Cliquez sur le bouton Créer une tâche.
      Note :

      Si le bouton Créer une tâche ne s'affiche pas, vous n'avez pas l'autorisation nécessaire pour créer des tâches. Contactez votre administrateur vRealize Automation pour obtenir l'accès ou pour créer cette tâche en votre nom afin de pouvoir exécuter ce didacticiel.

  4. Entrez les détails de la nouvelle tâche et enregistrez-la.
    Champ Exemple de valeur

    Nom

    Donnez à cette tâche un nom descriptif tel que « Configurer le pare-feu Windows ».

    Description

    Ajoutez une description qui indique aux autres utilisateurs l'objectif de cette tâche, par exemple « Ouvre le pare-feu pour le port 445 sur les nœuds Windows ».

    Commande

    Sélectionnez salt.

    La commande salt est utilisée pour les tâches exécutées sur des minions.

    Cibles

    Ne sélectionnez rien dans ce menu. Si vous laissez ce champ vide, vous pourrez sélectionner la cible lors de l'exécution de la tâche.

    Fonction

    Cliquez sur ce champ et commencez à saisir state.apply jusqu'à ce que vous puissiez sélectionner ce module.

    Ce champ vous permet de sélectionner le module Salt appliqué lors de l'exécution de cette tâche.

    Environnements

    Sélectionnez base dans le menu.

    États

    Sélectionnez le fichier d'état récemment créé dans le menu : windows.firewall.

    Arguments

    Ce module n'accepte pas les arguments, laissez donc ce champ vide.

  5. Maintenant que vous avez créé une tâche, exécutez-la en sélectionnant ses cibles.
    1. Dans le menu latéral, cliquez sur Minions pour ouvrir l'espace de travail Minions et afficher vos cibles.
    2. Dans le tableau Tous les minions, recherchez le minion Windows que vous souhaitez cibler pour cette tâche. Cochez la case en regard de ce minion et cliquez sur le bouton Exécuter la tâche.
    3. Dans la boîte de dialogue Exécuter la tâche, cliquez sur le menu Tâche et sélectionnez la tâche Configurer le pare-feu Windows que vous avez créée aux étapes précédentes. Vous pouvez entrer le nom de la tâche pour filtrer les tâches si nécessaire.
    4. Cliquez sur Exécuter maintenant.

      Si vous avez correctement exécuté la tâche, une notification s'affiche pour indiquer que le démarrage de la tâche a réussi.

  6. Vérifiez si la tâche est terminée ou non en cliquant sur Activité > Terminé dans le menu latéral.

    Si votre tâche ne s'affiche pas dans ce tableau, elle est peut-être toujours en cours d'exécution. Vous pouvez trouver les tâches en cours d'exécution en cliquant sur Activité > En cours. Continuez à actualiser Activité > Terminé jusqu'à ce que votre tâche s'affiche dans le tableau.

  7. Lorsque votre tâche est terminée, consultez ses résultats.
    1. Recherchez la ligne qui affiche votre tâche et cliquez sur son JID (numéro d'identification de la tâche).
      Note :

      Le JID s'affiche sous la forme d'un nombre avec un lien hypertexte comportant 20 chiffres. Par exemple, un JID possible pourrait être 20210823204015061902.

    2. Vérifiez les résultats de la tâche pour confirmer le pare-feu ouvert pour le port 445.

Résumé des résultats et informations clés

Lorsque vous examinez les résultats de la tâche, tenez compte des points suivants :

  • Les fichiers d'état constituent une méthode simple pour appliquer rapidement les paramètres de configuration appropriés (tels que les paramètres de pare-feu) sur un ensemble de nœuds ciblés. Les fichiers d'état garantissent que vos nœuds disposent de paramètres de configuration cohérents et que ces paramètres peuvent être déployés rapidement et efficacement à n'importe quelle échelle. Si vous devez modifier les paramètres de configuration, il vous suffit de mettre à jour le fichier d'état et de le réappliquer à tous les minions définis dans une cible.
  • Les fichiers d'état empêchent également toute dérive de configuration, c'est-à-dire lorsque vos configurations système deviennent de plus en plus différentes au fil du temps ou d'un nœud à un autre. Lorsque vous appliquez des fichiers d'état, SaltStack Config vérifie si la cible est dans l'état de configuration souhaité. Les états sont semblables à des stratégies de configuration. Ils définissent l'état cible que vous souhaitez pour le serveur. Lorsque vous appliquez cet état (stratégie) à un système, SaltStack Config effectue uniquement les opérations nécessaires pour rendre la configuration conforme à cet état (stratégie). Si elle est déjà conforme, SaltStack Config vous informe simplement qu'elle est déjà conforme et n'apporte aucune autre modification.
  • Dans cet exemple, vous avez stocké les fichiers d'état localement dans le serveur de fichiers SaltStack Config, mais sachez que vous pouvez stocker les fichiers d'état dans un référentiel Git privé contrôlé par la version. De nombreux utilisateurs lient SaltStack Config à des référentiels Git privés dans lesquels ils stockent et surveillent étroitement les modifications apportées aux fichiers d'état à l'aide d'une infrastructure programmable.