Remarques :
- Ce tutoriel est disponible dans un environnement d'atelier gratuit fourni par Oracle.
- Il utilise des exemples de valeurs pour les informations d'identification, la location et les compartiments Oracle Cloud Infrastructure. Lorsque vous terminez votre atelier, remplacez ces valeurs par celles propres à votre environnement cloud.
Installation d'Oracle Linux Automation Manager sur Oracle Linux
Introduction
Oracle Linux Automation Manager est un moteur de tâches et une interface utilisateur graphique (GUI) basée sur le Web pour la planification et l'exécution des livres de jeux Oracle Linux Automation Engine par rapport aux inventaires des hôtes distants. Cette suite d'outils permet aux administrateurs de gérer facilement leur infrastructure informatique et d'effectuer des tâches répétitives de manière connue et prévisible, en évitant les problèmes d'administration manuels courants.
Oracle Linux Automation Engine est un outil permettant de gérer et d'exécuter des tâches d'administration à l'aide de fichiers de définition YAML basés sur du code (IaC) appelés playbooks. Ces livres de jeux comprennent des tâches d'instruction telles que le déploiement de logiciels, la configuration de systèmes et l'orchestration des mises à niveau et des mises à jour.
Objectifs
Dans ce tutoriel, vous allez apprendre à :
- Activation du référentiel DNF Oracle Linux
- Définir les règles de pare-feu
- Télécharger, installer et configurer un hôte unique Oracle Linux Automation Manager
Prérequis
- Système sur lequel Oracle Linux est installé.
Déployer Oracle Linux
Remarque : en cas d'exécution dans votre propre location, lisez le projet linux-virt-labs
GitHub README.md et respectez les prérequis avant de déployer l'environnement d'atelier.
-
Ouvrez un terminal sur le bureau Luna.
-
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: none EOF
-
Créez 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 d'exercice.
ansible-playbook create_instance.yml -i hosts -e "@instances.yml"
L'environnement d'atelier gratuit requiert la variable supplémentaire
ansible_python_interpreter
pour localhost car il installe le package RPM pour le kit SDK Oracle Cloud Infrastructure pour Python. L'emplacement d'installation de ce package se trouve 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 un impact sur les lectures en cours d'exécution sur des hôtes autres que localhost.La forme de déploiement par défaut utilise l'UC 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 majeure d'Oracle Linux sur la ligne de commande.Par exemple :
-e os_version="9"
Important : attendez que le guide de lecture s'exécute correctement et atteignez la tâche de pause. A ce stade du manuel, l'installation d'Oracle Linux est terminée et les instances sont prêtes. Notez la lecture précédente, qui affiche les adresses IP publiques et privées des noeuds qu'elle déploie.
Activation du référentiel DNF Oracle Linux et définition des règles de pare-feu
Activez les référentiels yum et les règles de pare-feu requis avant d'installer Oracle Linux Automation Manager.
-
Ouvrez un terminal et connectez-vous via SSH au noeud olam-node.
ssh oracle@<ip_address_of_instance>
-
Installez le référentiel Oracle Linux Automation Manager.
Oracle Linux 8 ::
sudo dnf -y install oraclelinux-automation-manager-release-el8
Oracle Linux 9 ::
sudo dnf -y install oraclelinux-automation-manager-release-el9
Cette commande active le dernier référentiel Oracle Linux Automation Manager en tant que référentiel par défaut pour l'installation des packages du produit.
-
Ajoutez les services HTTP/HTTPS aux règles de pare-feu.
sudo firewall-cmd --add-service=https --permanent sudo firewall-cmd --reload
Installation d'une base de données PostgreSQL locale
-
Activer le flux de module
sudo dnf module reset postgresql sudo dnf -y module enable postgresql:16
-
Installez la base de données.
sudo dnf -y install postgresql-server
-
Initialisez la base de données.
sudo postgresql-setup --initdb
-
Basculez le mécanisme de stockage des mots de passe sur scram-sha-256.
sudo sed -i "s/#password_encryption.*/password_encryption = scram-sha-256/" /var/lib/pgsql/data/postgresql.conf
-
Activez et démarrez la base de données.
sudo systemctl enable --now postgresql
-
Créez les comptes utilisateur de base de données.
Important : pour cet environnement d'atelier gratuit, utilisez le mot de passe
password
à l'invite. Ce mot de passe n'est pas sécurisé et nous l'utilisons uniquement à des fins de démonstration dans cet environnement.sudo su - postgres -c "createuser -S -P awx"
-
Créez la base de données.
sudo su - postgres -c "createdb -O awx awx"
-
Mettez à jour le fichier d'authentification basée sur l'hôte.
echo "host all all 0.0.0.0/0 scram-sha-256" | sudo tee -a /var/lib/pgsql/data/pg_hba.conf > /dev/null
-
Mettez à jour l'adresse IP du processus d'écoute de base de données.
sudo sed -i "/^#port = 5432/i listen_addresses = '"$(hostname -i)"'" /var/lib/pgsql/data/postgresql.conf
-
Mettez à jour les besoins en mémoire de la base de données.
Ces calculs exploitent la mémoire totale du système en mégaoctets et remplacent les valeurs par défaut dans le fichier de configuration PostgreSQL.
export TOTAL_MEMORY="$(free --mega | awk 'FNR == 2 {print $2}')" sudo sed -i 's/max_connections = 100/max_connections = 1024/g' /var/lib/pgsql/data/postgresql.conf sudo sed -i "/^shared_buffers =/c\shared_buffers = $( echo "($TOTAL_MEMORY*0.3)/1" | bc )" /var/lib/pgsql/data/postgresql.conf sudo sed -i "/^#work_mem =/c\work_mem = $( echo "($TOTAL_MEMORY*0.03)/1" | bc )" /var/lib/pgsql/data/postgresql.conf sudo sed -i "/^#maintenance_work_mem =/c\maintenance_work_mem = $( echo "($TOTAL_MEMORY*0.04)/1" | bc )MB" /var/lib/pgsql/data/postgresql.conf
-
Relancez la base de données.
sudo systemctl restart postgresql
Installer et configurer Oracle Linux Automation Manager
-
Installez le package Oracle Linux Automation Manager et toutes les dépendances.
sudo dnf -y install ol-automation-manager
-
Mettez à jour le fichier de configuration Redis.
Oracle Linux 8 ::
sudo sed -i '/^# unixsocketperm/a unixsocket /var/run/redis/redis.sock\nunixsocketperm 775' /etc/redis.conf
Oracle Linux 9 ::
sudo sed -i '/^# unixsocketperm/a unixsocket /var/run/redis/redis.sock\nunixsocketperm 775' /etc/redis/redis.conf
-
Ajoutez le fichier CLUSTER_HOST_ID à un fichier de paramètres personnalisé.
cat << EOF | sudo tee -a /etc/tower/conf.d/olam.py > /dev/null CLUSTER_HOST_ID = '$(hostname -i)' EOF
Remarque : l'utilisation de
$(hostname -i)
ne fonctionne pas pour les systèmes sur lesquels IPv6 est activé en raison d'espaces existants dans la sortie. Utilisez plutôt le nom d'hôte du système, ce qui est possible à l'aide de$(hostname -f)
, ou d'une autre chaîne sans espace. -
Mettez à jour les autorisations sur le fichier de paramètres personnalisés.
sudo chown awx.awx /etc/tower/conf.d/olam.py sudo chmod 0640 /etc/tower/conf.d/olam.py
-
Ajoutez des paramètres de base de données à un fichier de configuration personnalisé.
cat << EOF | sudo tee -a /etc/tower/conf.d/olam.py > /dev/null DATABASES = { 'default': { 'ATOMIC_REQUESTS': True, 'ENGINE': 'awx.main.db.profiled_pg', 'NAME': 'awx', 'USER': 'awx', 'PASSWORD': 'password', 'HOST': '$(hostname -i)', 'PORT': '5432', } } EOF
-
Activer la persistance.
Oracle Linux 9 ::
sudo loginctl enable-linger awx
Ce message est résolu lors de l'exécution sur un système sans interface utilisateur :
AVERTISSEMENT[0000] Le gestionnaire cgroupv2 est défini sur systemd mais aucune session utilisateur systemd n'est disponible AVERTISSEMENT[0000] Pour utiliser systemd, vous devrez peut-être vous connecter à l'aide d'une session utilisateur AVERTISSEMENT[0000] Vous pouvez également activer la persistance avec :
loginctl enable-linger 986
(éventuellement en tant que root) AVERTISSEMENT[000] Rétablissement de –cgroup-manager=cgroupfs
AVERTISSEMENT[0000] Le gestionnaire cgroupv2 est défini sur systemd mais aucune session utilisateur systemd n'est disponible AVERTISSEMENT[0000] Pour utiliser systemd, vous devrez peut-être vous connecter à l'aide d'une session utilisateur AVERTISSEMENT[000] Vous pouvez également activer la persistance avec :loginctl enable-linger 986
(éventuellement en tant que root) AVERTISSEMENT[000] Rétablissement de –cgroup-manager=cgroupfs -
Extrayez l'image de conteneur Oracle Linux Automation Manager.
Oracle Linux 8 ::
sudo su -l awx -s /bin/bash
podman system migrate
podman pull container-registry.oracle.com/oracle_linux_automation_manager/olam-ee:2.3-ol8
Oracle Linux 9 ::
sudo su -l awx -s /bin/bash
podman system migrate
podman pull container-registry.oracle.com/oracle_linux_automation_manager/olam-ee:2.3-ol9
-
Créez le schéma Oracle Linux Automation Manager et le compte utilisateur administrateur.
awx-manage migrate awx-manage createsuperuser --username admin --email admin@example.com
Remarque : dans l'exemple précédent,
admin@example.com
est un exemple d'adresse électronique de l'administrateur. -
Saisissez et confirmez le mot de passe de l'administrateur.
-
Quittez le shell utilisateur awx.
exit
-
Générez un certificat SSL pour NGINX.
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \ -keyout /etc/tower/tower.key -out /etc/tower/tower.crt
Entrez les informations demandées ou appuyez simplement sur la touche
ENTER
. -
Remplacez la configuration NGINX par défaut.
cat << EOF | sudo tee /etc/nginx/nginx.conf > /dev/null user nginx; worker_processes auto; error_log /var/log/nginx/error.log; pid /run/nginx.pid; # Load dynamic modules. See /usr/share/doc/nginx/README.dynamic. include /usr/share/nginx/modules/*.conf; events { worker_connections 1024; } http { log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; include /etc/nginx/mime.types; default_type application/octet-stream; # Load modular configuration files from the /etc/nginx/conf.d directory. # See http://nginx.org/en/docs/ngx_core_module.html#include # for more information. include /etc/nginx/conf.d/*.conf; } EOF
-
Mettez à jour le fichier de configuration du récepteur.
cat << EOF | sudo tee /etc/receptor/receptor.conf > /dev/null --- - node: id: $(hostname -i) - log-level: debug - tcp-listener: port: 27199 - control-service: service: control filename: /var/run/receptor/receptor.sock - work-command: worktype: local command: /var/lib/ol-automation-manager/venv/awx/bin/ansible-runner params: worker allowruntimeparams: true verifysignature: false EOF
-
Provisionner une instance et inscrire les environnements d'exécution.
sudo su -l awx -s /bin/bash
awx-manage provision_instance --hostname=$(hostname -i) --node_type=hybrid
awx-manage register_default_execution_environments
awx-manage register_queue --queuename=default --hostnames=$(hostname -i)
awx-manage register_queue --queuename=controlplane --hostnames=$(hostname -i)
awx-manage create_preload_data
exit
-
Démarrez le service.
sudo systemctl enable --now ol-automation-manager.service
-
Déconnexion du serveur.
exit
Vérifiez l'installation
-
Dans la même fenêtre de terminal, configurez un tunnel SSH.
ssh -L 8444:localhost:443 oracle@<ip_address_of_instance>
Remarque : dans l'exemple précédent,
<ip_address_of_instance>
est le nom d'hôte ou l'adresse IP du système exécutant Oracle Linux Automation Manager. Si vous utilisez le nom d'hôte, l'hôte doit être résolu. -
Ouvrez un navigateur Web et saisissez l'URL.
https://localhost:8444
Remarque : 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 utilisateur
admin
et le mot de passe créés lors de la configuration.
Etapes suivantes
Avec Oracle Linux Automation Manager installé, vous pouvez commencer à explorer l'interface utilisateur Web et les différentes fonctionnalités du produit pour automatiser votre infrastructure. Consultez notre formation supplémentaire sur Oracle Linux Training Station pour approfondir vos connaissances et obtenir des idées.
Liens connexes
- Documentation d'Oracle Linux Automation Manager
- Formation Oracle Linux Automation Manager
- Centre de formation Oracle Linux
Ressources de formation supplémentaires
Explorez d'autres ateliers sur docs.oracle.com/learn ou accédez à d'autres contenus de formation gratuits sur le canal Oracle Learning YouTube. De plus, visitez le site education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.
Pour obtenir la documentation produit, consultez le site Oracle Help Center.
Install Oracle Linux Automation Manager on Oracle Linux
F52966-05
Copyright ©2021, Oracle and/or its affiliates.