Модуль 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 строка | Имя базы данных для подключения. Псевдоним |
login_host псевдонимы: host строка | Хост, на котором работает база данных. Если при подключении через По умолчанию: |
login_password строка | Пароль, который модуль должен использовать для установки сеанса PostgreSQL. По умолчанию: |
login_port псевдонимы: port целое число | Порт базы данных для подключения. Псевдоним По умолчанию: |
login_unix_socket псевдонимы: unix_socket строка | Путь к доменному сокету Unix для локальных подключений. По умолчанию: |
login_user псевдонимы: login строка | Имя пользователя, которое модуль должен использовать для установки сеанса PostgreSQL. По умолчанию: |
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. Значение по умолчанию Варианты:
|
trust_input логический добавлено в community.postgresql 0.2.0 | Если Использовать Варианты:
|
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
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. Возвращается: при успехе Пример: |
server_version словарь | Версия сервера PostgreSQL. Возвращается: при успехе Пример: |
Ссылки на коллекцию
© 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