Получение ошибки при использовании модуля uri ansible на конечной точке состояния kibana

#ansible #kibana

Вопрос:

Я запускаю код ниже ansible на ansible v2.7.6 и получаю ошибку ниже.

complete code

 - name: Check that kibana returns a status 200
     uri:
        url: http://{{ kibana_host }}:{{ kibana_port }}/api/status
        user: "{{ elasticsearch_username }}"
        password: "{{ elasticsearch_password }}"
        force_basic_auth: yes
        return_content: yes
     register: kibana_status
     until: kibana_status.status == 200
     retries: 60
     delay: 1

- name: assert to validate truth
     assert:
       that:
         - "'green' in kibana_status.content"
 

version

 [q@]$ ansible --version
ansible 2.7.6
  config file = /home/q/TEST/ansible-feature_for_module/ansible.cfg
  configured module search path = [u'/home/q/TEST/ansible-feature_for_module/roles/mongodb/library']
  ansible python module location = /usr/lib/python2.7/site-packages/ansible
  executable location = /usr/bin/ansible
  python version = 2.7.5 (default, Aug 13 2020, 02:51:10) [GCC 4.8.5 20150623 (Red Hat 4.8.5-39)]
[q@]$
 

code

 - name: Check that kibana returns a status 200
     uri:
        url: http://{{ kibana_host }}:{{ kibana_port }}/api/status
        user: "{{ elasticsearch_username }}"
        password: "{{ elasticsearch_password }}"
        force_basic_auth: yes
        return_content: yes
     register: kibana_status
     until: kibana_status.status == 200
     retries: 60
     delay: 1
 

получение ошибки как ,

 fatal: [kibana_1]: FAILED! => {}
 
MSG:
 
The conditional check 'kibana_status.status == 200' failed. The error was: error while evaluating conditional (kibana_status.status == 200): 'dict object' has no attribute 'status'
 

поэтому я проверил, что покажет отладочный вывод,

 - name: Check that kibana returns a status 200
     uri:
        url: http://{{ kibana_host }}:{{ kibana_port }}/api/status
        user: "{{ elasticsearch_username }}"
        password: "{{ elasticsearch_password }}"
     ignore_errors: true
     register: kibana_status
 
   - name: debug output
     debug:
      var:  kibana_status
 

but it is giving error as invalid literal for int() with base 10: ''" .

 TASK [kibana : debug output] ****************************************************************************************************************************************************
ok: [kibana_1] => {
    "kibana_status": {
        "changed": false,
        "failed": true,
        "msg": "invalid literal for int() with base 10: ''"
 

Я могу запустить команду curl непосредственно с сервера и получить ответ.

root@l ~]# curl -u elastic:xxx http://10.10.10.200:5601/api/status {"name":"kibana_1","uuid":"caf43524-cbb9-46de-ac96-d7f364b0a15d","version":{"number":"7.14.0","build_hash":"f032cf9bdbf6f74b70db5e43b7b1d30f5de22d3e","build_number":42747,"build_snapshot":false},"status":{"overall":{"since":"2021-09-23T17:08:44.935Z","state":"green","title":"Green","nickname":"Looking good","icon":"success","uiColor":"secondary"},"statuses":[{"id":"core:elasticsearch@7.14.0","message":"Elasticsearch is available","since":"2021-09-23T17:08:44.935Z","state":"green","icon":"success","uiColor":"secondary"},{"id":"core:savedObjects@7.14.0","message":"SavedObjects service has completed migrations and is available","since":"2021-09-23T17:08:44.935Z","state":"green","icon":"success","uiColor":"secondary"},{"id":"plugin:advancedSettings@7.14.0","message":"All dependencies are available","since":"2021-09-23T17:08:44.935Z","state":"green","icon":"success","uiColor":"secondary"},{"id":"plugin:apmOss@7.14.0","message":"All dependencies are available","since":"2021-09-23T17:08:44.935Z","state":"green","icon":"success","uiColor":"secondary"},{"id":"plugin:bfetch@7.14.0","message":"All dependencies are available","since":"2021-09-23T17:08:44.935Z","state":"green","icon":"success","uiColor":"secondary"},{"id":"plugin:charts@7.14.0","message":"All dependencies are available","since":"2021-09-23T17:08:44.935Z","state":"green","icon":"success","uiColor":"secondary"},{"id":"plugin:console@7.14.0",

также я не сталкивался с этой ошибкой на другом сервере, имеющем версию ниже ansible.

 p@P-MacBook-Pro tasks % ansible --version
ansible 2.9.13
  config file = None
  configured module search path = ['/Users/p/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/local/Cellar/ansible/2.9.13/libexec/lib/python3.8/site-packages/ansible
  executable location = /usr/local/bin/ansible
  python version = 3.8.5 (default, Jul 21 2020, 10:48:26) [Clang 11.0.3 (clang-1103.0.32.62)]
p@P-MacBook-Pro tasks %
 

Связано ли это с более низкой версией ansible?

Спасибо,

Комментарии:

1. Привет, у кого-нибудь есть идеи по этому поводу?