kimdre.hcloud-backup

GitHub Release

Ansibleロール: kimdre.hcloud-backup

Hetzner Cloudのサーバーのバックアップとスナップショットを作成およびローテーションするためのAnsibleロールです。

要件

  • Ansible 2.15以降

ロール変数

api_token

Hetzner CloudのAPIトークンです。

api_token: "your-hcloud-token"

環境変数 HCLOUD_TOKEN としても設定できます。

デフォルト変数

すべての利用可能な変数については、hcloud-backup/defaults/main.ymlを参照してください。

backup_type

作成するバックアップのタイプです。

可能な形式:

  • snapshot は、一般的に小さなサーバーとディスク使用量の場合、より安価で、作成できるスナップショットの数に制限はありません。
  • backup は、最初にサーバーで有効にする必要があり、ローテーションされる前にサーバーごとに7つのバックアップしか作成できません。

デフォルト値

backup_type: snapshot

backup_description

スナップショット/バックアップの説明です。

デフォルト値

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

backup_labels

スナップショット/バックアップのラベルのリストです。

可能な形式:

  • key: "value"
  • key: "" 値のないラベル用。

デフォルト値

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

label_selector

ローテーション対象のスナップショットを識別するラベルのリスト。backup_labelsと重複する必要があります。

backup_typesnapshotに設定されている場合のみ使用されます。

可能な形式:

  • key: "value"
  • key: "" 値のないラベル用。

デフォルト値

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

rotate_snapshots

スナップショットをローテーションするかどうか。trueに設定すると、最も古いスナップショットが削除されます。 削除されるスナップショットの数は、keep_snapshots変数と既存のスナップショットの数に基づきます。

backup_typesnapshotに設定されている場合のみ使用されます。

デフォルト値

rotate_snapshots: true

keep_snapshots

保持するスナップショットの数。古いスナップショットは削除されます。

backup_typesnapshotに設定され、rotate_snapshotstrueに設定されている場合のみ使用されます。

デフォルト値

keep_snapshots: 5

backup_check_retries

バックアップ作成チェックのリトライ回数です。

デフォルト値

backup_check_retries: 40

backup_check_delay

バックアップ作成チェックのリトライ間の遅延(秒)です。

デフォルト値

backup_check_delay: 15

delegation

ロールタスクを実行するホストです。

デフォルト値

delegation: "{{ inventory_hostname }}"

例のプレイブック

- name: "ホストのスナップショットを作成"
  hosts: '{{ target | default("all") }}'
  roles:
    - role: kimdre.hcloud-backup
      vars:
        api_token: "your-hcloud-api-token"
        backup_type: "snapshot"
        keep_snapshots: 7

ライセンス

Apache-2.0

著者

プロジェクトについて

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

インストール
ansible-galaxy install kimdre.hcloud-backup
ライセンス
apache-2.0
ダウンロード
2k
所有者
DevOps engineer and linux admin, also a mountainbike enthusiast! 🚵‍♂️ Founder of @Maki-IT.