Spec-Zone.ru › Ansible 2.9

postgresql_slot – Добавление или удаление слотов репликации из базы данных PostgreSQL

Новое в версии 2.8.

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • См. также
  • Примеры
  • Возвращаемые значения
  • Статус

Обзор

  • Добавление или удаление физических или логических слотов репликации из базы данных PostgreSQL.

Требования

Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.

  • psycopg2

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
ca_cert
строка
Указывает имя файла, содержащего сертификаты центра сертификации (CA).
Если файл существует, сертификат сервера будет проверен на подпись одним из этих центров.

псевдонимы: ssl_rootcert
db
строка
Имя базы данных для подключения.

псевдонимы: login_db
immediately_reserve
логическое значение
    Варианты:
  • нет ←
  • да
Необязательный параметр, который, когда yes указывает, что LSN для этого слота репликации должен быть зарезервирован немедленно, в противном случае значение по умолчанию, no, указывает, что LSN резервируется при первом подключении от клиента потоковой репликации.
Доступен начиная с PostgreSQL версии 9.6.
Используется только со значением slot_type=physical.
Взаимоисключающее с slot_type=logical.
login_host
строка
Хост, на котором работает база данных.
login_password
строка
Пароль для аутентификации.
login_unix_socket
строка
Путь к сокету Unix-доменной области для локальных подключений.
login_user
строка
Значение по умолчанию:
"postgres"
Имя пользователя для аутентификации.
name
строка / обязательно
Имя слота репликации для добавления или удаления.

псевдонимы: slot_name
output_plugin
строка
Значение по умолчанию:
"test_decoding"
Все логические слоты должны указывать, какой декодировщик плагина вывода они используют.
Этот параметр не применяется к физическим слотам.
Он будет проигнорирован со значением slot_type=physical.
port
целое число
Значение по умолчанию:
5432
Порт базы данных для подключения.

псевдонимы: login_port
session_role
строка
Переключение на session_role после подключения. Указанный session_role должен быть ролью, членом которой является текущий login_user.
Проверка разрешений для SQL-команд выполняется так, как будто session_role была той, которая первоначально вошла в систему.
slot_type
строка
    Варианты:
  • логический
  • физический ←
Тип слота.
ssl_mode
строка
    Варианты:
  • разрешить
  • отключить
  • предпочитать ←
  • требовать
  • проверить-ca
  • проверить-полностью
Определяет, будет ли и с какой приоритетностью устанавливаться защищенное SSL TCP/IP-соединение с сервером.
См. https://www.postgresql.org/docs/current/static/libpq-ssl.html для получения дополнительной информации о режимах.
Значение по умолчанию prefer соответствует значению по умолчанию libpq.
state
строка
    Варианты:
  • отсутствует
  • наличие ←
Состояние слота.
state=present подразумевает, что слот должен присутствовать в системе.
state=absent подразумевает, что groups должны быть отозваны из target_roles.

Примечания

Примечание

  • Физические слоты репликации были введены в PostgreSQL с версией 9.4, а логические слоты репликации — начиная с версии 10.0.
  • По умолчанию аутентификация предполагает, что вы входите как или с правами sudo пользователя postgres на хосте.
  • Чтобы избежать ошибки «Ошибка аутентификации клиента для пользователя postgres», используйте пользователя postgres в качестве become_user.
  • Этот модуль использует psycopg2, адаптер Python для базы данных PostgreSQL. Необходимо убедиться, что psycopg2 установлен на хосте перед использованием этого модуля.
  • Если удаленный хост является сервером PostgreSQL (что является стандартным случаем), то PostgreSQL также должен быть установлен на удаленном хосте.
  • Для систем на базе Ubuntu установите пакеты postgresql, libpq-dev и python-psycopg2 на удаленном хосте перед использованием этого модуля.
  • Параметр ca_cert требует как минимум Postgres версии 8.4 и psycopg2 версии 2.4.3.

См. также

См. также

Ссылка на справку по представлению PostgreSQL pg_replication_slots
Полная справка по представлению PostgreSQL pg_replication_slots.
Ссылка на справку по протоколу потоковой репликации PostgreSQL
Полная справка по документации протокола потоковой репликации PostgreSQL.
Ссылка на справку по протоколу логической репликации PostgreSQL
Полная справка по документации протокола логической репликации PostgreSQL.

Примеры

- name: Create physical_one physical slot if doesn't exist
  become_user: postgres
  postgresql_slot:
    slot_name: physical_one
    db: ansible

- name: Remove physical_one slot if exists
  become_user: postgres
  postgresql_slot:
    slot_name: physical_one
    db: ansible
    state: absent

- name: Create logical_one logical slot to the database acme if doesn't exist
  postgresql_slot:
    name: logical_slot_one
    slot_type: logical
    state: present
    output_plugin: custom_decoder_one
    db: "acme"

- name: Remove logical_one slot if exists from the cluster running on another host and non-standard port
  postgresql_slot:
    name: logical_one
    login_host: mydatabase.example.org
    port: 5433
    login_user: ourSuperuser
    login_password: thePassword
    state: absent

Возвращаемые значения

Общие возвращаемые значения описаны здесь, следующие — поля, уникальные для данного модуля:

Ключ Возвращаемое значение Описание
name
строка
всегда
Имя слота

Пример:
physical_one
queries
строка
всегда
Список выполненных запросов.

Пример:
["SELECT pg_create_physical_replication_slot('physical_one', False, False)"]


Статус

  • Этот модуль не гарантирует обратную совместимость. [превью]
  • Этот модуль поддерживается сообществом Ansible. [сообщество]

Авторы

  • John Scalia (@jscalia)
  • Andrew Klychkov (@Andersson007)

Подсказка

Если вы обнаружите какие-либо проблемы в данной документации, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.9/modules/postgresql_slot_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API