Модуль community.postgresql.postgresql_ping – Проверка доступности удалённого сервера PostgreSQL
Примечание
Этот модуль входит в состав коллекции community.postgresql (версия 3.6.1).
Возможно, эта коллекция уже установлена, если вы используете пакет 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. Эти параметры имеют приоритет. По умолчанию: |
db псевдонимы: login_db строка | Имя базы данных для подключения. |
login_host псевдонимы: host строка | Хост, на котором работает база данных. Если у вас возникают проблемы с подключением при использовании По умолчанию: |
login_password строка | Пароль, который должен использовать этот модуль для установления сессии PostgreSQL. По умолчанию: |
login_unix_socket псевдонимы: unix_socket строка | Путь к сокету Unix доменного сокета для локальных подключений. По умолчанию: |
login_user псевдонимы: login строка | Имя пользователя, которое должен использовать этот модуль для установления сессии PostgreSQL. По умолчанию: |
port псевдонимы: login_port целое число | Порт базы данных для подключения. По умолчанию: |
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 строка | Определяет, будет ли установлено безопасное SSL-TCP/IP-соединение с сервером или с каким приоритетом. См. 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, адаптер базы данных Python PostgreSQL. Необходимо убедиться, что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:
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–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/postgresql/postgresql_ping_module.html