Entrar ou criar conta

ULC Lab · implementação reproduzível

Laboratório: Orquestração de Recuperação de Desastres com Ansible e Rsync em Ambiente Virtualizado

Você terá um ambiente de duas máquinas virtuais Linux, com Ansible automatizando a restauração de arquivos críticos após uma simulação de desastre. O laboratório pode ser realizado em cerca de 2 horas.

Automação de recuperação de desastres com Ansible
Ligado ao treinamento Automação de recuperação de desastres com Ansible
ULC-LAB-CONT-0002 · Status de validaçãoNão validado pela Upnetix: roteiro derivado da documentação oficial, para você executar e validar
Duração estimada
120 min
Passos
11
Validações
5
Versões da documentação consultada
Ansible a versão estável atual · Rsync a versão estável atual · OpenSSH a versão estável atual
Objetivo

Demonstrar como automatizar a recuperação de arquivos críticos em um servidor após falha simulada, utilizando Ansible para orquestrar a restauração a partir de um servidor de backup via Rsync. O foco é mostrar a importância da automação para respostas rápidas e reprodutíveis em incidentes, reduzindo o erro humano e o tempo de indisponibilidade.

Topologia

Duas máquinas virtuais Linux (Ubuntu Server 22.04), conectadas em rede privada. Uma máquina é o servidor principal (192.168.56.10), a outra é o servidor de backup (192.168.56.20). O Ansible é executado a partir do servidor principal, que orquestra a restauração de arquivos do backup em caso de desastre.

                 +---------------------+
                 |  VM1: Principal    |
                 |  192.168.56.10     |
                 |  (Ansible + Rsync) |
                 +----------+----------+
                            |
                            |
                 +----------+----------+
                 |  VM2: Backup       |
                 |  192.168.56.20     |
                 |  (Rsync)           |
                 +---------------------+

Equipamentos e software

ItemRequisito, licença ou versão
Máquina Virtual (VM1)1 vCPU, 1GB RAM, 1 interface de rede, Ubuntu Server 22.04 ou superior
Máquina Virtual (VM2)1 vCPU, 1GB RAM, 1 interface de rede, Ubuntu Server 22.04 ou superior
AnsibleGPLv3 · a versão estável atual
RsyncGPLv3 · a versão estável atual
OpenSSHBSD · a versão estável atual

Roteiro

  1. Preparar as VMs e rede privada

    Crie duas VMs Ubuntu Server e configure ambas na mesma rede privada (ex: VirtualBox Host-Only Adapter).

    O que você deve ver: Ambas as VMs conseguem pingar uma à outra.

  2. Instalar dependências nas VMs

    Instale Ansible, Rsync e OpenSSH nas duas VMs.

    sudo apt update && sudo apt install ansible rsync openssh-server -y

    O que você deve ver: Pacotes instalados sem erros.

  3. Configurar acesso SSH sem senha

    Gere chave SSH em VM1 e autorize em VM2 para automação sem senha.

    ssh-keygen -t ed25519 -N '' -f ~/.ssh/id_ed25519
    ssh-copy-id user@192.168.56.20

    O que você deve ver: Acesso SSH de VM1 para VM2 sem senha.

  4. Criar diretório de dados críticos

    No servidor principal, crie um diretório com arquivos simulando dados críticos.

    mkdir -p ~/dados_criticos && echo 'arquivo importante' > ~/dados_criticos/arquivo1.txt

    O que você deve ver: Diretório e arquivo criados.

  5. Configurar backup inicial com Rsync

    No servidor principal, sincronize os dados críticos para o servidor de backup.

    rsync -avz ~/dados_criticos/ user@192.168.56.20:/home/user/backup_dados_criticos/

    O que você deve ver: Arquivos copiados para o servidor de backup.

  6. Criar inventário Ansible

    No servidor principal, crie um arquivo de inventário com o IP do backup.

    echo '[backup]
    192.168.56.20 ansible_user=user' > ~/inventario

    O que você deve ver: Arquivo inventário criado.

  7. Criar playbook de restauração

    Crie um playbook Ansible para restaurar os dados críticos do backup em caso de desastre.

    cat > ~/playbook_restauracao.yml <<EOF
    - hosts: backup
      tasks:
        - name: Restaurar dados críticos para o servidor principal
          synchronize:
            src: /home/user/backup_dados_criticos/
            dest: /home/user/dados_criticos/
            mode: pull
            recursive: yes
            delete: no
          delegate_to: 192.168.56.10
    EOF

    O que você deve ver: Playbook criado.

  8. Simular desastre (apagando dados)

    No servidor principal, apague o diretório de dados críticos para simular perda.

    rm -rf ~/dados_criticos

    O que você deve ver: Diretório removido.

  9. Executar playbook de restauração

    Execute o playbook Ansible para restaurar os dados do backup.

    ansible-playbook -i ~/inventario ~/playbook_restauracao.yml

    O que você deve ver: Saída indicando restauração dos arquivos.

  10. Verificar restauração dos dados

    No servidor principal, verifique se os arquivos críticos foram restaurados.

    ls ~/dados_criticos

    O que você deve ver: Arquivo(s) restaurado(s) no diretório.

  11. Automatizar restauração com tag

    Adicione uma tag ao playbook para permitir execução seletiva.

    Consulte a documentação da Ansible para uso de tags.

    O que você deve ver: Playbook pode ser executado com --tags.

Como saber que funcionou

TesteComandoCritério
Ping entre as VMsping -c 2 192.168.56.20Resposta de ping sem perda.
Acesso SSH sem senhassh user@192.168.56.20 'echo ok'Saída 'ok' sem pedir senha.
Backup inicial realizadossh user@192.168.56.20 'ls ~/backup_dados_criticos'Arquivo(s) do backup presentes.
Restauração automatizadals ~/dados_criticosArquivo(s) restaurado(s) após playbook.
Execução do playbook sem erroansible-playbook -i ~/inventario ~/playbook_restauracao.ymlPlaybook finaliza com status 'ok'.

Troubleshooting

SintomaCausa provávelCorreção
Erro de permissão ao acessar diretório remotoDiretório ou usuário sem permissão adequadaAjuste permissões com chown/chmod conforme necessário.
Falha na autenticação SSHChave SSH não copiada corretamenteRefaça o ssh-copy-id e teste o acesso SSH manualmente.
Rsync não encontra arquivosDiretório de origem ou destino incorretoVerifique caminhos nos comandos e playbook.
Ansible não encontra hostIP ou usuário errado no inventárioCorrija o arquivo de inventário.
Playbook falha por falta de módulo synchronizeAnsible instalado sem dependências extrasConsulte a documentação para instalar módulos necessários.

Segurança e hardening

  • Restrinja o acesso SSH apenas à rede privada das VMs
  • Utilize chaves SSH protegidas por senha em ambientes reais
  • Garanta permissões restritas nos diretórios de backup e dados críticos
  • Não execute Ansible como root sem necessidade
  • Revise logs de acesso após testes

Checklist final

Referências

  1. Ansible User Guide · Ansible (Red Hat) (docs.ansible.com)
Verificação editorial
Publicado
09/09/2026
Última revisão
09/09/2026
Versão do conteúdo
1.0
Referências
1 oficiais
Revisão técnica
redação e revisão por IA, URLs conferidas na publicação
Status
Atual
Encontrou um erro? Escreva para comercial@upnetix.com.br com o endereço da página. A revisão semestral por IA nunca altera comandos ou configurações sem passar pela fila de revisão.