如何修复 "Infoblox IPAM is misconfigured?"

How to fix "Infoblox IPAM is misconfigured?"

我正在使用以下剧本从 ansible 调用 infoblox:

- hosts: localhost
  gather_facts: false
  tasks: 
    - name: Include infoblox_vault
      include_vars: 
        file: 'infoblox_vault.yml'
    - name: Install infoblox-client for DDI
      pip:
        name: infoblox-client
      environment:
        HTTP_PROXY: http://our_internal_proxy.net:8080
        HTTPS_PROXY: http://our_internal_proxy.net:8080
      delegate_to: localhost
    - debug:
        msg: can I decrypt username?--> "{{ vault_infoblox_username }}"

    - name: Check if DNS Record exists
      set_fact:
        miqCreateVM_ddiRecord: "{{ lookup('nios', 'record:a', filter={'name': 'infoblox-devtest.net' }, provider={'host': 'ddi-qa.net', 'username': vault_infoblox_username, 'password': vault_infoblox_password }) }}"
    - debug: 
        msg: check var miqCreateVM_ddiRecord "{{ miqCreateVM_ddiRecord }}"
    - debug:
        msg: test to see amazing vm_name!  "{{ vm_name }}"
... code snipped

作业运行时,我得到:

Vault password: 
PLAY [localhost] ***************************************************************
TASK [Include infoblox_vault] **************************************************
ok: [127.0.0.1]
TASK [Install infoblox-client for DDI] *****************************************
ok: [127.0.0.1 -> localhost]
TASK [debug] *******************************************************************
ok: [127.0.0.1] => {
    "msg": "can I decrypt username?--> \"manageiq-ddi\""
}
TASK [Check if DNS Record exists] **********************************************
fatal: [127.0.0.1]: FAILED! => {"msg": "An unhandled exception occurred while running the lookup plugin 'nios'. Error was a <type 'exceptions.Exception'>, original message: Infoblox IPAM is misconfigured: infoblox_username and infoblox_password are incorrect."}
PLAY RECAP *********************************************************************
127.0.0.1                  : ok=3    changed=0    unreachable=0    failed=1    skipped=0    rescued=0    ignored=0   

这是主要部分:"An unhandled exception occurred while running the lookup plugin 'nios'. Error was a <type 'exceptions.Exception'>, original message: Infoblox IPAM is misconfigured: infoblox_username and infoblox_password are incorrect."

这个剧本过去有用。我已经几个月没研究过了。不知道为什么它坏了。

我确认我可以使用凭据手动登录 infoblox 客户端。我还尝试手动记录用户名以确保它从 ansible-vault 文件中解密信用。效果很好。所以这不是凭据,也不是保险库解密。这是另外一回事。

我在网上找到了以下三个相关主题,但其中 none 似乎可以解决问题: This one(其中提到向请求添加证书。有人知道该怎么做吗?我找不到说明) This one(提到了升级带来的问题。我向我们的网络人员展示了 post 中提到的版本,他们说版本号与我们环境中的版本完全不相关,所以它是很难评估这是否相关。) Last one(这要求使用 属性 'http_request_timeout' : None,我觉得这不是问题,因为我根本无法让它工作。)

有什么理论吗?谢谢!

这可能无法为其他人解决问题,但这为我解决了问题:

  1. 获得 Ansible 的新密码,用于登录 Infoblox。
  2. 创建一个包含新 infoblox 密码的新 ansible 保险库文件。我也为保险库文件加密设置了一个新密码。
  3. 我在 ansible 中创建了一个新的凭证对象,以使 ansible 能够读取新的保管库文件。
  4. 我更新了剧本以使用新的保管库。

现在可以了。加密出了点问题。