Cadangkan server menggunakan Ansible?

10

Kemungkinan merupakan alat otomatisasi yang cukup efisien untuk digunakan dan memperbarui aplikasi di server.

  • Apakah mungkin untuk menggunakannya untuk membackup server (Linux) juga? Apakah ini praktik yang baik untuk melakukannya?

  • Jika ya, apakah ada modul / contoh tentang cara melakukannya? Sebagai contoh, katakanlah saya ingin membuat ekspor database dan menyalinnya di komputer lain, bagaimana cara mengotomatiskan tugas ini dengan Ansible?

Nicolas C
sumber

Jawaban:

9

Dimungkinkan untuk membuat cadangan server menggunakan Ansible. Saya pengguna baru dari Ansible, jadi saya tidak yakin apakah ini praktik yang baik atau tidak.

Jika Anda ingin membuat cadangan basis data, Anda dapat menggunakan modul mysql_db .

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

maka Anda dapat menggunakan mengambil atau menyinkronkan modul untuk mentransfer file-file itu ke mesin lokal. Dengan fetchmodul, tidak mungkin mengunduh banyak file karena tidak mendukung karakter wildcard dan pengunduhan folder. Membuat satu file tar adalah opsi untuk mengatasi masalah ini.

Anda juga dapat menggunakan scpuntuk mengunduh file cadangan dari instance jarak jauh.

- 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
Aniket
sumber