barman

grofers.ansible-role-barman Статус сборки

💥 Проверено на практике в Grofers

Ansible роль, которая устанавливает и настраивает barman от 2ndQuadrant только на дистрибутивах на базе Debian (Тестировалось только на Ubuntu 14.04, но должно работать и на других дистрибутивах).

Установка

Это было протестировано на Ansible 2.1.0 и выше. Чтобы установить:

ansible-galaxy install grofers.barman

Переменные роли

Определение списка серверов для резервного копирования:

barman_server_configuration:

Настройки для сервера:

имя резервируемого сервера

  - name: ssh
description: "Пример базы данных PostgreSQL (по SSH)"
conninfo: "host=pg user=barman dbname=postgres"

Определите метод резервного копирования (rsync|postgres)

backup_method: "rsync"

Если метод rsync

ssh_command: "ssh postgres@pg"
# файл по умолчанию для ansible-role-barman
barman_client_only: no

## Настройки APT
barman_postgresql_apt_key_id: ACCC4CF8
barman_postgresql_apt_key_url: "https://www.postgresql.org/media/keys/ACCC4CF8.asc"
barman_postgresql_apt_repository: "deb http://apt.postgresql.org/pub/repos/apt/ {{ansible_distribution_release}}-pgdg main"
# Приоритет источника PGDG
barman_postgresql_apt_pin_priority: 500

## Настройка Cron
barman_cron_disabled: false
# Запуск cron barman каждую минуту
barman_cron_schedule:
  minute: "*"
  hour: "*"
  day: "*"
  weekday: "*"
  month: "*"

## Конфигурация Barman
barman_user: "barman"
barman_configuration_files_directory: "/etc/barman.d"
barman_home: "/var/lib/barman"
barman_log_directory: "/var/log/barman"
barman_log_file: "{{ barman_log_directory }}/barman.log"
barman_log_level: "INFO"

barman_server_configuration:
  - name: ssh
    description: "Пример базы данных PostgreSQL (по SSH)"
    ssh_command: "ssh postgres@pg"
    conninfo: "host=pg user=barman dbname=postgres"
    backup_method: "rsync"
    reuse_backup: "None"
    backup_options: "exclusive_backup"
    archiver: "on"
    archiver_batch_size: 50
    path_prefix: ''
    cron_disabled: false
    cron_schedule:
      minute: "0"
      hour: "0"
      day: "*"
      month: "*"
      weekday: "*"

Есть много других необязательных переменных, пожалуйста, смотрите defaults/main.yml для всех из них.

Пример Playbook

    - name: Настройка и конфигурация barman
      become: yes
      roles:
        - grofers.barman

Лицензия

MIT

Информация об авторе

vishesh92

О проекте

Ansible role which installs and configures barman by 2ndQuadrant

Установить
ansible-galaxy install grofers/ansible-role-barman
Лицензия
mit
Загрузки
1644
Владелец