Note :
- Ce tutoriel est disponible dans un environnement de laboratoire gratuit fourni par Oracle.
- Il utilise des exemples de valeurs pour les données d'identification, la location et les compartiments d'Oracle Cloud Infrastructure. À la fin de votre laboratoire, remplacez ces valeurs par celles qui sont propres à votre environnement en nuage.
Gérer Oracle Linux Automation Manager à l'aide de la collection AWX
Présentation
La collection AWX Ansible permet aux administrateurs d'interagir avec Oracle Linux Automation Manager au moyen de livres de jeu. Les modules permettent d'effectuer des tâches telles que l'administration des utilisateurs et des groupes, la création de projets et l'exécution de tâches.
Objectifs
Dans ce tutoriel, vous apprendrez à :
- Déployer les instances DevOps et Oracle Linux Automation Manager
- Configurer le fichier de configuration sur l'instance DevOps
- Écrire un livre de jeu pour créer les éléments requis pour exécuter un travail
- Tester et vérifier le livre de jeux
Préalables
- Noeud de contrôle pour l'exécution des livres de jeu Oracle Linux Automation Engine
- Instance d'Oracle Linux Automation Manager
Déployer 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.
-
Ouvrez un terminal sur le Luna Desktop.
-
Clonez le projet
linux-virt-labs
GitHub.git clone https://github.com/oracle-devrel/linux-virt-labs.git
-
Accédez au répertoire de travail.
cd linux-virt-labs/olam
-
Installez les collections requises.
ansible-galaxy collection install -r requirements.yml
-
Mettez à jour la configuration de l'instance Oracle Linux.
cat << EOF | tee instances.yml > /dev/null compute_instances: 1: instance_name: "olam-node" type: "control" olam_type: single EOF
-
Sert à créer un fichier d'inventaire.
cat << EOF | tee hosts > /dev/null localhost ansible_connection=local ansible_connection=local ansible_python_interpreter=/usr/bin/python3.6 EOF
-
Déployez l'environnement de l'exercice.
ansible-playbook create_instance.yml -i hosts -e "@instances.yml"
L'environnement de laboratoire gratuit nécessite la variable supplémentaire
ansible_python_interpreter
pour localhost, car il installe l'ensemble RPM pour la trousse SDK Oracle Cloud Infrastructure pour Python. L'emplacement d'installation de cet ensemble est sous les modules Python par défaut du système en fonction de votre version d'Oracle Linux. L'utilisation d'une variable d'inventaire évite d'avoir une incidence sur les lectures exécutées sur des hôtes autres que localhost.La forme de déploiement par défaut utilise l'unité centrale AMD. Vous pouvez modifier la forme des instances en transmettant une nouvelle définition de variable de forme sur la ligne de commande.
Par exemple :
-e instance_shape="VM.Standard3.Flex"
De même, la version par défaut de l'image Oracle Linux utilise la variable
os_version
définie dans le fichier `default_vars.yml. Vous pouvez modifier cette valeur en transmettant la version principale d'Oracle Linux sur la ligne de commande.Par exemple :
-e os_version="9"
Important : Attendez que le livre de jeu s'exécute avec succès et atteignez la tâche Mettre en pause. À ce stade du livre de jeu, l'installation d'Oracle Linux est terminée et les instances sont prêtes. Notez la lecture précédente, qui imprime les adresses IP publiques et privées des noeuds qu'il déploie.
Vérifier le déploiement d'Oracle Linux Automation Manager
-
Ouvrez un nouveau terminal.
-
Configurez un tunnel SSH vers l'instance Oracle Linux Automation Manager.
ssh -o ExitOnForwardFailure=yes -f -L 8444:localhost:443 oracle@<public_ip_address_of_olam-node> sleep 300
-o ExitOnForwardFailure=yes
: Attend la réussite de tous les transferts de port distant-f
: Exécute le tunnel SSH en arrière-plan-L
: Crée le tunnel sur le port 8444 sur le système local et 443 sur le système distantsleep 300
: garde le tunnel distant ouvert pendant 5 minutes, en attente d'une connexion établie avant la fermeture automatique
-
Ouvrez un navigateur Web et entrez l'URL.
https://localhost:8444
Note : Approuvez l'avertissement de sécurité en fonction du navigateur utilisé. Pour Chrome, cliquez sur le bouton
Advanced
, puis sur le lienProceed to localhost (unsafe)
. -
Connectez-vous à Oracle Linux Automation Manager avec le nom d'utilisateur
admin
et le mot de passeadmin
créés lors du déploiement. -
Une fois connecté, l'interface utilisateur Web s'affiche.
Créer le fichier de configuration du contrôleur
La collection AWX Ansible utilise un fichier de configuration et, dans certains cas, l'interface de ligne de commande AWX pour s'authentifier auprès d'Oracle Linux Automation Manager. Les paramètres d'authentification peuvent être transmis sur la ligne de commande à l'aide de l'interface de ligne de commande directement ou écrits dans un fichier de configuration.
Lors de la spécification des paramètres d'authentification, la collection AWX Ansible prévoit une combinaison des éléments suivants :
- hôte, nom d'utilisateur, mot de passe
- hôte, jeton OAuth2
Pour plus de détails, consultez le projet en amont.
-
Retournez au terminal où vous avez créé le tunnel SSH.
-
Générez le fichier de configuration.
cat << EOF | tee ~/.tower_cli.cfg > /dev/null [general] host: https://localhost:8444 verify_ssl: false username: admin password: admin use_token = false EOF
host:
- Définit l'URL permettant d'accéder à l'interface utilisateur Web d'Oracle Linux Automation Managerverify_ssl:
- Désactive la vérification SSL stricte car l'environnement du tutoriel utilise un certificat auto-signéuse_token:
- Bien que l'utilisation d'un jeton OAuth2 soit préférée, le réglage à Faux désactive l'utilisation d'un jeton pour l'authentification
Créer une organisation
Comme nous le couvrons dans notre tutoriel Démarrer, une organisation se trouve en haut de la pyramide basée sur les rôles et est une collection logique d'utilisateurs, d'équipes, de projets et d'inventaires.
Plutôt que de créer cela via l'interface utilisateur Web, nous pouvons écrire un livre de jeu.
-
Écrivez le playbook.
cat << EOF | tee configure-olam.yaml > /dev/null --- - name: Playbook to set up training demo data using the AWX collection hosts: localhost gather_facts: false collections: - awx.awx tasks: - name: Create an organization awx.awx.organization: name: "Example" description: "Created using a playbook" state: present EOF
-
Exécutez le playbook.
ansible-playbook configure-olam.yaml
-
Vérifiez les modifications dans l'interface utilisateur Web.
Dans le navigateur, connectez-vous à l'interface utilisateur Web.
Note : Si vous rencontrez un échec de connexion, le tunnel SSH a peut-être expiré. Dans ce cas, vous devrez réexécuter la commande SSH pour rétablir la connexion.
Dans le menu de navigation, cliquez sur Organisations. Notez l'entrée Exemple, créée par le livre de jeu.
Exécuter un travail
Une fois l'organisation créée, automatisons maintenant les étapes restantes du tutoriel Démarrer avec quelques modifications. Un des avantages d'Oracle Linux Automation Engine est son auto-documentage.
-
Retournez au terminal où vous avez créé le livre de jeux.
-
Ajoutez la configuration supplémentaire au livre de jeu existant.
cat << EOF | tee -a configure-olam.yaml > /dev/null - name: Add a user awx.awx.user: username: jdoe password: oracle email: jdoe@example.com first_name: John last_name: Doe organization: Example state: present - name: Add an inventory awx.awx.inventory: name: "Demo Inventory" description: "Demo OCI Instances" organization: Example state: present - name: Add a host awx.awx.host: name: localhost description: "Use to run tasks locally" inventory: "Demo Inventory" state: present variables: ansible_connection: local - name: Add a credential awx.awx.credential: name: "Linux Instance" credential_type: Machine organization: Example inputs: username: opc ssh_key_data: "" - name: Add a project awx.awx.project: name: "Hello World" description: "Sample Hello World Project" organization: Example default_environment: "OLAM EE (2.3)" scm_type: "git" scm_update_on_launch: false scm_url: https://github.com/oracle-devrel/linux-virt-labs.git state: present - name: Add a template awx.awx.job_template: name: "Say Hello" job_type: "run" organization: Example inventory: "Demo Inventory" project: "Hello World" playbook: "labs/olam-hello-world.yaml" state: present - name: Launch a job awx.awx.job_launch: job_template: "Say Hello" wait: true register: job - name: Print results from job ansible.builtin.debug: var: job EOF
-
Réexécutez le livre de jeux.
ansible-playbook configure-olam.yaml
Le livre de jeu se termine par le dernier jeu affichant le statut du travail
successful
, ainsi qu'un avertissement que vous pouvez ignorer. -
Vérifiez le travail dans l'interface utilisateur Web.
À l'aide du navigateur, naviguez jusqu'à Travaux et cliquez sur le travail Dire Bonjour. La sortie affiche les résultats de l'exécution du livre de jeu pendant le travail. Notez les messages de bienvenue de la tâche de débogage.
Étapes suivantes
La sortie de l'interface utilisateur Web confirme que vous disposez d'Oracle Linux Automation Manager fonctionnel et que vous avez écrit un livre de jeu pour gérer certaines des tâches les plus courantes.
Liens connexes
- Documentation sur Oracle Linux Automation Manager
- Formation sur Oracle Linux Automation Manager
- Parcours d'apprentissage pour 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.
Manage Oracle Linux Automation Manager Using the AWX Collection
G32873-02
Copyright ©2024, Oracle and/or its affiliates.