DEV Community

Luiz Bernardo
Luiz Bernardo

Posted on

5 2

Usando Ansible localmente

Usar o Ansible como gerenciador de configuração no início de um projeto pode ser um pouco custoso, mas podemos fazer isso localmente.
Neste post, veremos como executar o playbook localmente em nosso Localhost como uma máquina de controle.
Na verdade, existem muitas maneiras de executar playbooks ansible localmente. Vamos ver cada um e como eles funcionam.

Especifique Localhost na diretiva de hosts do seu playbook.

É um método bem simples na qual você insere "hosts: localhost" diretamente no playbook. Não é muito elegante, mas eu uso bastante.

- name: "Provisionando ambiente"
  hosts: localhost
  connection: local
  tasks:
    - name: "Provisionando ambiente"
      shell: ./shell/aws-provisioning.sh
      ignore_errors: True
- name: "Instalando o Istio"
  hosts: localhost
  connection: local
  tasks:
    - name: "Instalando o Istio"
      shell: ./shell/install-istio.sh
      ignore_errors: True
Enter fullscreen mode Exit fullscreen mode

Você pode ir quebrando as tarefas, mas cada uma terá que ter essa entrada repetidamente.

Usando local_action flag no ansible playbook

Este método é mais recomendado do que os outros 3, mas é sempre subjetivo usá-lo para suas necessidades.

Aqui está o playbook de exemplo que é executado localmente para criar uma instância do EC2 conectando-se à AWS.

Fiz um exemplo simples para criar uma instância do EC2 na AWS com a flag local_action.

- name: create an ec2 instance
  local_action:
    module: ec2
    image: ami-8caa1ce4
    instance_type: m3.medium
    key_name: mykey
    group:
        - web
        - ssh
    instance_tags:
        type: web
        env: production
Enter fullscreen mode Exit fullscreen mode

Adicione uma entrada em seu inventário

Você também pode definir explicitamente seu localhost em seu arquivo de inventário.
Para isso, edite o arquivo /etc/ansible/hosts e inclua seu host

$ hostname >> /etc/ansible/hosts
Enter fullscreen mode Exit fullscreen mode

Especificar na linha de comando do Ansible

Por padrão o Ansbile executa as diretivas, mas você pode ignorá-las passando os parâmetros na linha de comando quando for executar o playbook.

ansible-playbook --connection=local -- inventory=127.0.0.1 -- limit=127.0.0.1 Ansible-Local.yml -i ansible_hosts
Enter fullscreen mode Exit fullscreen mode

É isso, espero ter ajudado.
Vlw flw

Top comments (0)

AWS Security LIVE!

Join us for AWS Security LIVE!

Discover the future of cloud security. Tune in live for trends, tips, and solutions from AWS and AWS Partners.

Learn More

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay