De acordo com os docs ansible, um Playbook é:
... a base para um gerenciamento de configuração realmente simples e sistema de implantação de várias máquinas, diferente de qualquer um que já existe, e que é muito adequado para implantar aplicativos complexos.
E, novamente, de acordo com esses mesmos documentos, as funções são:
... maneiras de carregar automaticamente certos vars_files, tarefas e manipuladores com base em uma estrutura de arquivo conhecida. O agrupamento de conteúdo por funções também permite o fácil compartilhamento de funções com outros usuários.
No entanto, a distinção entre esses e seus diferentes casos de uso não é imediatamente óbvia para mim. Por exemplo, se eu configurar meu /etc/ansible/hostsarquivo para se parecer com:
[databases]
mydb01.example.org
mydb02.example.org
[mail_servers]
mymail01.example.org
mymail_dr.example.org
... então o que é esta [databases]entrada " " ... uma função ? Ou o nome de um arquivo YAML de playbook em algum lugar? Ou alguma outra coisa?!?
Se alguém pudesse me explicar as diferenças entre eles, minha compreensão de Ansible seria muito aprimorada!
- Manual vs Papel vs
[databases]e entradas semelhantes em/etc/ansible/hosts - Se Playbooks são definidos dentro de arquivos YAML, então onde as funções são definidas?
- Além de
ansible.cfgmorar no servidor Ansible, como faço para adicionar / configurar o Ansible com Playbooks / funções disponíveis? Por exemplo, quando corroansible-playbook someplaybook.yaml, como Ansible sabe onde encontrar aquele manual?
tasksFazer coisas. playbooksorganizar e lançar tarefas. rolesorganizar um monte de tarefas, manipuladores, etc. que executam uma função específica. Alguns playbooksão necessários para lançar o role(s). O que você chamaria de coleção de rolese playbooks? Digamos, por exemplo, um que gerencia a configuração de todos os hosts em seu site?