Eseguire il backup di un server utilizzando Ansible?


10

Ansible sembra essere uno strumento di automazione piuttosto efficiente per distribuire e aggiornare le applicazioni sui server.

  • È possibile utilizzarlo anche per il backup di un server (Linux)? È una buona pratica farlo?

  • Se sì, c'è qualche modulo / esempio su come farlo? Ad esempio, supponiamo di voler creare un'esportazione di un database e copiarlo su un altro computer, come automatizzare questa attività con Ansible?

Risposte:


9

È possibile eseguire il backup del server utilizzando Ansible. Sono un nuovo utente di Ansible, quindi non sono sicuro che sia una buona pratica o meno.

Se si desidera eseguire il backup dei database è possibile utilizzare il modulo mysql_db .

tasks:
  - name: backup db server
    mysql_db: name={{item}} state=dump target=/{{item}}-{{ansible_date_time.iso8601}}.sql
    with_items: db_name

quindi è possibile utilizzare il modulo di recupero o sincronizzazione per il trasferimento di tali file sul computer locale. Con il fetchmodulo non è possibile scaricare più file in quanto non supporta i caratteri jolly e il download di cartelle. La creazione di un file tar è un'opzione per superare questo problema.

È inoltre possibile utilizzare scpper scaricare i file di backup dall'istanza remota.

- name: Downloading backup files from remote machine
  command: scp -i {{ansible_ssh_private_key_file}} {{remote_user}}@{{host}}:/backup/* {{backup_folder}}
  delegate_to: 127.0.0.1

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.