community.postgresql.postgresql_ping – Проверка доступности удалённого сервера PostgreSQL
Примечание
Этот плагин входит в коллекцию community.postgresql (версия 1.0.0).
Для его установки используйте: ansible-galaxy collection install community.postgresql
Чтобы использовать его в книге задач, укажите: community.postgresql.postgresql_ping
Обзор
- Простой модуль для проверки доступности удалённого сервера PostgreSQL.
Требования
Ниже перечислены требования, необходимые на хосте, на котором будет выполняться этот модуль.
- psycopg2
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| ca_cert строка | Указывает имя файла, содержащего сертификаты авторитетов выдачи SSL-сертификатов (CA). Если файл существует, сертификат сервера будет проверен на подпись одним из этих авторитетов. Псевдонимы: ssl_rootcert | |
| db строка | Имя базы данных для подключения. Псевдонимы: login_db | |
| login_host строка | Хост, на котором работает база данных. | |
| login_password строка | Пароль для аутентификации. | |
| login_unix_socket строка | Путь к Unix-сокету доменной области для локальных подключений. | |
| login_user строка | По умолчанию: "postgres" | Имя пользователя для аутентификации. |
| port целое число | По умолчанию: 5432 | Порт базы данных для подключения. Псевдонимы: login_port |
| session_role строка добавлен в 0.2.0 community.postgresql | Переключиться на session_role после подключения. Указанный session_role должен быть ролью, членом которой является текущий login_user. Проверка разрешений для команд SQL выполняется так, как будто session_role был тем, кто первоначально вошёл в систему. | |
| ssl_mode строка |
| Определяет, будет ли и с каким приоритетом устанавливаться защищённое SSL TCP/IP-соединение с сервером. См. https://www.postgresql.org/docs/current/static/libpq-ssl.html для получения дополнительной информации о режимах. Значение по умолчанию prefer соответствует значению по умолчанию libpq. |
| trust_input логическое значение добавлен в 0.2.0 community.postgresql |
| Если no, проверьте, является ли значение session_role потенциально опасным.Использование no имеет смысл только в том случае, если возможны SQL-инъекции через session_role. |
Примечания
Примечание
- Аутентификация по умолчанию предполагает, что вы либо входите в систему как пользователь, либо используете 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.
См. также
См. также
- community.postgresql.postgresql_info
-
Официальная документация по модулю community.postgresql.postgresql_info.
Примеры
# 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: PostgreSQL ping dbsrv server using not default credentials and ssl
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
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| is_available логическое значение | всегда | Доступность сервера PostgreSQL. Пример: True |
| server_version словарь | всегда | Версия сервера PostgreSQL. Пример: {'major': 10, 'minor': 1} |
Авторы
- 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/postgresql/postgresql_ping_module.html