Ansible openstack.cloud 模块不起作用

问题描述 投票:0回答:1

我已经尝试了一切并到处搜索,但我似乎找不到解决方案。我想使用 Ansible 中的 openstack.cloud 模块通过 Ansible 在 OpenStack 中创建和分配卷。

因此,我正在进行测试,例如检索有关 OpenStack 中当前存在的卷的信息。这是任务:

- name: 1). Openstack Volumen Information
  openstack.cloud.volume_info:
   name: test1
  vars:
   ansible_python_interpreter: /usr/bin/python3.8

这是我确保设置了 OpenStack 身份验证环境变量的 playbook 文件:

---
- name: Test  
  hosts: 
     - Test 
  gather_facts: yes 
  roles:
    - role: volume_test
  vars:
  environment:
   http_proxy: http://10.40.40.20:80
   https_proxy: http://10.40.40.20:80
   ftp_proxy: http://10.40.40.20:80
   no_proxy: 127.0.0.1,localhost
   OS_AUTH_URL: https://horizon/test:3000
   OS_IDENTITY_API_VERSION: 3
   OS_INTERFACE: public
   OS_PASSWORD: '<password>'
   OS_PASSWORD_INPUT: '<password>'
   OS_PROJECT_DOMAIN_ID: default
   OS_PROJECT_ID: ce9f3801b1234afb83fbg0c93c987cb5
   OS_PROJECT_NAME: '<project_name>'
   OS_REGION_NAME: RegionOne
   OS_USERNAME: '<user_name>'
   OS_USER_DOMAIN_NAME: Default

我已在 CentOS 7.9 和 Ubuntu 20 VM 上尝试过此操作,但收到以下错误:

fatal: [Test]: FAILED! => {                                                                                                         
    "changed": false,                                                                                                                                                               
    "module_stderr": "Shared connection to <test_host> closed.\r\n",                                                                       
    "module_stdout": "Failed to discover available identity versions when contacting https://horizon/test:3000. Attempting to parse version from URL.\r\nTraceback (mo
st recent call last):\r\n  File \"/usr/lib/python3/dist-packages/urllib3/connectionpool.py\", line 662, in urlopen\r\n    self._prepare_proxy(conn)\r\n  File \"/usr/lib/python3/dis
t-packages/urllib3/connectionpool.py\", line 950, in _prepare_proxy\r\n    conn.connect()\r\n  File \"/usr/lib/python3/dist-packages/urllib3/connection.py\",
....
File \"/home/appserv/.local/lib/python3.8/site-packages/keystoneauth1/session.py\", line 1141, in post\r\n    return self.request(url, 'POST', **kwargs)\r\n  File \"/home/appserv/.local/lib/python3.8/site-packages/keystoneauth1/session.py\", line 923, in request\r\n    resp = send(**kwargs)\r\n  File \"/home/appserv/.local/lib/python3.8/site-packages/keystoneauth1/session.py\", line 1030, in _send_request\r\n    raise exceptions.ConnectFailure(msg)\r\nkeystoneauth1.exceptions.connection.ConnectFailure: Unable to establish connection to https://horizon/test:3000/v3/auth/tokens: HTTPSConnectionPool(host='hori
zon, port=3000): Max retries exceeded with url: /v3/auth/tokens (Caused by ProxyError('Cannot connect to proxy.', OSError('Tunnel connection failed: 403 Tunnel or 
SSL Forbidden')))\r\n",
    "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error",
    "rc": 1
ansible openstack
1个回答
0
投票

正如@Zeitounator指出的,提到代理问题,我的解决方案是在playbook文件中注释http_proxy、https_proxy和no_proxy的环境变量。

© www.soinside.com 2019 - 2024. All rights reserved.