Upnetix Labs · protocolo de experimento
Protocolo: Qual o impacto do tamanho do inventário no tempo de execução de um playbook Ansible?
Este protocolo avalia como o número de hosts em um inventário afeta o tempo total para executar um playbook simples no Ansible. O objetivo é mensurar a escalabilidade do Ansible em um ambiente controlado.

Como o tempo de execução de um playbook Ansible varia conforme o número de hosts no inventário?
Hipótese
Aumentar o número de hosts no inventário eleva linearmente o tempo total de execução do playbook.
Variáveis
| Independentes (o que varia) | número de hosts no inventário |
|---|---|
| Dependentes (o que se mede) | tempo total de execução do playbook (segundos) |
| Controladas (o que fica fixo) | tipo de tarefa do playbook; configuração dos hosts (CPU, RAM, SO); rede (latência, largura de banda); versão do Ansible; conexão SSH sem senha |
Ambiente
Ambiente virtualizado ou físico com pelo menos 1 controlador Ansible (Linux) e múltiplos hosts Linux acessíveis via SSH. Ansible instalado conforme documentação oficial. Ferramenta de medição: comando time do Linux.
Procedimento
- Preparação do inventário
Crie arquivos de inventário com diferentes quantidades de hosts: 1, 10, 50, 100, 200.
Consulte a documentação para formato de inventário: https://docs.ansible.com/ansible/latest/user_guide/intro_inventory.html - Criação do playbook
Escreva um playbook simples que execute uma tarefa idempotente (ex: ping) em todos os hosts.
Consulte a documentação para exemplo de playbook: https://docs.ansible.com/ansible/latest/user_guide/playbooks_intro.html - Execução do playbook
Para cada inventário, execute o playbook usando o comando time para medir o tempo total.
time ansible-playbook -i inventarioX playbook.yml - Repetição
Repita cada execução 5 vezes para cada tamanho de inventário, reiniciando o controlador entre as execuções para evitar cache.
Planilha de coleta
| num_hosts (hosts) | execucao (repeticao) | tempo_total_segundos (segundos) |
|---|---|---|
| EXEMPLO: 10, 3, 4.21 | ||
Repetições recomendadas: 5. Baixe a planilha vazia em CSV: colunas prontas.
Análise
Calcule a média, mediana e desvio padrão do tempo para cada tamanho de inventário. Compare a variação do tempo conforme o número de hosts. Analise se o crescimento é linear, sublinear ou superlinear.
Critérios de decisão
- Se o tempo aumentar proporcionalmente ao número de hosts, a hipótese é confirmada.
- Se houver saltos abruptos ou comportamento não linear, investigar gargalos de rede ou CPU.
Fontes de erro e mitigação
- Variação de carga nos hosts ou no controlador pode afetar o tempo; execute em horários de baixa utilização.
- Latência de rede instável pode distorcer resultados; use rede dedicada se possível.
- Caches de conexão SSH podem acelerar execuções subsequentes; reinicie o controlador entre repetições.
