Questão de Noções de Informática — Inteligência Artificial e Automação — Quadrix 2025
- Código
- qg594749
- Banca
- Quadrix
- Órgão
- CFBio
- Ano
- 2025
- Nível
- Superior
- Cargo
- Analista de Sistemas
- CCerto
- EErrado
GabaritoC — Certo
Gabarito: CERTO. O Ansible é uma ferramenta de automação de TI que utiliza arquivos YAML para definir as tarefas, descrevendo o estado desejado dos sistemas e as ações necessárias para alcançá-lo — exatamente o que o item afirma. Essa é a essência do modelo declarativo de gerenciamento de configuração adotado pela ferramenta.
O Ansible é uma ferramenta de gerenciamento de configuração e automação de TI amplamente utilizada em ambientes DevOps. Diferentemente de ferramentas como Puppet e Chef, o Ansible é agentless (não requer agentes instalados nos nós gerenciados), conectando-se remotamente via SSH para executar as tarefas. Essa característica simplifica a implantação e reduz a sobrecarga nos sistemas gerenciados.
A principal forma de definir automações no Ansible é por meio de playbooks, que são arquivos escritos em YAML (YAML Ain't Markup Language). O YAML é um formato de serialização de dados legível por humanos, que utiliza indentação para estruturar informações. Nos playbooks, o administrador descreve o estado desejado dos sistemas — por exemplo, "o pacote nginx deve estar instalado" ou "o serviço sshd deve estar ativo" — e o Ansible se encarrega de aplicar as ações necessárias para que o sistema atinja esse estado.
Essa abordagem é chamada de declarativa: o usuário declara o resultado final desejado, sem precisar especificar passo a passo como chegar lá. O Ansible compara o estado atual do sistema com o estado desejado e executa apenas as ações necessárias para eliminar a diferença. Isso contrasta com abordagens imperativas, onde se descreve exatamente a sequência de comandos a executar.
Um exemplo prático: um playbook pode definir que o serviço Apache deve estar rodando na porta 80. Se o Apache já estiver instalado e ativo, o Ansible não fará nada; se estiver parado, ele o iniciará; se não estiver instalado, ele o instalará. Essa lógica de "estado desejado" é o coração do gerenciamento de configuração moderno.
A banca explora aqui um conhecimento técnico específico de ferramentas de automação, que vai além dos conceitos genéricos de IA. É importante diferenciar o Ansible de outras ferramentas do ecossistema DevOps:
Ferramenta | Função principal | Modelo | Linguagem de definição |
|---|---|---|---|
Ansible | Gerenciamento de configuração | Agentless (SSH) | YAML (playbooks) |
Puppet | Gerenciamento de configuração | Baseado em agentes | DSL própria (Puppet DSL) |
Chef | Gerenciamento de configuração | Baseado em agentes | Ruby (receitas) |
Terraform | Provisionamento de infraestrutura (IaC) | Agentless (APIs) | HCL (HashiCorp Configuration Language) |
A pegadinha comum é confundir o Ansible com ferramentas de provisionamento como o Terraform, ou com ferramentas de CI/CD como Jenkins. O Ansible foca na configuração de sistemas existentes (instalar pacotes, configurar serviços), enquanto o Terraform foca na criação de infraestrutura (servidores, redes, VPCs). Ambos usam abordagem declarativa, mas em camadas diferentes.
A banca pode tentar confundir o Ansible com ferramentas que usam agentes (Puppet, Chef) ou com ferramentas de provisionamento (Terraform). O Ansible é agentless e usa SSH para se conectar aos nós gerenciados — essa é a característica que o diferencia. Além disso, o YAML é a linguagem de definição dos playbooks, não uma linguagem de programação tradicional.
O item afirma que o Ansible utiliza YAML para definir tarefas e descrever o estado desejado — isso está correto e reflete o funcionamento real da ferramenta. Não há qualquer erro na afirmação.
✅ CERTO.
Link permanente: /questoes/qg594749