Abonnez-vous au flux

Introduction

Fonction de Red Hat Ansible Automation Platform, Automation Mesh permet aux entreprises de distribuer des charges de travail d'automatisation via des connexions de type pair à pair dans le cloud hybride, à l'aide de réseaux existants. En associant Automation Mesh et Red Hat Ansible Automation Platform on Microsoft Azure, les entreprises peuvent mettre à l'échelle leurs processus automatisés avec un seul plan de contrôle à deux niveaux :

  1. L'architecture d'Ansible Automation Platform on Microsoft Azure évolue automatiquement en fonction des charges de travail qu'elle peut automatiser directement, par routage direct ou en transit, ce qui évite aux clients de gérer eux-mêmes l'infrastructure d'automatisation.
  2. Lorsque l'automatisation doit être déployée sur des ressources d'autres datacenters ou en périphérie du réseau, ou lorsqu'Ansible Automation Platform on Microsoft Azure ne peut pas se connecter directement, les clients peuvent configurer un plan d'exécution Automation Mesh connecté à Ansible Automation Platform on Microsoft Azure.

Le plan d'exécution Automation Mesh se compose de deux types de nœuds : les nœuds de saut et les nœuds d'exécution.

Les nœuds de saut facilitent la communication avec les nœuds d'exécution et acheminent le trafic vers ces derniers.

Les nœuds d'exécution exécutent les processus automatisés sur les ressources de point de terminaison cibles.

De nombreuses entreprises utilisent des environnements de cloud hybride avec des charges de travail et des ressources dans des clouds publics ou privés et plusieurs datacenters. Il leur est essentiel d'atteindre ces réseaux et de placer les nœuds d'exécution à proximité des points de terminaison d'automatisation. Voici un exemple de ce type de configuration.

mermaid-diagram-2024-01-10-083728

Depuis le lancement d'Automation Controller 4.5, il est possible de mettre en œuvre des nœuds de saut dans Ansible Automation Platform on Microsoft Azure.

Toute souscription pour Ansible Automation Platform inclut 10 licences Red Hat Enterprise Linux (RHEL) qui peuvent être utilisées pour exécuter des composants d'Ansible Automation Platform. Dans cet exemple, nous allons utiliser ces licences pour mettre en œuvre Automation Mesh à l'aide d'un nœud de saut et d'un nœud d'exécution qui s'exécute sur un site distant à partir d'Ansible Automation Platform on Microsoft Azure.

Voyons comment déployer et tirer parti de cette capacité.

Préparation du réseau

Dans ces exemples, la configuration du réseau utilise les ports par défaut. Elle peut être adaptée aux besoins de l'entreprise. Pour les configurations plus complexes, consultez la documentation d'Automation Mesh afin d'obtenir davantage de conseils.

Le composant Automation Mesh utilise le chiffrement TLS pour la communication, de sorte que le trafic traversant des réseaux externes (tel qu'Internet) est chiffré en transit.

  1. La zone démilitarisée (DMZ) est ouverte sur le port 27199 pour le trafic Internet public, qui autorise la communication avec l'instance Ansible Automation Platform on Microsoft Azure.
  2. Le trafic réseau peut être acheminé entre la DMZ et le réseau privé sur le port 27199.
  3. Le trafic réseau au sein du réseau privé peut être acheminé sur les ports où les processus automatisés s'exécutent, comme le 22 pour SSH et le 443 pour les API.

Préparez également des ressources sur le réseau privé, comme une machine virtuelle. Dans Ansible Automation Platform, créez un inventaire avec la ressource privée à l'aide de son adresse IP ou de son nom d'hôte privés.

Préparation des instances RHEL

Les machines Automation Mesh peuvent être déployées et configurées de plusieurs manières, notamment en les automatisant avec Ansible. À titre d'exemple, cette section décrit le processus manuel. RHEL 9 s'exécute ici sur une architecture x64_64.

  1. Déployez les instances RHEL sur les réseaux distants où la communication est requise.
    1. Dans l'exemple ci-dessus, une instance réside dans le réseau DMZ avec une adresse IP publique et une autre réside sur le réseau privé.
    2. Les images ISO de RHEL sont disponibles sur access.redhat.com.
  2. Connectez-vous par SSH à chacune des instances RHEL et suivez les étapes ci-dessous. En fonction des contrôles mis en place et de l'accès au réseau, des proxys SSH ou d'autres modèles d'accès peuvent être requis.
  3. Assurez-vous que les instances RHEL sont autorisées par subscription-manager.

    sudo subscription-manager register --auto-attach
  4. Abonnez-vous aux référentiels Ansible Automation Platform.

    sudo subscription-manager repos --enable ansible-automation-platform-2.4-for-rhel-9-x86_64-rpms
  5. Installez les paquets ansible-core.

    sudo dnf install -y ansible-core
  6. Installez la collection Ansible ansible.receptor.

    ansible-galaxy collection install ansible.receptor
  7. Créez ou copiez une clé SSH qui pourra être utilisée plus tard pour vous connecter du nœud de saut au nœud d'exécution. Il peut s'agir d'une clé temporaire utilisée uniquement pour la configuration d'Automation Mesh, ou d'une clé à longue durée de vie. L'utilisateur et la clé SSH interviendront plus tard.
  8. Ouvrez le port 27199 pour la communication avec le récepteur.

    sudo firewall-cmd --permanent --zone=public --add-port=27199/tcp

Les instances RHEL sont maintenant prêtes à exécuter Automation Mesh.

Configuration dans Automation Controller

Nous devons configurer les nœuds dans Automation Controller. Dans notre exemple, nous déployons un nœud de saut et un nœud d'exécution.

  1. Connectez-vous à Automation Controller.
  2. Accédez au menu Instances sous Administration.
  3. Cliquez sur Add.
  4. Remplissez les champs avec les données suivantes pour configurer le nœud d'exécution.
    1. Host name : <the private ip address of the host>
    2. Description : Execution node
    3. Listener Port : 27199
    4. Instance Type : Execution

  1. Cliquez sur Save.
  2. Sélectionnez l'icône Install Bundle pour télécharger le paquet d'installation.Enregistrez ces paramètres pour une utilisation ultérieure.
  3. Cliquez sur Back to instances.
  4. Cliquez sur Add.
  5. Remplissez les champs avec les données suivantes pour configurer le nœud de saut.
    1. Host name :  <the public ip address or host name of the host>
    2. Description : Hop node
    3. Listener Port : 27199
    4. Instance Type : Hop
    5. Peers : cliquez sur la loupe et sélectionnez le nœud d'exécution précédemment créé.
    6. Cochez l'option Peers from control nodes.

L'adresse IP indiquée est donnée à titre d'exemple uniquement.

  1. Cliquez sur Save.
  2. Sélectionnez l'icône Install Bundle pour télécharger le paquet d'installation. Enregistrez ces paramètres pour une utilisation ultérieure.
  3. Cliquez sur Topology View sous Administration. La configuration d'Automation Mesh doit être à l'état « installed ».

Les adresses IP indiquées sont données à titre d'exemple uniquement.

Adresse IP du nœud de saut : 20.123.123.972

Adresse IP du nœud d'exécution : 10.10.0.2

Installation des bundles Automation Mesh

Les deux bundles téléchargés dans la section précédente utilisent Ansible Automation Platform pour configurer chacun des nœuds Automation Mesh. L'emplacement d'exécution de ces bundles dépend de l'accès réseau aux ressources. Dans notre exemple, nous partons du principe que vous disposez d'un accès SSH au nœud de saut et que vous pouvez exécuter l'automatisation des bundles pour les deux machines à partir du nœud de saut.

  1. Copiez les deux fichiers de bundle depuis votre machine locale vers le nœud de saut. Les adresses IP ou noms d'hôte sont propres à votre environnement.
scp /path/to/hop/bundle/20.123.123.972_install_bundle.tar.gz \ user@20.123.123.972

scp /path/to/exec/bundle/10.10.0.2_install_bundle.tar.gz user@20.123.123.972
  1. Extrayez les deux fichiers tar.gz.
tar -xzvf /path/to/hop/bundle/20.123.123.972_install_bundle.tar.gz
tar -xzvf /path/to/exec/bundle/10.10.0.2_install_bundle.tar.gz
  1. Accédez au répertoire du dossier du nœud d'exécution.
cd /path/to/exec/bundle/10.10.0.2_install_bundle
  1. Ouvrez le fichier inventory.yml dans un éditeur de texte.
vim /path/to/exec/bundle/10.10.0.2_install_bundle/inventory.yml
  1. Modifiez le champ user afin qu'il contienne l'utilisateur SSH pour le nœud d'exécution.
---
all:
  hosts:
    remote-execution:
      ansible_host: 10.10.0.2
      ansible_user: <username> # user provided
      ansible_ssh_private_key_file: ~/.ssh/id_rsa
  1. Si nécessaire, modifiez le nom de la clé SSH pour qu'elle corresponde à celle configurée sur cet hôte lors des étapes précédentes.
  2. Enregistrez le fichier inventory.yml.
  3. Exécutez le playbook pour installer Automation Mesh sur l'hôte du nœud d'exécution.
ansible-playbook -i inventory.yml install_receptor.yml
  1. Une fois l'installation terminée, accédez au répertoire du dossier du nœud de saut.
cd /path/to/hop/bundle/20.123.123.972_install_bundle
  1. Ouvrez le fichier inventory.yml dans un éditeur de texte.
vim /path/to/hop/bundle/20.123.123.972_install_bundle/inventory.yml
  1. Modifiez le champ user afin qu'il contienne l'utilisateur SSH pour le nœud de saut.
---
all:
  hosts:
    remote-execution:
      ansible_host: 20.123.123.972
      ansible_user: <username> # user provided
      ansible_ssh_private_key_file: ~/.ssh/id_rsa
  1. Si nécessaire, modifiez le nom de la clé SSH pour qu'elle corresponde à celle configurée sur cet hôte lors des étapes précédentes.
  2. Enregistrez le fichier inventory.yml.
  3. Exécutez le playbook pour installer Automation Mesh sur l'hôte du nœud de saut.
ansible-playbook -i inventory.yml install_receptor.yml

Vérification de la connectivité

  1. Dans votre navigateur web, ouvrez à nouveau Automation Controller.
  2. Cliquez sur Instances dans le menu de gauche, sous Administration.
  3. Cochez la case à côté du nœud d'exécution.
  4. Cliquez sur Run health check. Cette étape peut prendre plusieurs minutes.
  5. Si Automation Mesh fonctionne correctement, tous les nœuds doivent être à l'état Ready.

Création d'un groupe d'instances

  1. Cliquez sur Instance Groups, sous Administration.
  2. Cliquez sur Add.
  3. Cliquez sur Add instance group.
  4. Créez le groupe d'instances avec le champ suivant :
    1. Name : Remote Network

  1. Cliquez sur Save.
  2. Sélectionnez l'onglet Instances.
  3. Cliquez sur Associate.
  4. Cochez la case à côté du nœud d'exécution créé.
  5. Cliquez sur Save.

Démonstration

Maintenant que nous avons configuré les nœuds de saut et d'exécution, lançons quelques tâches depuis Automation Controller et observons comment elles passent du nœud de saut aux nœuds d'exécution pour exécuter les processus automatisés.

  1. Ouvrez l'inventaire que vous avez créé au début de ce guide.
  2. Cliquez sur Edit pour le modifier.
  3. Cliquez sur la loupe à côté de l'option Instance Groups.
  4. Sélectionnez le groupe d'instances Remote Network.
  5. Cliquez sur OK.
  6. Cliquez sur Save.
  7. Sélectionnez l'onglet Hosts.
  8. Cochez la case à côté de l'hôte de machine virtuelle que vous avez créé sur le réseau privé.
  9. Cliquez sur Run Command.
  10. Exécutez le module ping sur l'hôte.

Si le ping s'exécute correctement, Automation Mesh est bien configuré. Vous pouvez exécuter des tâches d'automatisation sur des hôtes d'un réseau privé.

Étapes suivantes

Pour en savoir plus sur Ansible Automation Platform on Microsoft Azure, rendez-vous sur cette page.

Pour en savoir plus sur Automation Mesh, consultez ce guide.

Pour en savoir plus sur le déploiement d'Ansible Automation Platform sur d'autres plateformes cloud d'hyperscalers, rendez-vous sur cette page.

Pour découvrir des ateliers pratiques en autonomie sur Ansible Automation Platform, rendez-vous sur cette page.

  • Atelier sur Ansible Automation Platform on Microsoft Azure
  • Atelier sur la prise en main d'Automation Mesh
  • Documentation sur Red Hat Ansible Automation Platform Automation Mesh pour les installations basées sur des opérateurs
  • Documentation sur Red Hat Ansible Automation Platform Automation Mesh pour les installations basées sur des machines virtuelles

À propos des auteurs

Hicham is responsible for technical marketing of the Red Hat Ansible Automation Platform on Clouds. Hicham has been in the software industry for over 20 years and for many of them focused on cloud management. Hicham has been a frequent presenter at events and conferences like VMworld, vForum, VMUG, VMLive, Gartner, Dell Technology World, AWS re:Invent, HPE Discover, Cloud Field Day, Red Hat Summit, AnsibleFest, in addition to Customer events.

Read full bio

Scott Harwell is a Principal Product Manager at Red Hat for Ansible on Clouds. His focus is the delivery of Ansible Automation Platform offerings on hyperscaler cloud vendors such as Microsoft Azure and AWS. Prior to joining Red Hat, Scott held product management, development, and consulting roles for Oracle, AST Corporation, Tech Machine, and Volvo. Scott is a cloud enthusiast with experience and certifications across many cloud providers. He is passionate about automation and likes to find creative ways to improve IT, technical, and business processes.

Read full bio
UI_Icon-Red_Hat-Close-A-Black-RGB

Parcourir par canal

automation icon

Automatisation

Les dernières nouveautés en matière d'automatisation informatique pour les technologies, les équipes et les environnements

AI icon

Intelligence artificielle

Actualité sur les plateformes qui permettent aux clients d'exécuter des charges de travail d'IA sur tout type d'environnement

open hybrid cloud icon

Cloud hybride ouvert

Découvrez comment créer un avenir flexible grâce au cloud hybride

security icon

Sécurité

Les dernières actualités sur la façon dont nous réduisons les risques dans tous les environnements et technologies

edge icon

Edge computing

Actualité sur les plateformes qui simplifient les opérations en périphérie

Infrastructure icon

Infrastructure

Les dernières nouveautés sur la plateforme Linux d'entreprise leader au monde

application development icon

Applications

À l’intérieur de nos solutions aux défis d’application les plus difficiles

Original series icon

Programmes originaux

Histoires passionnantes de créateurs et de leaders de technologies d'entreprise