Ansible é uma ferramenta moderna de automação de código aberto que facilita a configuração e o gerenciamento de servidores remotos. Embora outras ferramentas de automação possam corresponder à usabilidade da Ansible, elas geralmente são complexas demais do que uma ferramenta básica de automação precisa ser.
Ansible, por outro lado, é simples e fácil de usar para a maioria dos usuários. Ele usa o formato YAML para especificar configurações e tarefas de servidor executadas em máquinas remotas. Ele também oferece um ótimo recurso de segurança usando o SSH como o modo padrão de autenticação.
No entanto, em alguns casos, você pode não ter configurado as teclas SSH em um host remoto e, portanto, precisam especificar o nome de usuário e a senha explicitamente
Se for esse o caso, este guia discutirá a criação de manuais básicos e executando -os em um host remoto que não possui chaves ssh configuradas.
Instalando Ansible
Antes de usar o Ansible para gerenciar suas máquinas remotas, você precisa instalá -lo em sua máquina, que atua como o nó de controle.
No meu exemplo, mostrarei como instalá -lo no Rehl/Centos e Fedora; nesse caso, tudo o que preciso fazer é usar o comando:
$ sudo dnf installible
Este comando instalará Ansible em sua máquina, dando a você todas as ferramentas para controlar todas as suas máquinas remotas de um único local. O próximo passo é configurar o arquivo host.
Configurando o inventário de anfitriões Ansible
Em Ansible, um inventário é um arquivo que contém informações sobre seus hosts remotos que estarão sob a gerência da Ansible. Os hosts no arquivo de inventário podem ser organizados em grupos e subgrupos e especificados com um endereço IP da máquina remota ou o nome do host.
Para adicionar ou remover hosts, edite o arquivo localizado em/etc/Ansible/hosts.
$ sudo vim/etc/Ansible/hosts
OBSERVAÇÃO: O arquivo hosts padrão pode não ser incluído por padrão em algumas instalações. Simplesmente crie um se não existir.
Dentro do arquivo hosts, adicione as entradas como:
[MyServers]
192.168.0.20
192.168.0.13
O acima define um grupo chamado MyServers e seus endereços IP correspondentes. Certifique -se de alterar os endereços IP acima para os endereços IP de seus hosts.
Conexão de teste
Depois de configurar seu arquivo de inventário, é melhor verificar se seus hosts estão online e podem receber comandos da Ansible. Fazemos isso chamando o módulo Ansible Ping. No seu nó local Ansible, use o comando mostrado abaixo:
$ Ansible All -M Ping -u Ubuntu --k -pass
Isso usará o nome de usuário do Ubuntu e pedirá a senha SSH. Sinta -se à vontade para mudar o nome de usuário para qualquer usuário desejado em sua máquina remota. Se o host remoto estiver acordado e você fornecer a senha SSH correta, verá uma resposta como:
192.168.0.7 | Sucesso =>
"Ansible_facts":
"Descoberd_interpreter_python": "/usr/bin/python3"
,
"Alterado": falso,
"pingue-pongue"
Recapitulação rápida
Como você pode ver no exemplo acima, em Ansible, para especificar o nome de usuário e a senha a serem usados para seus hosts remotos, usamos o -u [nome de usuário] e -Ask -pas para a senha.
Por exemplo, para usar a conta raiz como o login Ansible, use o comando como:
$ Ansible All -M Ping -u Root --k -pass
OBSERVAÇÃO: É ideal usar o nome de usuário e a senha como o modo de autenticação em Ansible. Use chaves ssh, se possível.
Conclusão
Neste tutorial, discutimos como instalar e criar hosts Ansible. Também abordamos como especificar nome de usuário e senha Ansible como o modo de autenticação. Tudo isso pode ser útil se você não configurou as teclas SSH na máquina remota.