kimdre.hcloud-backup

GitHub Release

Rol de Ansible: kimdre.hcloud-backup

Rol de Ansible para crear y rotar copias de seguridad y instantáneas de servidores en Hetzner Cloud.

Requisitos

  • Ansible 2.15 o superior

Variables del Rol

api_token

Token de API de Hetzner Cloud.

Ejemplo

api_token: "tu-token-hcloud"

También se puede establecer como una variable de entorno HCLOUD_TOKEN.

Variables por Defecto

Consulta hcloud-backup/defaults/main.yml para ver todas las variables disponibles.

backup_type

Tipo de copia de seguridad a crear.

Formatos posibles:

  • snapshot es generalmente más barato para servidores más pequeños y con menor uso de disco, y no hay límite en el número de instantáneas que se pueden crear.
  • backup debe estar habilitado primero para el servidor y solo se pueden crear 7 copias de seguridad por servidor antes de que se roten.

Valor por defecto

backup_type: snapshot

backup_description

Descripción de la instantánea/copia de seguridad.

Valor por defecto

backup_description: "{{ inventory_hostname }} {{ now(fmt='%Y-%m-%d %H:%M:%S') }}"

backup_labels

Lista de etiquetas de la instantánea/copia de seguridad.

Formatos posibles:

  • key: "valor"
  • key: "" para etiquetas sin valor.

Valor por defecto

backup_labels:
    created_by: "ansible.hcloud-backup"
    created_at: "{{ now(fmt='%Y-%m-%d_%H-%M-%S') }}"
    host: "{{ inventory_hostname }}"
    rotation: "true"

label_selector

Lista de etiquetas para identificar instantáneas para la rotación, debe superponerse con backup_labels.

Solo se utiliza cuando backup_type está establecido en snapshot.

Formatos posibles:

  • key: "valor"
  • key: "" para etiquetas sin valor.

Valor por defecto

label_selector:
    created_by: ansible.hcloud-backup
    host: "{{ inventory_hostname }}"
    rotation: "true"

rotate_snapshots

Rotar instantáneas; si se establece en true, se eliminarán las instantáneas más antiguas encontradas dependiendo de la variable keep_snapshots y del número de instantáneas existentes.

Solo se utiliza cuando backup_type está establecido en snapshot.

Valor por defecto

rotate_snapshots: true

keep_snapshots

Número de instantáneas a mantener, se eliminarán las instantáneas más antiguas.

Solo se utiliza cuando backup_type está establecido en snapshot y rotate_snapshots está establecido en true.

Valor por defecto

keep_snapshots: 5

backup_check_retries

Número de reintentos para la verificación de la creación de la copia de seguridad.

Valor por defecto

backup_check_retries: 40

backup_check_delay

Retraso en segundos entre los reintentos para la verificación de la creación de la copia de seguridad.

Valor por defecto

backup_check_delay: 15

delegation

Host para ejecutar las tareas del rol.

Valor por defecto

delegation: "{{ inventory_hostname }}"

Ejemplo de Playbook

- name: "Crear instantánea de host"
  hosts: '{{ target | default("all") }}'
  roles:
    - role: kimdre.hcloud-backup
      vars:
        api_token: "tu-token-api-hcloud"
        backup_type: "snapshot"
        keep_snapshots: 7

Licencia

Apache-2.0

Autor

Acerca del proyecto

Ansible role for Hetzner Cloud to create and rotate backups and snapshots of your servers

Instalar
ansible-galaxy install kimdre.hcloud-backup
Licencia
apache-2.0
Descargas
2k
Propietario
DevOps engineer and linux admin, also a mountainbike enthusiast! 🚵‍♂️ Founder of @Maki-IT.