Instalação e implantação Ansible

1. Grande importância da Ansible para a operação e manutenção da empresa
Ansible é uma ferramenta de manutenção e operação automatizada emergente, desenvolvida com base em Python e integra as vantagens de muitas ferramentas de operação e manutenção (fantoche, cfengine, chef, func, fabric) para obter a configuração do sistema em lote, Implantação de programa em lote, comandos de execução em lote e outras funções.
Recursos 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/Tudo/x86_64
gpgcheck = 0
Insira a descrição da imagem aqui

dnf install ansible -y
ansible --version
Insira a descrição da imagem aqui
Insira a descrição da imagem aqui

Informações básicas de
ansible : /etc/ansible/ansible.conf ## Arquivo de configuração global, o padrão raramente é modificado
/ etc / ansible / hosts ## Arquivo de lista de inventário de host global

#### 3. Construindo uma lista de Anisble ####
List é a lista de hosts de controle ansible
/ etc / ansible / hosts ## Arquivo de manifesto global

# 1. Grave o nome do host gerenciado ou ip diretamente, um por linha
node1.westos.com
node2.westos.com
172.25.254.240
Insira a descrição da imagem aqui
Se você escrever o nome de domínio na lista, será necessário resolvê-lo em vim / etc / hosts
Insira a descrição da imagem aqui

2. Defina a
exibição de lista do grupo [nome do grupo] do host gerenciado :

Nome do grupo na lista ansible [-i arquivo de lista] --list-hosts
ansible desagrupado --list-hosts
ansible todos --list-hosts
Insira a descrição da imagem aqui
lista de nível único
[list1]
node1.westos.com
node2.westos.com

[
lista2 ] node2.westos.com

[lista3]
172,25,254,240

Lista aninhada
[westos: children]
list1
list3

# 测试 :
[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. Operação de intervalo de especificação de host
Ao especificar o nome do host ou intervalo de IP, a lista de hosts Ansible pode ser simplificada.
Sintaxe:
[start: end]
[westostest]
172.25.254. [100: 108]
Insira a descrição da imagem aqui
Insira a descrição da imagem aqui
Insira a descrição da imagem aqui

4. Especificar outros arquivos de inventário
vim inventário
172.25.254.240
[westostest]
172.25.254.100
172.25.254.200

测试
ansible all -i inventário --list-hosts
ansible westostest -i inventário --list-hosts
ansible ungrouped -i inventário --list-hosts
Insira a descrição da imagem aqui

O comando ansible especifica a expressão regular da lista

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

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

: & ## Logic e
## westos1: & linux
## O host está na lista westos1 e também na lista linux

:! ## Logic non
## westos1:! Linux
## não está em linux em westos1

~ ## Comece com palavras-chave

~ (str1 | str2) ## Comece com condição 1 ou condição 2

4. Explicação detalhada dos parâmetros do arquivo de configuração Ansible

Nome do grupo na lista ansible -m módulo -u remote_user

# 1. Classificação e prioridade dos
arquivos de configuração /etc/ansible/ansible.cfg # Arquivo de configuração básico, nenhum outro arquivo de configuração pode ser encontrado, este arquivo entra em vigor
~ / .ansible.cfg #Não há ansible.cfg no diretório atual do usuário, este arquivo entra em vigor
./ansible.cfg #A prioridade mais alta

2. Parâmetros de configuração comumente usados
[padrão] ## Basic information setting
inventory = ## Especifique o caminho do inventário Especifique vários caminhos separados por vírgulas,
Insira a descrição da imagem aqui

remote_user = ## Nome de usuário conectado no host gerenciado, o usuário atual não foi especificado
Insira a descrição da imagem aqui

ask_pass = ## Se deve solicitar a senha SSH, se o login de chave pública estiver definido como falso
Insira a descrição da imagem aqui

library = ## Biblioteca de diretório de armazenamento de arquivos
Insira a descrição da imagem aqui

local_tmp = ## Diretório de execução de comando temporário local
remote_tmp = ## Host remoto diretório de armazenamento de arquivo de comando py temporário
forks = ## Número simultâneo padrão
Insira a descrição da imagem aqui

host_key_checking = ## Se deve inserir sim para estabelecer host_key ao conectar-se ao host gerenciado pela primeira vez
Insira a descrição da imagem aqui

sudo_user = ## usuário sudo padrão
ask_sudo_pass = ## Se a senha sudo é solicitada toda vez que o comando ansible é executado no host controlado
module_name = ## O módulo padrão, que usa o comando por padrão, pode ser modificado para shell
log_path = ## Caminho do arquivo de log

[privilege_escalation] ## Configurações de informações de identidade
tornam-se = ## Se deve alternar automaticamente os usuários após a conexão
tornar-se_method = ## Defina o método de alternar usuários, geralmente com sudo
torne-se_user = ## O usuário alternou para no host gerenciado, geralmente root
Torne-se_ask_pass ## Você precisa solicitar uma senha para Torne-se_metodo, o padrão é falso
Insira a descrição da imagem aqui

5. Crie um ambiente operacional Ansible em nível de usuário.
Três usuários de máquina virtual estão autorizados a
visualizar
em cerca de 100 linhas.
Adicione autorização e
Insira a descrição da imagem aqui
Insira a descrição da imagem aqui
Insira a descrição da imagem aqui
mude para outros usuários.
Ordem do arquivo de configuração: Prioridade selecione o arquivo de configuração do diretório inicial e da lista de inventário do usuário.
Arquivo de configuração:
Insira a descrição da imagem aqui

lista de inventário:
Insira a descrição da imagem aqui

Defina a autenticação de chave e carregue a chave pública:

Insira a descrição da imagem aqui
Insira a descrição da imagem aqui
Insira a descrição da imagem aqui
Insira a descrição da imagem aqui

Teste:
ansible all --list
Insira a descrição da imagem aqui

ansible all -m ping
bem-sucedido
Insira a descrição da imagem aqui

Acho que você gosta

Origin blog.csdn.net/qq_42958401/article/details/108527605
Recomendado
Clasificación