ansible башня не может получить список лицензий после установки - PullRequest
0 голосов
/ 09 марта 2020

Я пытаюсь ansible tower на Red Hat Enterprise Linux Сервер 7.7 (Maipo) , но мне не удалось получить список лицензий. Возникает следующая ошибка get license error

Похоже, что сервер не может подключиться к подписке "subscription.rhsm.redhat.com"

Traceback (most recent call last):
  File "/var/lib/awx/venv/awx/lib64/python3.6/site-packages/requests/adapters.py", line 449, in send
    timeout=timeout
  File "/var/lib/awx/venv/awx/lib64/python3.6/site-packages/urllib3/connectionpool.py", line 638, in urlopen
    _stacktrace=sys.exc_info()[2])
  File "/var/lib/awx/venv/awx/lib64/python3.6/site-packages/urllib3/util/retry.py", line 399, in increment
    raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='subscription.rhsm.redhat.com', port=443): Max retries exceeded with url: /subscription/users/altangerel_g/owners (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x7f99cead8b00>: Failed to establish a new connection: [Errno 111] Connection refused',))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/var/lib/awx/venv/awx/lib64/python3.6/site-packages/awx/api/views/root.py", line 194, in post
    validated = get_licenser().validate_rh(user, pw)
  File "/__init__.py", line 241, in validate_rh
  File "/var/lib/awx/venv/awx/lib64/python3.6/site-packages/requests/api.py", line 75, in get
    return request('get', url, params=params, **kwargs)
  File "/var/lib/awx/venv/awx/lib64/python3.6/site-packages/requests/api.py", line 60, in request
    return session.request(method=method, url=url, **kwargs)
  File "/var/lib/awx/venv/awx/lib64/python3.6/site-packages/requests/sessions.py", line 533, in request
    resp = self.send(prep, **send_kwargs)
  File "/var/lib/awx/venv/awx/lib64/python3.6/site-packages/requests/sessions.py", line 646, in send
    r = adapter.send(request, **kwargs)
  File "/var/lib/awx/venv/awx/lib64/python3.6/site-packages/requests/adapters.py", line 516, in send
    raise ConnectionError(e, request=request)

i can curl ". rhsm.redhat.com ", поэтому брандмауэр не блокирует его. а также настроенные параметры прокси в /etc/rhsm/rhsm.conf

sslCACert указывает на /usr/share/rhn/RHNS-CA-CERT

DNS-сервер присутствует в /etc/resolv.conf

что мне не хватает? пожалуйста, помогите мне.

1 Ответ

0 голосов
/ 07 мая 2020

У меня была такая же проблема сегодня, похоже, нам нужен прямой доступ через inte rnet. Но я нашел способ обойти это и жестко закодировать прокси:

[root@ansible requests]# pwd
/var/lib/awx/venv/awx/lib64/python3.6/site-packages/requests

[root@ansible requests]# grep 192.168.5.25 *
grep: __pycache__: est un dossier
sessions.py:            'http': 'http://192.168.5.25:3128',
sessions.py:            'https': 'http://192.168.5.25:3128',

[root@ansible requests]# vi sessions.py
def __init__(self):
    366
    367         #: A case-insensitive dictionary of headers to be sent on each
    368         #: :class:`Request <Request>` sent from this
    369         #: :class:`Session <Session>`.
    370         self.headers = default_headers()
    371
    372         #: Default Authentication tuple or object to attach to
    373         #: :class:`Request <Request>`.
    374         self.auth = None
    375
    376         #: Dictionary mapping protocol or protocol and host to the URL of the proxy
    377         #: (e.g. {'http': 'foo.bar:3128', 'http://host.name': 'foo.bar:4012'}) to
    378         #: be used on each :class:`Request <Request>`.
    379         self.proxies = {
    380             'http': 'http://192.168.5.25:3128',
    381             'https': 'http://192.168.5.25:3128',
    382         }

ADD these 4 lines with your proxy config.

Это сработало для меня, и я получил свою лицензию. Пожалуйста, не забудьте сделать резервную копию файла sessions.py.

regards

...