Ansible - Gerenciamento de Infra Flashcards
O que é gerenciamento de Configuração?
Processo usado para manter sistemas, servidores e aplicações em um
estado DESEJADO e CONSISTENTE.
É uma forma de se certificar de que o sistema funciona CONFORME ESPERADO
mesmo com alterações/atualizações.
Benefícios do Gerenciamento de Configuração.
- Garantir que os ambientes de teste e produção correspondam, para que
os aplicativos sejam executados conforme o esperado. - Automatização de tarefas administrativas que permitem provisionar
servidores rapidamente. - Automação e Agilidade mitigam erro humano e tornam o gerenciamento do
sistema mais previsível e escalável.
Ansible
Ferramenta Open Source.
Automatiza os seguintes processos:
Provisionamento e gerenciamento de configurações
Implantação de aplicações e orquestração.
Recursos do Ansible
Gerenciamento de Configuração
Implantação de Aplicações
Provisionamento em Nuvem
Segurança e Compliance
Orquestração (de Hosts em um Inventário).
Outras ferramentas de Gerenciamento de Configuração
Puppet
Chef
CFEngine
SaltStack
Arquitetura do Ansible 1
Engine com
Inventário
Módulos
Plugins
API
Ansible Playbook
o usuário determina quais tarefas o Ansible deve executar a partir de
ma lista de inventário nos Hosts que integram esse inventário.
Networking para gerenciar recursos de rede
CMDB - Data base
Arquitetura do Ansible 2
Desenvolvida em Python
Autenticação
. User e senha
. LDAP e Kerberos
. Chaves SSH
Comunicação
. SSH (Linux)
. WinRM (Windows)
Idempotente
. Shell Script executa tudo, sempre.
. Ansible executa a mesma ação apenas uma vez.
Inventory File
Uma lista de nós gerenciados(‘target’ | um ou mais ‘hosts’)
Ansible Facts
São as propriedades dos recursos do sistema. O Inventário dos Recursos
Ansible cfg
Principal arquivo de configuração do Ansible.
Comando para visualizar as confiurações: ansible-config
Armazenado por padrão em /etc/ansible/ansible.cfg
Modules
Unidades de código que podem controlar recursos ou executar comandos.
Ad-hoc Commands
Comandos CLI usados para execução de tarefas simples.
Playbooks
É um arquivo yml com uma ou mais plays, usado para definir o estado desejado.
Variables
Armazena informações para gerir diferenças entre sistemas
Conditionals
Ação executada coom base em alguma condição
when: ansible_facts[‘os_family’] == “Debian”