Spec-Zone.ru › Ansible

Модуль community.postgresql.postgresql_ping — проверка доступности удалённого сервера PostgreSQL

Примечание

Этот модуль входит в коллекцию community.postgresql (версия 4.2.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install community.postgresql. Для использования этого модуля требуются дополнительные зависимости; подробности см. в разделе Требования.

Чтобы использовать модуль в плейбуке, укажите: community.postgresql.postgresql_ping.

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

Краткое описание

  • Простой модуль для проверки доступности удалённого сервера PostgreSQL.

Требования

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

  • psycopg2 >= 2.5.1

Параметры

Параметр

Комментарии

ca_cert

псевдонимы: ssl_rootcert

строка

Указывает имя файла, содержащего сертификат(ы) центра сертификации (CA) SSL.

Если файл существует, сертификат сервера будет проверен на наличие подписи одного из этих центров сертификации.

connect_params

словарь

добавлено в community.postgresql 2.3.0

Любые дополнительные параметры, передаваемые в libpg.

Эти параметры имеют приоритет.

По умолчанию: {}

login_db

псевдонимы: db

строка

Имя базы данных для подключения.

Псевдоним db устарел и будет удалён в версии 5.0.0.

login_host

псевдонимы: host

строка

Хост, на котором работает база данных.

Если при подключении через localhost возникают проблемы, попробуйте вместо него использовать 127.0.0.1.

По умолчанию: ""

login_password

строка

Пароль, который модуль должен использовать для установки сеанса PostgreSQL.

По умолчанию: ""

login_port

псевдонимы: port

целое число

Порт базы данных для подключения.

Псевдоним port устарел и будет удалён в следующем основном выпуске. Вместо него используйте login_port.

По умолчанию: 5432

login_unix_socket

псевдонимы: unix_socket

строка

Путь к доменному сокету Unix для локальных подключений.

По умолчанию: ""

login_user

псевдонимы: login

строка

Имя пользователя, которое модуль должен использовать для установки сеанса PostgreSQL.

По умолчанию: "postgres"

session_role

строка

добавлено в community.postgresql 0.2.0

Переключиться на session_role после подключения. Указанный session_role должен быть ролью, членом которой является текущий login_user.

Проверка прав для команд SQL выполняется так, как если бы изначально вход был выполнен от имени session_role.

ssl_cert

путь

добавлено в community.postgresql 2.4.0

Указывает имя файла клиентского сертификата SSL.

ssl_key

путь

добавлено в community.postgresql 2.4.0

Указывает расположение секретного ключа, используемого для клиентского сертификата.

ssl_mode

строка

Определяет, будет ли согласовано с сервером защищённое TCP/IP-соединение SSL и какой приоритет оно будет иметь.

Дополнительные сведения о режимах см. на странице https://www.postgresql.org/docs/current/static/libpq-ssl.html.

Значение по умолчанию prefer соответствует значению по умолчанию в libpq.

Варианты:

  • "allow"
  • "disable"
  • "prefer" ← (по умолчанию)
  • "require"
  • "verify-ca"
  • "verify-full"

trust_input

логический

добавлено в community.postgresql 0.2.0

Если false, проверить, не представляет ли значение session_role потенциальную опасность.

Использовать false имеет смысл только в том случае, если возможны SQL-инъекции через session_role.

Варианты:

  • false
  • true ← (по умолчанию)

Атрибуты

Атрибут

Поддержка

Описание

check_mode

Поддержка: полная

Может выполняться в режиме check_mode и возвращать прогноз состояния изменений, не изменяя целевой объект.

Примечания

Примечание

  • По умолчанию предполагается, что вы входите в систему на хосте от имени учётной записи postgres или переключаетесь на неё с помощью sudo.
  • Чтобы избежать ошибки «Peer authentication failed for user postgres», укажите пользователя postgres в качестве become_user.
  • Этот модуль использует psycopg — адаптер базы данных PostgreSQL для Python. Перед использованием модуля необходимо убедиться, что на хосте установлен psycopg2 >= 2.5.1 или psycopg3 >= 3.1.8.
  • Если удалённый хост является сервером PostgreSQL (что используется по умолчанию), на удалённом хосте также должен быть установлен PostgreSQL.
  • В системах на основе Ubuntu перед использованием этого модуля установите на удалённый хост пакеты postgresql, libpq-dev и python3-psycopg2.

См. также

См. также

community.postgresql.postgresql_info

Сбор сведений о серверах PostgreSQL.

Примеры

# PostgreSQL ping dbsrv server from the shell:
# ansible dbsrv -m postgresql_ping

# In the example below you need to generate certificates previously.
# See https://www.postgresql.org/docs/current/libpq-ssl.html for more information.
- name: >
    Ping PostgreSQL server using non-default credentials and SSL
    registering the return values into the result variable for future use
  community.postgresql.postgresql_ping:
    login_db: protected_db
    login_host: dbsrv
    login_user: secret
    login_password: secret_pass
    ca_cert: /root/root.crt
    ssl_mode: verify-full
  register: result
  # If you need to fail when the server is not available,
  # uncomment the following line:
  # failed_when: not result.is_available

# You can use the registered result with another task
- name: This task should be executed only if the server is available
  # ...
  when: result.is_available == true

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

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

Ключ

Описание

conn_err_msg

строка

добавлено в community.postgresql 1.7.0

Сообщение об ошибке подключения.

Возвращается: при успехе

Пример: ""

is_available

логический

Доступность сервера PostgreSQL.

Возвращается: при успехе

Пример: true

server_version

словарь

Версия сервера PostgreSQL.

Возвращается: при успехе

Пример: {"full": "13.2", "major": 13, "minor": 2, "raw": "PostgreSQL 13.2 on x86_64-pc-linux-gnu"}

Авторы

  • Andrew Klychkov (@Andersson007)

Ссылки на коллекцию

  • Отслеживание ошибок
  • Репозиторий (исходный код)
  • Сообщить об ошибке
  • Связь

© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/postgresql/postgresql_ping_module.html

Spec-Zone.ru

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