F5Networks / f5-ansible-bigip

Declarative Ansible collection for managing F5 BIG-IP/BIG-IQ.
37 stars 17 forks source link

Ansible can't connect to VELOS Chassis or VELOS partition #32

Closed leondelyon3 closed 1 year ago

leondelyon3 commented 2 years ago
COMPONENT NAME

all velos modules: velos_partition – Manage VELOS chassis partitions velos_partition_change_password – Provides access to VELOS chassis partition user authentication methods velos_partition_image – Manage VELOS chassis partition images velos_partition_interface – Manage network interfaces on VELOS chassis partitions velos_partition_lag – Manage network interfaces on the VELOS chassis partitions velos_partition_vlan – Manage VLANs on VELOS chassis partitions velos_partition_wait – Wait for a VELOS chassis partition to match a condition before continuing velos_tenant – Manage VELOS tenants velos_tenant_image – Manage VELOS tenant images velos_tenant_wait – Wait for a VELOS condition before continuing

Environment

ansible [core 2.12.5] f5networks.f5_bigip:1.8.0 Python v3.10.4 F5OS v1.3.2 Ubuntu 22.04

ANSIBLE VERSION
nsible [core 2.12.5]
  config file = /home/lionel/PyCharmProjects/venv3-10/Ansible/ansible.cfg
  configured module search path = ['/home/lionel/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /home/lionel/PyCharmProjects/venv3-10/lib/python3.10/site-packages/ansible
  ansible collection location = /home/lionel/PyCharmProjects/venv3-10/Ansible/collections
  executable location = /home/lionel/PyCharmProjects/venv3-10/bin/ansible
  python version = 3.10.4 (main, Apr  2 2022, 09:04:19) [GCC 11.2.0]
  jinja version = 3.0.3
  libyaml = False
BIGIP VERSION
CONFIGURATION
OS / ENVIRONMENT
SUMMARY

Ansible can't connect to VELOS Chassis or VELOS partition using: ansible_network_os: f5networks.f5_bigip.bigip as described in all the above examples

STEPS TO REPRODUCE
using following playbook at:
https://clouddocs.f5.com/products/orchestration/ansible/devel/f5_bigip/modules_2_0/velos_partition_module.html#examples
EXPECTED RESULTS

VELOS partition created

ACTUAL RESULTS
ansible-playbook PlayBooks/f5v2/velospartition.yml -e "cible=Veloshttpapi" --tag=create -vvv
ansible-playbook [core 2.12.5]
  config file = /home/lionel/PyCharmProjects/venv3-10/Ansible/ansible.cfg
  configured module search path = ['/home/lionel/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /home/lionel/PyCharmProjects/venv3-10/lib/python3.10/site-packages/ansible
  ansible collection location = /home/lionel/PyCharmProjects/venv3-10/Ansible/collections
  executable location = /home/lionel/PyCharmProjects/venv3-10/bin/ansible-playbook
  python version = 3.10.4 (main, Apr  2 2022, 09:04:19) [GCC 11.2.0]
  jinja version = 3.0.3
  libyaml = False
Using /home/lionel/PyCharmProjects/venv3-10/Ansible/ansible.cfg as config file
host_list declined parsing /home/lionel/PyCharmProjects/venv3-10/Ansible/inventory/velos as it did not pass its verify_file() method
script declined parsing /home/lionel/PyCharmProjects/venv3-10/Ansible/inventory/velos as it did not pass its verify_file() method
auto declined parsing /home/lionel/PyCharmProjects/venv3-10/Ansible/inventory/velos as it did not pass its verify_file() method
Parsed /home/lionel/PyCharmProjects/venv3-10/Ansible/inventory/velos inventory source with ini plugin
Skipping callback 'default', as we already have a stdout callback.
Skipping callback 'minimal', as we already have a stdout callback.
Skipping callback 'oneline', as we already have a stdout callback.

PLAYBOOK: velospartition.yml ***********************************************************************************************************************************************************************************************
1 plays in PlayBooks/f5v2/velospartition.yml

PLAY [Manage Partitions] ***************************************************************************************************************************************************************************************************
META: ran handlers

TASK [Create Partition Tests] **********************************************************************************************************************************************************************************************
task path: /home/lionel/PyCharmProjects/venv3-10/Ansible/PlayBooks/f5v2/velospartition.yml:14
redirecting (type: connection) ansible.builtin.httpapi to ansible.netcommon.httpapi
<10.154.79.40> ESTABLISH LOCAL CONNECTION FOR USER: lionel
<10.154.79.40> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo /home/lionel/.ansible/tmp/ansible-local-3522x96i0a6l `"&& mkdir "` echo /home/lionel/.ansible/tmp/ansible-local-3522x96i0a6l/ansible-tmp-1653920347.7348301-3526-159497453417533 `" && echo ansible-tmp-1653920347.7348301-3526-159497453417533="` echo /home/lionel/.ansible/tmp/ansible-local-3522x96i0a6l/ansible-tmp-1653920347.7348301-3526-159497453417533 `" ) && sleep 0'
Using module file /home/lionel/PyCharmProjects/venv3-10/Ansible/collections/ansible_collections/f5networks/f5_bigip/plugins/modules/velos_partition.py
<10.154.79.40> PUT /home/lionel/.ansible/tmp/ansible-local-3522x96i0a6l/tmpmaqouklu TO /home/lionel/.ansible/tmp/ansible-local-3522x96i0a6l/ansible-tmp-1653920347.7348301-3526-159497453417533/AnsiballZ_velos_partition.py
<10.154.79.40> EXEC /bin/sh -c 'chmod u+x /home/lionel/.ansible/tmp/ansible-local-3522x96i0a6l/ansible-tmp-1653920347.7348301-3526-159497453417533/ /home/lionel/.ansible/tmp/ansible-local-3522x96i0a6l/ansible-tmp-1653920347.7348301-3526-159497453417533/AnsiballZ_velos_partition.py && sleep 0'
<10.154.79.40> EXEC /bin/sh -c '/home/lionel/PyCharmProjects/venv3-10/bin/python3.10 /home/lionel/.ansible/tmp/ansible-local-3522x96i0a6l/ansible-tmp-1653920347.7348301-3526-159497453417533/AnsiballZ_velos_partition.py && sleep 0'
<10.154.79.40> EXEC /bin/sh -c 'rm -f -r /home/lionel/.ansible/tmp/ansible-local-3522x96i0a6l/ansible-tmp-1653920347.7348301-3526-159497453417533/ > /dev/null 2>&1 && sleep 0'
The full traceback is:
Traceback (most recent call last):
  File "/home/lionel/.ansible/tmp/ansible-local-3522x96i0a6l/ansible-tmp-1653920347.7348301-3526-159497453417533/AnsiballZ_velos_partition.py", line 107, in <module>
    _ansiballz_main()
  File "/home/lionel/.ansible/tmp/ansible-local-3522x96i0a6l/ansible-tmp-1653920347.7348301-3526-159497453417533/AnsiballZ_velos_partition.py", line 99, in _ansiballz_main
    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)
  File "/home/lionel/.ansible/tmp/ansible-local-3522x96i0a6l/ansible-tmp-1653920347.7348301-3526-159497453417533/AnsiballZ_velos_partition.py", line 47, in invoke_module
    runpy.run_module(mod_name='ansible_collections.f5networks.f5_bigip.plugins.modules.velos_partition', init_globals=dict(_module_fqn='ansible_collections.f5networks.f5_bigip.plugins.modules.velos_partition', _modlib_path=modlib_path),
  File "/usr/lib/python3.10/runpy.py", line 209, in run_module
    return _run_module_code(code, init_globals, run_name, mod_spec)
  File "/usr/lib/python3.10/runpy.py", line 96, in _run_module_code
    _run_code(code, mod_globals, init_globals,
  File "/usr/lib/python3.10/runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "/tmp/ansible_velos_partition_payload_m6be7875/ansible_velos_partition_payload.zip/ansible_collections/f5networks/f5_bigip/plugins/modules/velos_partition.py", line 673, in <module>
  File "/tmp/ansible_velos_partition_payload_m6be7875/ansible_velos_partition_payload.zip/ansible_collections/f5networks/f5_bigip/plugins/modules/velos_partition.py", line 666, in main
  File "/tmp/ansible_velos_partition_payload_m6be7875/ansible_velos_partition_payload.zip/ansible_collections/f5networks/f5_bigip/plugins/modules/velos_partition.py", line 421, in exec_module
  File "/tmp/ansible_velos_partition_payload_m6be7875/ansible_velos_partition_payload.zip/ansible_collections/f5networks/f5_bigip/plugins/modules/velos_partition.py", line 433, in present
  File "/tmp/ansible_velos_partition_payload_m6be7875/ansible_velos_partition_payload.zip/ansible_collections/f5networks/f5_bigip/plugins/modules/velos_partition.py", line 484, in exists
  File "/tmp/ansible_velos_partition_payload_m6be7875/ansible_velos_partition_payload.zip/ansible_collections/f5networks/f5_bigip/plugins/module_utils/velos_client.py", line 24, in wrap
  File "/tmp/ansible_velos_partition_payload_m6be7875/ansible_velos_partition_payload.zip/ansible_collections/f5networks/f5_bigip/plugins/module_utils/velos_client.py", line 43, in get
  File "/tmp/ansible_velos_partition_payload_m6be7875/ansible_velos_partition_payload.zip/ansible/module_utils/connection.py", line 200, in __rpc__
ansible.module_utils.connection.ConnectionError: Invalid JSON response: <!DOCTYPE html>
<html>
<head>
<title>404 Not Found</title>
</head>
<body>
<h1>Not Found</h1>
The requested URL /mgmt/shared/authn/login was not found on this server.
<hr>
<address>  Server at localhost:8008 </address>
</body>
</html>
fatal: [veloscontroller]: FAILED! => {
    "changed": false,
    "module_stderr": "Traceback (most recent call last):\n  File \"/home/lionel/.ansible/tmp/ansible-local-3522x96i0a6l/ansible-tmp-1653920347.7348301-3526-159497453417533/AnsiballZ_velos_partition.py\", line 107, in <module>\n    _ansiballz_main()\n  File \"/home/lionel/.ansible/tmp/ansible-local-3522x96i0a6l/ansible-tmp-1653920347.7348301-3526-159497453417533/AnsiballZ_velos_partition.py\", line 99, in _ansiballz_main\n    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)\n  File \"/home/lionel/.ansible/tmp/ansible-local-3522x96i0a6l/ansible-tmp-1653920347.7348301-3526-159497453417533/AnsiballZ_velos_partition.py\", line 47, in invoke_module\n    runpy.run_module(mod_name='ansible_collections.f5networks.f5_bigip.plugins.modules.velos_partition', init_globals=dict(_module_fqn='ansible_collections.f5networks.f5_bigip.plugins.modules.velos_partition', _modlib_path=modlib_path),\n  File \"/usr/lib/python3.10/runpy.py\", line 209, in run_module\n    return _run_module_code(code, init_globals, run_name, mod_spec)\n  File \"/usr/lib/python3.10/runpy.py\", line 96, in _run_module_code\n    _run_code(code, mod_globals, init_globals,\n  File \"/usr/lib/python3.10/runpy.py\", line 86, in _run_code\n    exec(code, run_globals)\n  File \"/tmp/ansible_velos_partition_payload_m6be7875/ansible_velos_partition_payload.zip/ansible_collections/f5networks/f5_bigip/plugins/modules/velos_partition.py\", line 673, in <module>\n  File \"/tmp/ansible_velos_partition_payload_m6be7875/ansible_velos_partition_payload.zip/ansible_collections/f5networks/f5_bigip/plugins/modules/velos_partition.py\", line 666, in main\n  File \"/tmp/ansible_velos_partition_payload_m6be7875/ansible_velos_partition_payload.zip/ansible_collections/f5networks/f5_bigip/plugins/modules/velos_partition.py\", line 421, in exec_module\n  File \"/tmp/ansible_velos_partition_payload_m6be7875/ansible_velos_partition_payload.zip/ansible_collections/f5networks/f5_bigip/plugins/modules/velos_partition.py\", line 433, in present\n  File \"/tmp/ansible_velos_partition_payload_m6be7875/ansible_velos_partition_payload.zip/ansible_collections/f5networks/f5_bigip/plugins/modules/velos_partition.py\", line 484, in exists\n  File \"/tmp/ansible_velos_partition_payload_m6be7875/ansible_velos_partition_payload.zip/ansible_collections/f5networks/f5_bigip/plugins/module_utils/velos_client.py\", line 24, in wrap\n  File \"/tmp/ansible_velos_partition_payload_m6be7875/ansible_velos_partition_payload.zip/ansible_collections/f5networks/f5_bigip/plugins/module_utils/velos_client.py\", line 43, in get\n  File \"/tmp/ansible_velos_partition_payload_m6be7875/ansible_velos_partition_payload.zip/ansible/module_utils/connection.py\", line 200, in __rpc__\nansible.module_utils.connection.ConnectionError: Invalid JSON response: <!DOCTYPE html>\n<html>\n<head>\n<title>404 Not Found</title>\n</head>\n<body>\n<h1>Not Found</h1>\nThe requested URL /mgmt/shared/authn/login was not found on this server.\n<hr>\n<address>  Server at localhost:8008 </address>\n</body>\n</html>\n",
    "module_stdout": "",
    "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error",
    "rc": 1
}

PLAY RECAP *****************************************************************************************************************************************************************************************************************
veloscontroller            : ok=0    changed=0    unreachable=0    failed=1    skipped=0    rescued=0    ignored=0

We need to change ansible_network_os: f5networks.f5_bigip.bigip by ansible_network_os: f5networks.f5_bigip.velos and set ansible_httpapi_port to 8888

trinaths commented 2 years ago

Created [INFRAANO-788] for internal tracking.

4Igit commented 1 year ago

Hello, Can we have an update on the resolution of this issue ?

pgouband commented 1 year ago

Hi issue fixed, please open new issue if you see any problem.