Installation et déploiement d'Ansible

1. La grande importance d'Ansible pour l'exploitation et la maintenance de l'entreprise
Ansible est un nouvel outil d'exploitation et de maintenance automatisé, développé sur la base de Python, et intègre les avantages de nombreux outils d'exploitation et de maintenance (marionnette, cfengine, chef, func, fabric) pour réaliser la configuration du système par lots, Déploiement de programme par lots, commandes d'exécution par lots et autres fonctions.
Fonctionnalités d'Ansible

   1 无终端只需在主控节点部署ansible环境,是基于ssh实现管理的
   2 模块化管理工具,有大量常规运维操作模块,可实现日常绝大部分操作
   3 支持API及自定义模块,可通过Python轻松扩展
   4 通过Playbooks来定制强大的配置、状态管理1

2.Ansible 的 安装
epel 源
[fedra]
name = fedra
baseurl = http: //ftp.sjtu.edu.cn/fedora/epel/8/Everything/x86_64
gpgcheck = 0
Insérez la description de l'image ici

dnf install ansible -y
ansible --version
Insérez la description de l'image ici
Insérez la description de l'image ici

Les informations de base de
ansible : /etc/ansible/ansible.conf ## Fichier de configuration global, la valeur par défaut est rarement modifiée
/ etc / ansible / hosts ## Fichier de liste d'inventaire d'hôte global

#### 3. Construire Anisble List ####
List est la liste des hôtes de contrôle ansible
/ etc / ansible / hosts ## Fichier manifeste global

# 1. Écrivez le nom d'hôte géré ou l'
adresse IP directement, un par ligne node1.westos.com
node2.westos.com
172.25.254.240
Insérez la description de l'image ici
Si vous écrivez le nom de domaine dans la liste, vous devez le résoudre dans vim / etc / hosts
Insérez la description de l'image ici

2. Définissez la
vue de liste de groupe [nom du groupe] de l'hôte géré :

Nom de groupe dans la liste ansible [-i fichier de liste] --list-hosts
ansible non groupé --list-hosts
ansible all --list-hosts
Insérez la description de l'image ici
liste à un seul niveau
[list1]
node1.westos.com
node2.westos.com

[
list2 ] node2.westos.com

[list3]
172.25.254.240

Liste imbriquée
[westos: enfants]
liste1
liste3

# 测试 :
[root @ ansible ansible] # ansible list1 --list-hosts
hosts (1):
172.25.254.100
[root @ ansible ansible] # ansible list2 --list-hosts
hosts (1):
172.25.254.200
[root @ ansible ansible] # ansible list3 --list-hosts
hosts (1):
172.25.254.240
[root @ ansible ansible] # ansible westos --list-hosts
hosts (3):
172.25.254.100
172.25.254.200
172.25.254.240

3. Fonctionnement de plage des spécifications d'hôte
En spécifiant le nom d'hôte ou la plage d'adresses IP, la liste d'hôtes Ansible peut être simplifiée.
Syntaxe:
[start: end]
[westostest]
172.25.254. [100: 108]
Insérez la description de l'image ici
Insérez la description de l'image ici
Insérez la description de l'image ici

4. Spécifiez les autres fichiers d'inventaire Inventaire
vim
172.25.254.240
[westostest]
172.25.254.100
172.25.254.200

测试
ansible tout -i inventaire --list-hosts
ansible westostest -i inventaire --list-hosts
ansible non groupé -i inventaire --list-hosts
Insérez la description de l'image ici

La commande ansible spécifie l'expression régulière de la liste

  •   ##所有
      ##172.25.254.*
      ##westos*
    

: ## Logic ou
## westos1: linux
## 172.25.254.100: 172.25.254.200

: & ## Logic et
## westos1: & linux
## L'hôte est dans la liste westos1 et aussi dans la liste linux

:! ## Logic non
## westos1:! Linux
## n'est pas sous linux dans westos1

~ ## Commencez par des mots clés

~ (str1 | str2) ## Commencez par la condition 1 ou la condition 2

4. Explication détaillée des paramètres du fichier de configuration Ansible

Nom du groupe dans la liste ansible -m module -u remote_user

# 1. Classification et priorité des
fichiers de configuration /etc/ansible/ansible.cfg # Fichier de configuration de base, aucun autre fichier de configuration ne peut être trouvé, ce fichier prend effet
~ / .ansible.cfg #Le répertoire actuel de l'utilisateur n'a pas ansible.cfg ce fichier prend effet
./ansible.cfg #La priorité la plus élevée

2. Paramètres de configuration couramment utilisés
[par défaut] ## Basic information setting
inventory = ## Spécifiez le chemin de l'inventaire Spécifiez plusieurs chemins séparés par des virgules,
Insérez la description de l'image ici

remote_user = ## Nom d'utilisateur connecté sur l'hôte géré, l'utilisateur actuel n'est pas spécifié
Insérez la description de l'image ici

ask_pass = ## Indique s'il faut demander le mot de passe SSH, si la connexion par clé publique est définie sur false
Insérez la description de l'image ici

library = ## Répertoire de stockage des fichiers de la bibliothèque
Insérez la description de l'image ici

local_tmp = ## Répertoire d'exécution de commande temporaire local
remote_tmp = ## Répertoire de stockage du fichier de commande py temporaire de l'hôte distant
forks = ## Numéro simultané par défaut
Insérez la description de l'image ici

host_key_checking = ## Indique s'il faut entrer yes pour établir host_key lors de la première connexion à l'hôte géré
Insérez la description de l'image ici

sudo_user = ## Utilisateur sudo par défaut
ask_sudo_pass = ## Indique si le mot de passe sudo est demandé à chaque fois que la commande ansible est exécutée sur l'hôte contrôlé
nom_module = ## Le module par défaut, qui utilise la commande par défaut, peut être modifié en shell
log_path = ## Chemin du fichier journal

[privilege_escalation] ## paramètres d'informations d' identité
deviennent = ## Que ce soit pour passer automatiquement les utilisateurs après la connexion
become_method = ## Définit la méthode des utilisateurs de commutation, habituellement avec sudo
become_user = ## L'utilisateur commuté dans l'hôte géré, le plus souvent racine
devenir_ask_pass ## Avez-vous besoin de demander un mot de passe pour devenir_method, la valeur par défaut est false
Insérez la description de l'image ici

5. Créez un environnement d'exploitation Ansible au niveau de l'utilisateur.
Trois utilisateurs de machine virtuelle sont autorisés à
visudo
vers la ligne 100.
Ajoutez une autorisation et
Insérez la description de l'image ici
Insérez la description de l'image ici
Insérez la description de l'image ici
passez à d'autres utilisateurs.
Ordre des fichiers de configuration: sélectionnez en priorité le fichier de configuration du répertoire de base et de la liste d'inventaire de l'utilisateur.
Fichier de configuration:
Insérez la description de l'image ici

liste d'inventaire:
Insérez la description de l'image ici

Définissez l'authentification par clé et téléchargez la clé publique:

Insérez la description de l'image ici
Insérez la description de l'image ici
Insérez la description de l'image ici
Insérez la description de l'image ici

Test:
ansible all --list
Insérez la description de l'image ici

ansible all -m ping
réussi
Insérez la description de l'image ici

Je suppose que tu aimes

Origine blog.csdn.net/qq_42958401/article/details/108527605
conseillé
Classement