Comprendre les composants centraux d'ANSIBLE - Partie 1

Comprendre les composants centraux d'ANSIBLE - Partie 1

Le spécialiste certifié Red Hat en ANSIBLE AUTOMMATION EXAMEN (EX407) est un nouveau programme de certification par chapeau rouge qui teste vos compétences à utiliser Anable Pour automatiser la configuration des systèmes et applications.

La série sera intitulée «Le spécialiste certifié Red Hat en ANSIBLE AUTOMMATION EXAMEN (EX407)»Et couvre les objectifs d'examen suivants basés sur Red Hat Enterprise Linux 7.5 et Anible 2.7, que nous allons couvrir dans ce Anable série:

Pour consulter les frais et vous inscrire à un examen dans votre pays, consultez la page ANSIBLE AUTOMATION EXAMEN.

Partie 1: Comprendre les composants centraux d'ANSIBLE Partie 2: Installez et configurez un nœud de contrôle ANSIBLE Partie 3: Comment configurer les nœuds gérés anibles et exécuter les commandes ad hoc Partie 4: Comment créer des stocks statiques et dynamiques pour définir des groupes d'hôtes Partie 5: Comment créer des pièces et des livres de jeu anibles Partie 6: Comment utiliser des modules anibles pour les tâches d'administration du système Partie 7: Comment créer et utiliser des modèles pour créer des fichiers de configuration personnalisés Partie 8: Comment travailler avec des variables et des faits anibles Partie 9: Comment créer et télécharger des rôles une galaxie Ansible et les utiliser Partie 10: Comment utiliser un coffre-fort ANSIBLE dans les manuels pour protéger les données sensibles

Dans ce Partie 1 de la Anable série, nous discuterons d'un aperçu de base des composants centraux dans Anable.

Comprendre les composants centraux d'ANSIBLE

Anable est une plate-forme d'automatisation gratuite et opensource par Chapeau rouge Cela vous permet de gérer et de contrôler plusieurs serveurs à partir d'un emplacement central. C'est particulièrement idéal lorsque vous avez des tâches multiples et répétitives qui doivent être effectuées. Donc, au lieu de vous connecter à chacun de ces nœuds distants et d'exécuter vos tâches, vous pouvez le faire confortablement à partir d'un emplacement central et gérer confortablement vos serveurs.

Ceci est bénéfique lorsque vous souhaitez maintenir la cohérence dans le déploiement des applications, réduire l'erreur humaine et automatiser les tâches répétitives et quelque peu banales.

Bien sûr, il existe d'autres alternatives à Anable tel que Fantoche, Chef, et Sel. Cependant, Anable est principalement préféré car il est facile à utiliser et simple à apprendre.

Pourquoi est-il simple d'apprendre que vous pourriez demander? Ceci est dû au fait Anable les usages Yaml (Encore une autre langue de balisage) dans ses travaux de configuration et d'automatisation qui sont lisibles par l'homme et assez faciles à suivre. Yaml les usages Ssh Protocole pour communiquer avec des serveurs distants, contrairement à d'autres plates-formes d'automatisation qui vous obligent à installer un agent sur des nœuds distants pour communiquer avec eux.

Avant de commencer Anable, Il est important que vous vous fassiez familiarité avec certaines terminologies de base afin que vous ne vous perdez pas ou ne vous confondez pas à mesure que nous avançons.

Inventaire

Un inventaire est un fichier texte qui contient une liste de serveurs ou de nœuds que vous gérez et configurez. Habituellement, les serveurs sont répertoriés en fonction de leurs noms d'hôtes ou adresses IP.

Un inventaire Le fichier peut contenir des systèmes distants définis par leurs adresses IP comme indiqué:

dix.200.50.50 10.200.50.51 10.200.50.52 

Alternativement, ils peuvent être répertoriés selon les groupes. Dans l'exemple ci-dessous, nous avons des serveurs placés sous 2 groupes - serveurs Web et bases de données. De cette façon, ils peuvent être référencés en fonction de leurs noms de groupe et non de leurs adresses IP. Cela simplifie encore les processus de fonctionnement.

[Webservers] dix.200.50.60 10.200.50.61 [Bases de données] dix.200.50.70 10.200.50.71 

Vous pouvez avoir plusieurs groupes avec plusieurs serveurs si vous êtes dans un grand environnement de production.

Livre de jeu

UN livre de jeu est un ensemble de scripts de gestion de la configuration qui définissent comment les tâches doivent être exécutées sur des hôtes distants ou un groupe de machines hôtes. Les scripts ou les instructions sont écrits Yaml format.

Par exemple, vous pouvez avoir un livre de jeu fichier pour installer le serveur Web Apache sur Centos 7 et appeler-le httpd.YML.

Pour créer le livre de jeu exécuter la commande.

$ touch playbook_name.YML 

Par exemple pour créer un livre de jeu appelé httpd, exécuter la commande.

$ touch httpd.YML 

Un fichier yaml commence par 3 traits comme montré. À l'intérieur du fichier, ajoutez les instructions suivantes.

--- - Nom: Cela installe et démarre Apache Webserver Hosts: tâches WebServers: - Nom: Installer Apache Webserver yum: name = httpd State = Dermter - Name: Check Httpd Status Service: name = httpd State = démarré 

Ce qui précède livre de jeu installations Serveur Web Apache sur les systèmes distants définis comme serveurs Web Dans le fichier d'inventaire. Après l'installation du serveur Web, ANSIBLE vérifie plus tard si le serveur Web Apache est démarré et s'exécute.

Modules

Modules sont des unités de code discrètes utilisées dans manuels Pour exécuter des commandes sur des hôtes ou des serveurs distants. Chaque module est suivi d'un argument.

Le format de base d'un module est valeur clé.

- Nom: Installez les packages Apache Yum: name = httpd state = Present 

Au dessus Yaml extrait de code, -nom et Miam sont des modules.

Pièces

Un anible jouer est un script ou une instruction qui définit la tâche à effectuer sur un serveur. Une collection de pièces constitue un livre de jeu. En d'autres termes, un livre de jeu est une collection de pièces multiples, chacune stipule clairement la tâche à effectuer sur un serveur. Les pièces existent au format Yaml.

Variables

Si vous avez une formation en programmation, alors vous avez probablement utilisé des variables. Fondamentalement, une variable représente une valeur. Une variable peut inclure des lettres, des chiffres et des soulignements mais doit toujours commencer par des lettres.

Les variables sont utilisées lorsque les instructions varient d'un système à un autre. Cela est particulièrement vrai pendant la configuration ou divers services et fonctionnalités.

Il existe 3 principaux types de variables:

  • Playbook Variables
  • Variables d'inventaire
  • Variables spéciales

Dans Anable, Les variables sont d'abord définies en utilisant le vars, puis suivi du nom de la variable et de la valeur.

La syntaxe est comme indiqué:

vars: var name1: 'ma première variable' var name2: 'ma deuxième variable' 

Considérez le code ci-dessous.

- Hôtes: webservers vars: - web_directory: / var / www / html / 

Dans l'exemple ci-dessus, la variable ici est web_directory et il indique que et / var / www / html / chemin.

Faits

Faits Les propriétés du système sont-elles recueillies par ANSIBLE lorsqu'elle exécute un playbook sur un système hôte. Les propriétés incluent le nom d'hôte, la famille du système d'exploitation, le type CPU et les cœurs CPU pour en mentionner quelques-uns.

Pour avoir un aperçu du nombre de faits disponibles pour une utilisation, la commande.

$ anible localhost -m configuration 
Liste des faits ANSIBLE disponibles

Comme vous pouvez le voir, un grand nombre de faits ont été affichés par défaut. Vous pouvez encore réduire les résultats en utilisant le paramètre de filtre comme indiqué.

$ anible localhost -m Configuration -a "filter = * ipv4" 
Liste des faits ansibles IPv4

Fichiers de configuration

Dans Anable, Un fichier de configuration est un fichier qui contient différents paramètres de paramètres qui déterminent comment ANSIBLE s'exécute. Le fichier de configuration par défaut est le anable.CFG Fichier situé dans / etc / anible / annuaire.

Vous pouvez afficher le fichier de configuration en exécutant:

$ cat / etc / anible / anible.CFG 
Fichier de configuration anible

Comme vous pouvez l'observer, plusieurs paramètres sont inclus tels que inventaire et bibliothèque Chemins de fichiers, utilisateur sudo, filtres de plugin, modules, etc. Ces paramètres peuvent être ajustés simplement en les commentant et en modifiant les valeurs qui y sont.

De plus, vous pouvez avoir plusieurs fichiers de configurations qui fonctionnent avec ANSIBLE en dehors de votre fichier de configuration par défaut.

Résumé

Ayant regardé les composants principaux en Anable, Nous espérons que vous êtes en mesure de les garder au bout des doigts et de les choisir alors que nous avançons. Rejoignez-nous sur votre prochain sujet.