Spec-Zone.ru › Ansible 2.10

community.general.postgresql_tablespace – Добавление или удаление табличных пространств PostgreSQL на удалённых хостах

Примечание

Этот плагин входит в коллекцию community.general (версия 1.3.2).

Для его установки используйте: ansible-galaxy collection install community.general.

Чтобы использовать его в плейбуке, укажите: community.general.postgresql_tablespace.

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

Обзор

  • Добавляет или удаляет табличные пространства PostgreSQL на удалённых хостах.

Требования

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

  • psycopg2

Параметры

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

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

псевдонимы: login_db
location
путь
Путь к каталогу табличного пространства в файловой системе.
Убедитесь, что каталог существует и имеет соответствующие права доступа.

псевдонимы: path
login_host
строка
Хост, на котором запущена база данных.
login_password
строка
Пароль для аутентификации.
login_unix_socket
строка
Путь к сокету Unix-домена для локальных подключений.
login_user
строка
По умолчанию:
"postgres"
Имя пользователя для аутентификации.
owner
строка
Имя роли, которая будет установлена как владелец табличного пространства.
Если этот параметр не указан, владелец табличного пространства – это роль, которая создаёт табличное пространство.
port
целое число
По умолчанию:
5432
Порт базы данных для подключения.

псевдонимы: login_port
rename_to
строка
Новое имя табличного пространства.
Новое имя не может начинаться с pg_, так как такие имена зарезервированы для системных табличных пространств.
session_role
строка
Переключение на роль session_role после подключения. Указанная роль session_role должна быть ролью, членом которой является текущий пользователь login_user.
Проверка прав доступа к SQL-командам осуществляется так, как будто первоначально вошла роль session_role.
set
словарь
Словарь параметров табличного пространства для установки. Поддерживается с PostgreSQL 9.0.
Для получения более подробной информации см. https://www.postgresql.org/docs/current/sql-createtablespace.html.
При указании reset в качестве значения параметра, если параметр был установлен ранее, он будет удалён.
ssl_mode
строка
    Варианты:
  • allow
  • disable
  • prefer ←
  • require
  • verify-ca
  • verify-full
Определяет, будет ли и с каким приоритетом установлено защищённое SSL TCP/IP-соединение с сервером.
См. https://www.postgresql.org/docs/current/static/libpq-ssl.html для получения более подробной информации о режимах.
Значение по умолчанию prefer соответствует значению по умолчанию libpq.
state
строка
    Варианты:
  • absent
  • present ←
Состояние табличного пространства.
state=present подразумевает, что табличное пространство должно быть создано, если оно не существует.
state=absent подразумевает, что табличное пространство должно быть удалено, если оно существует. state=absent несовместимо с location, owner, i(set).
См. раздел Примечания для получения информации о ограничениях режима проверки.
tablespace
строка / обязательно
Имя табличного пространства для добавления или удаления.

псевдонимы: name
trust_input
логическое значение
добавлено в 0.2.0 community.general
    Варианты:
  • no
  • yes ←
Если no, проверяется, являются ли значения параметров tablespace, location, owner, rename_to, session_role, settings_list потенциально опасными.
Использование no имеет смысл только в случае, если возможны SQL-инъекции через параметры.

Примечания

Примечание

  • state=absent и state=present (второе, если табличное пространство отсутствует) не поддерживают режим проверки, поскольку соответствующие команды PostgreSQL DROP и CREATE TABLESPACE не могут быть выполнены внутри блока транзакции.
  • Аутентификация по умолчанию предполагает, что вы либо входите как, либо используете sudo для учетной записи postgres на хосте.
  • Чтобы избежать ошибки «Ошибка проверки подлинности Peer для пользователя 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

Общая информация о табличных пространствах PostgreSQL.

Справочник по CREATE TABLESPACE

Полный справочник по документации команды CREATE TABLESPACE.

Справочник по ALTER TABLESPACE

Полный справочник по документации команды ALTER TABLESPACE.

Справочник по DROP TABLESPACE

Полный справочник по документации команды DROP TABLESPACE.

Примеры

- name: Create a new tablespace called acme and set bob as an its owner
  community.general.postgresql_tablespace:
    name: acme
    owner: bob
    location: /data/foo

- name: Create a new tablespace called bar with tablespace options
  community.general.postgresql_tablespace:
    name: bar
    set:
      random_page_cost: 1
      seq_page_cost: 1

- name: Reset random_page_cost option
  community.general.postgresql_tablespace:
    name: bar
    set:
      random_page_cost: reset

- name: Rename the tablespace from bar to pcie_ssd
  community.general.postgresql_tablespace:
    name: bar
    rename_to: pcie_ssd

- name: Drop tablespace called bloat
  community.general.postgresql_tablespace:
    name: bloat
    state: absent

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

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

Ключ Возвращаемое значение Описание
location
строка
всегда
Путь к табличному пространству в файловой системе.

Пример:
/incredible/fast/ssd
newname
строка
если существует
Новое имя табличного пространства

Пример:
new_ssd
options
словарь
всегда
Параметры табличного пространства.

Пример:
{'random_page_cost': 1, 'seq_page_cost': 1}
owner
строка
всегда
Владелец табличного пространства.

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

Пример:
["CREATE TABLESPACE bar LOCATION '/incredible/ssd'"]
state
строка
всегда
Состояние табличного пространства в конце выполнения.

Пример:
present
tablespace
строка
всегда
Имя табличного пространства.

Пример:
ssd


Авторы

  • Flavien Chantelot (@Dorn-)
  • Antoine Levy-Lambert (@antoinell)
  • 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.10/collections/community/general/postgresql_tablespace_module.html

Spec-Zone.ru

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