Ansible-role-postgresql: Требуется модуль psycopg2 (модуль присутствует)

Созданный на 27 июл. 2018  ·  6Комментарии  ·  Источник: geerlingguy/ansible-role-postgresql

  1. список пунктов показывает psycopg2 (2.7.5)
  2. yum показывает, что этот пакет python-psycopg2-2.7.5-1.rhel7.x86_64 уже установлен и последняя версия
    2a: python - версия: Python 2.7.5
  3. Ansible yml имеет это:
  roles:
    - role: ansible-role-postgresql
      become: yes
      postgresql_enablerepo: "pgdg96"
      postgresql_restarted_state: "restarted"
      postgresql_python_library: python-psycopg2
      postgresql_bin_path: /usr/pgsql-9.6/bin
      postgresql_daemon: postgresql-9.6.service 
  1. Выдается следующая ошибка:

TASK [ansible-role-postgresql : Ensure PostgreSQL databases are present.] **************************************************************************** failed: [clpaxd-iwh01.na.ad.rrd.com] (item={u'owner': u'manifold', u'login_user': u'manifold', u'name': u'manifoldcf', u'login_password': u'manifold'}) => {"changed": false, "item": {"login_password": "manifold", "login_user": "manifold", "name": "manifoldcf", "owner": "manifold"}, "msg": "the python psycopg2 module is required"}
Окружающая обстановка:

  1. Centos 7
  2. Python 2.7.5
  3. ansible 2.7.0.dev0 (stable-2.6 28d0a173db) последнее обновление 2018/06/25 12:12:39 (GMT -500)

Есть идеи, как это исправить?

Самый полезный комментарий

У меня уже был установлен python3-psycopg2, но он все еще не работал;
postgresql_python_library: python3-psycopg2

Итак, я добавил в свою книгу:
ansible_python_interpreter: / usr / bin / python3

Похоже, что по умолчанию он просто использовал / usr / bin / python

В debian 10;
/ usr / bin / python - версия
Python 2.7.16

Все 6 Комментарий

попробуйте с pip install -U --no-cache-dir --force psycopg2

Эта ошибка немного раздражает, поскольку no_log используется в тех случаях, когда она возникает, например, при создании пользователей, скрывая настоящую проблему.

Я лично исправил это, используя package для установки python3-psycopg2 перед импортом роли Postgres.

Старая ветка (но открытая) такая же проблема здесь, в Ubuntu. удаление no_log дало мне сообщение об ошибке отсутствия пакета. После ручной установки psycopg2 задача для пользователей работает. Дополнительный шаг по установке необходимого пакета Python должен решить проблему.

У меня уже был установлен python3-psycopg2, но он все еще не работал;
postgresql_python_library: python3-psycopg2

Итак, я добавил в свою книгу:
ansible_python_interpreter: / usr / bin / python3

Похоже, что по умолчанию он просто использовал / usr / bin / python

В debian 10;
/ usr / bin / python - версия
Python 2.7.16

Эта проблема помечена как устаревшая из-за отсутствия активности в последнее время. Если больше не будет активности, вопрос будет закрыт еще через 30 дней. Спасибо Вам за Ваш вклад!

Прочтите это сообщение в блоге, чтобы узнать, почему я помечаю проблемы как устаревшие.

Этот вопрос был закрыт из-за бездействия. Если вы считаете, что это ошибка, повторно откройте проблему или отправьте новую проблему с соответствующими сведениями.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги

Смежные вопросы

FilBot3 picture FilBot3  ·  18Комментарии

GoodBoy962 picture GoodBoy962  ·  10Комментарии

breml picture breml  ·  9Комментарии

worldofchris picture worldofchris  ·  8Комментарии

NiftyMist picture NiftyMist  ·  5Комментарии