Ansible é uma poderosa ferramenta de automação de código aberto que permite gerenciar e configurar servidores, dispositivos de rede e aplicativos. O Ansible geralmente é usado para automatizar tarefas em hosts remotos, mas você também pode executá-lo em seu computador sem um host remoto. Isso é muito útil se você quiser testar alguns recursos rapidamente em seu computador. Este artigo é sobre como executar o Ansible Playbook localmente.
Como executar o Ansible Playbook localmente
Especificar Localhost na diretiva hosts do seu playbook.
Se você estiver executando um playbook que deseja executar no localhost , ou se você tiver um playbook que deseja executar em seu próprio computador. Basta escrever “localhost” na seção “hosts” do playbook, que é onde você costuma escrever “host group”. Dê uma olhada neste manual.
Acabamos de informar a diretiva ou chave de hosts sobre o localhost. Quando você segue este plano. Mesmo que você não tenha uma entrada localhost em seu arquivo de inventário ansible (/etc/ansible/hosts) ou um arquivo de hosts personalizado (especificado com a opção-i), esse comando será executado. Seria bom
Como uma verificação extra, ele deve ser executado em localhost ou localmente. Você pode adicionar um parâmetro de conexão e defini-lo como “local.”
name:”Brincando com Ansible e Git”hosts: localhost connection: local tasks: name:”basta executar um comando ls-lrt”shell:”ls-lrt”register:”output”debug: var=output.stdout_lines
Usando a cláusula local_action no playbook ansible
Este método é melhor que os outros três, mas cabe a você decidir se ele se adapta às suas necessidades. Aqui está um exemplo de manual local que configura uma instância do EC2 que se conecta à AWS.
Se você olhar com atenção, verá que não listamos nenhum host aqui. Em vez disso, usamos a cláusula de ação local para dizer que esta tarefa deve ser executada localmente.
nome: criar uma instância ec2
local_action:
module: ec2
image: ami-8caa1ce4
instance_type: m3.medium
key_name: mykey
grupo:
-web
-ssh
instance_tags:
tipo: web
env: produção
Adicione uma entrada em seu Inventário
Essa é outra maneira de executar um playbook Ansible local.
Você também pode informar ao seu arquivo de inventário qual é o host local. Seu arquivo de inventário pode estar em/etc/ansible/hosts, que é o local padrão, ou em um arquivo de hosts ansible personalizado no diretório em que você está atualmente. os mesmos resultados. A linha destacada em amarelo mostra que o localhost foi adicionado ao arquivo de inventário. Portanto, se você quiser dar um nome diferente ao seu localhost, poderá fazê-lo desta maneira. Você pode fazer o mesmo que “controlmachine”. Agora você pode colocar este nome para localhost em seu playbook, como hosts: controlmachine
FAQ
O Ansible Windows usa SSH ou WinRM?
PowerShell Remoting usa o mesmo protocolo que WinRM para executar comandos remotos de dentro do PowerShell. No momento em que este livro foi escrito, o Ansible oferece suporte ao SSH como um protocolo de gerenciamento, mas esse ainda é um recurso experimental. Você deve configurar o WinRM para que o Ansible possa usá-lo para se comunicar com o nó do Windows.
Como executar o playbook do Ansible no Linux localhost?
Colocando “localhost” no argumento hosts do manual do ansible, podemos executá-lo localmente ou na máquina de controle do ansible. No argumento hosts, escreva “localhost” para que todo este playbook seja executado na máquina local ou na máquina de controle ansible. Este manual será executado na máquina que você tem em casa.
Podemos executar o manual do Ansible no Windows?
O Windows pode ser usado para executar o Ansible? Não, o Ansible só pode lidar com hosts que executam o Windows. O Ansible não pode ser executado diretamente em um host do Windows, mas pode ser executado em um Windows Subsystem for Linux host (WSL).
Onde é executado um playbook do Ansible?
O Ansible é executado de o nó de controle. Por exemplo, o comando ansible-playbook é executado no nó de controle. Os dispositivos que estão sendo automatizados, como um servidor Microsoft Windows, são chamados de “nós gerenciados”.
Como faço para tornar o playbook do Ansible interativo?
Adicione uma seção “vars prompt” para sua cartilha se quiser que algumas informações sejam solicitadas ao usuário. Ao solicitar variáveis ao usuário, você não precisa anotar informações confidenciais, como senhas. Juntamente com a segurança, os prompts ajudam você a ser flexível.