Note :

Utiliser des noeuds Hop dans Oracle Linux Automation Manager

Présentation

Oracle Linux Automation Manager prend en charge une technologie de maillage de services basée sur le projet de récepteur en amont. Le maillage de services relie les noeuds de contrôleur, de saut et d'exécution dans un réseau superposé au moyen d'une application de récepteur basée sur un démon.

Oracle Linux Automation Manager introduit le noeud hop dans le maillage de services. Ce type de noeud permet de relayer les tâches des noeuds de plan de contrôle vers les noeuds d'exécution sur des réseaux distants ou restreints de la même manière que SSH utilise un hôte de saut. Cette mise en oeuvre permet d'exécuter des travaux sur différents noeuds d'exécution et de rapprocher les tâches des systèmes nécessitant une automatisation.

L'exemple d'inventaire ci-dessous définit un déploiement de grappe à plusieurs noeuds dans l'environnement de laboratoire gratuit. Pour automatiser l'installation de la grappe sur votre matériel, consultez le livre de jeu dans la section Oracle Linux Automation Manager du projet Livres de lecture accessibles.

Cet exemple d'inventaire crée une grappe composée de deux noeuds de plan de contrôle, de deux noeuds d'exécution, d'un noeud de saut avec un seul noeud d'exécution distant et d'une base de données distante.

playbook-inv

Cette image présente la topologie du maillage de services pour cette grappe.

configuration local-remote-exec

Ce tutoriel présente plusieurs méthodes pour vérifier le statut d'un maillage de services et confirmer la communication topologique entre les différents noeuds.

Objectifs

Dans ce tutoriel, vous apprendrez à :

Préalables

Pour plus de détails sur l'installation d'Oracle Linux Automation Manager, voir le guide d'installation d'Oracle Linux Automation Manager.

Déployer des instances Oracle Linux Automation Manager

Note : Si vous exécutez votre propre location, lisez les préalables du projet linux-virt-labs GitHub README.md et remplissez les conditions requises avant de déployer l'environnement de laboratoire.

  1. Ouvrez un terminal sur le Luna Desktop.

  2. Clonez le projet linux-virt-labs GitHub.

    git clone https://github.com/oracle-devrel/linux-virt-labs.git
    
  3. Accédez au répertoire de travail.

    cd linux-virt-labs/olam
    
  4. Installez les collections requises.

    ansible-galaxy collection install -r requirements.yml
    
  5. Mettez à jour la configuration de l'instance Oracle Linux.

    cat << EOF | tee instances.yml > /dev/null
    compute_instances:
      1:
        instance_name: "olam-control-01"
        type: "control"
      2:
        instance_name: "olam-control-02"
        type: "control"
      3:
        instance_name: "olam-execution-01"
        type: "execution"
      4:
        instance_name: "olam-execution-02"
        type: "execution"       
      5:
        instance_name: "olam-remote-execution-01"
        type: "execution"
      6:
        instance_name: "olam-hop-01"
        type: "execution"
      7:
        instance_name: "olam-db"
        type: "db"
    passwordless_ssh: true
    olam_type: none
    add_cluster_ports: true
    EOF
    
  6. Déployez l'environnement de l'exercice.

    ansible-playbook create_instance.yml -e ansible_python_interpreter="/usr/bin/python3.6" -e "@instances.yml"
    

    L'environnement de laboratoire gratuit nécessite la variable supplémentaire ansible_python_interpreter car elle installe l'ensemble RPM pour la trousse SDK Oracle Cloud Infrastructure pour Python. L'emplacement de l'installation de ce package est sous les modules python3.6.

    La forme de déploiement par défaut utilise le processeur AMD et Oracle Linux 8. Pour utiliser une unité centrale Intel ou Oracle Linux 9, ajoutez -e instance_shape="VM.Standard3.Flex" ou -e os_version="9" à la commande de déploiement.

    Important : Attendez que le livre de jeu s'exécute avec succès et atteignez la tâche Mettre en pause. L'installation d'Oracle Linux Automation Manager est terminée à cette étape du livre de jeu et les instances sont prêtes. Prenez note de la lecture précédente, qui imprime les adresses IP publiques et privées des noeuds qu'il déploie.

Déployer la grappe Oracle Linux Automation Manager

  1. Ouvrez un nouveau terminal.

  2. Assurez-vous d'être dans le répertoire olam du projet linux-virt-labs.

  3. Convertissez le fichier d'inventaire de base.

    Ce script de conversion crée un fichier d'inventaire compatible avec la grappe à partir de l'inventaire de base généré par le livre de jeu de déploiement d'instance.

    chmod +x convert_ansible_inventory.sh
    ./convert_ansible_inventory.sh hosts > hosts.cluster
    
  4. Exécutez le guide de jeu de déploiement de grappe.

    ansible-playbook -i hosts.cluster deploy_olam_cluster.yml -e ansible_python_interpreter="/usr/bin/python3.6"
    

Connectez-vous à WebUI

  1. Ouvrez un terminal et configurez un tunnel SSH vers l'instance olam-control-01 de la grappe Oracle Linux Automation Manager.

    ssh -L 8444:localhost:443 oracle@<hostname_or_ip_address>
    
  2. Ouvrez un navigateur Web et entrez l'URL.

    https://localhost:8444
    

    Note : Approuvez l'avertissement de sécurité en fonction du navigateur utilisé. Cliquez sur le bouton **Avancé pour Chrome, puis sur le lien Passer à localhost (non sécurisé).

  3. Connectez-vous à Oracle Linux Automation Manager avec USERNAME admin et PASSWORD admin créés lors du déploiement automatisé.

    olam2 - Connexion

  4. Après la connexion, WebUI s'affiche.

    olam2-webui

Confirmer les groupes d'instances dans WebUI

Un groupe d'instances permet de regrouper des instances dans une grappe en fonction de politiques. Ces politiques déterminent le comportement du groupe d'instances et l'exécution des travaux.

  1. Cliquez sur Groupes d'instances sous Administration dans le menu de navigation.

    olam2-instance-grp-menu

  2. Consultez la page Groupes d'instances.

    olam2-instnace-grp-page

    La page affiche la capacité en fonction des paramètres de politique. Pour plus de détails sur ces paramètres de politique, voir Gestion des groupes d'instances dans le chapitre Configuration des ressources de la documentation sur le guide de l'utilisateur d'Oracle Linux Automation Manager.

Visualiser la topologie de grappe

  1. Cliquez sur Vue de topologie sous la section Administration du menu de navigation.

    olam2-top-view-menu

  2. Consultez la page Vue de topologie.

    olam2 - Vue supérieure

    La page présente une disposition graphique de la topologie du cluster contenant chacun de ses noeuds. Le report sur les noeuds affiche des flèches d'un noeud à un autre, indiquant leur association d'appairage.

Instances de liste

À l'aide de l'utilitaire awx-manage, un administrateur peut configurer et lister les instances associées aux groupes d'instances (files d'attente). Un administrateur effectue cette action à partir de n'importe quel noeud de plan de contrôle du cluster.

  1. Passez à la fenêtre de terminal connectée à l'instance olam-control-01.

  2. Connectez-vous au compte d'utilisateur Oracle Linux Automation Manager.

    sudo su -l awx -s /bin/bash
    
  3. Répertoriez les instances.

    awx-manage list_instances
    

    Exemple de sortie :

    [awx@olam-control-01 ~]$ awx-manage list_instances
    [controlplane capacity=594]
    	10.0.0.50 capacity=297 node_type=control version=23.7.0 heartbeat="2025-04-26 17:23:59"
    	10.0.0.52 capacity=297 node_type=control version=23.7.0 heartbeat="2025-04-26 17:23:59"
    
    [execution capacity=891]
    	10.0.0.57 capacity=297 node_type=execution version=23.7.0 heartbeat="2025-04-26 17:23:38"
    	10.0.0.59 capacity=297 node_type=execution version=23.7.0 heartbeat="2025-04-26 17:23:59"
    	10.0.0.61 capacity=297 node_type=execution version=23.7.0 heartbeat="2025-04-26 17:23:59"
    
    [ungrouped capacity=0]
    	10.0.0.53 node_type=hop heartbeat="2025-04-26 17:23:32"
    

    La sortie affiche les files d'attente controlplane et execution et chaque noeud associé. Les noeuds de saut apparaissent dans la file d'attente ungrouped car ils ne sont pas associés à une file d'attente active contenant de la capacité.

  4. Déconnectez-vous de l'utilisateur d'Oracle Linux Automation Manager.

    exit
    

    Cette action doit vous retourner au compte d'utilisateur oracle de l'instance olam-control-01.

Afficher le statut du maillage de services

Avec l'exécution du maillage de services, il est possible d'obtenir le statut du maillage de services et des noeuds associés.

  1. Obtenir le statut du maillage de services.

    sudo receptorctl  --socket /var/run/receptor/receptor.sock status
    

    Exemple de sortie :

    [oracle@olam-control-01 ~]$ sudo receptorctl  --socket /var/run/receptor/receptor.sock status
    Node ID: 10.0.0.50
    Version: 1.4.2
    System CPU Count: 4
    System Memory MiB: 31804
    
    Connection   Cost
    10.0.0.59    1
    10.0.0.61    1
    10.0.0.53    1
    
    Known Node   Known Connections
    10.0.0.50    10.0.0.53: 1 10.0.0.59: 1 10.0.0.61: 1 
    10.0.0.52    10.0.0.53: 1 10.0.0.59: 1 10.0.0.61: 1 
    10.0.0.53    10.0.0.50: 1 10.0.0.52: 1 10.0.0.57: 1 
    10.0.0.57    10.0.0.53: 1 
    10.0.0.59    10.0.0.50: 1 10.0.0.52: 1 
    10.0.0.61    10.0.0.50: 1 10.0.0.52: 1 
    
    Route        Via
    10.0.0.52    10.0.0.53
    10.0.0.53    10.0.0.53
    10.0.0.57    10.0.0.53
    10.0.0.59    10.0.0.59
    10.0.0.61    10.0.0.61
    
    Node         Service   Type       Last Seen             Tags
    10.0.0.50    control   Stream     2025-04-26 17:29:26   {'type': 'Control Service'}
    10.0.0.52    control   Stream     2025-04-26 17:28:54   {'type': 'Control Service'}
    10.0.0.61    control   Stream     2025-04-26 17:28:54   {'type': 'Control Service'}
    10.0.0.59    control   Stream     2025-04-26 17:28:54   {'type': 'Control Service'}
    10.0.0.53    control   Stream     2025-04-26 17:28:32   {'type': 'Control Service'}
    10.0.0.57    control   Stream     2025-04-26 17:28:33   {'type': 'Control Service'}
    
    Node         Work Types
    10.0.0.50    local
    10.0.0.52    local
    10.0.0.61    ansible-runner
    10.0.0.59    ansible-runner
    10.0.0.53    local
    10.0.0.57    ansible-runner
    

    La commande receptorctl est l'interface de ligne de commande frontale qui interagit avec le maillage de services sur son interface de connecteur logiciel de contrôle. La transmission de --help à la commande receptorctl affiche les options de l'interface de ligne de commande et différentes commandes.

  2. Exécutez un traceroute du noeud de plan de contrôle vers le noeud d'exécution distant.

    sudo receptorctl  --socket /var/run/receptor/receptor.sock traceroute $(ssh olam-remote-execution-01 hostname -i)
    

    Exemple de sortie :

    [oracle@olam-control-01 ~]$ sudo receptorctl  --socket /var/run/receptor/receptor.sock traceroute $(ssh olam-remote-execution-01 hostname -i)
    0: 10.0.0.50 in 282.074µs
    1: 10.0.0.53 in 817.948µs
    2: 10.0.0.57 in 817.226µs
    

    Note : Si vous voyez des caractères spéciaux dans la sortie qui ne s'affichent pas, changez l'encodage dans la fenêtre de terminal pour UTF-8 en cliquant sur Terminal > Définir l'encodage > Unicode dans le menu.

    Dans l'exemple ci-dessus, la route commence sur le premier noeud de plan de contrôle, traverse le noeud de saut et atterrit sur le noeud d'exécution distant.

Vérifiez le statut du maillage de services dans WebUI

L'API Oracle Linux Automation Manager utilise un appel d'API de repos qui permet à un administrateur de voir les informations de statut sur chaque noeud de la grappe du maillage de services.

  1. Passez à une fenêtre de navigateur dans l'environnement de laboratoire gratuit et entrez l'URL.

    https://localhost:8444/api/login/
    

    Note : Approuvez l'avertissement de sécurité en fonction du navigateur utilisé. Cliquez sur le bouton Avancé pour Chrome, puis sur le lien Passer à localhost (non sécurisé).

  2. Connectez-vous à l'API REST d'Oracle Linux Automation Manager. Utilisez le nom d'utilisateur admin et le mot de passe admin créés lors du déploiement automatisé.

    olam2-restapi-login

  3. L'API REST s'affiche après une connexion réussie.

    olam2-restapi

  4. Cliquez sur l'un des hyperliens /api/v2/ dans la zone de réponse.

    Le clic effectue une demande GET et affiche toutes les ressources d'API disponibles.

  5. Faites défiler l'affichage vers le bas et cliquez sur le lien mesh_visualizer.

    olam2-visualiseur en mailles

  6. Regardez à travers la sortie.

    Notez les différents noeuds et leur node_type spécifique. La section Liens montre comment chaque noeud s'associe dans le maillage de services.

Étapes suivantes

Les différentes sorties montrent une grappe en cours d'exécution avec des noeuds de saut et d'exécution pour exécuter des livres de jeu à l'aide d'Oracle Linux Automation Manager. Maintenant, allez exécuter quelques livres de jeu et obtenez des exercices supplémentaires en consultant nos autres tutoriels sur le poste de formation Oracle Linux.

Documentation sur Oracle Linux Automation Manager
Formation sur Oracle Linux Automation Manager
Station de formation Oracle Linux

Autres ressources d'apprentissage

Explorez d'autres laboratoires sur le site docs.oracle.com/learn ou accédez à plus de contenu d'apprentissage gratuit sur le canal Oracle Learning YouTube. De plus, visitez education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.

Pour obtenir la documentation sur le produit, visitez Oracle Help Center.