简体   繁体   中英

Ansible trouble with installing elasticsearch plugins

I have trouble with tasks in Ansible. I want to install elasticsearch plugins on VM with Ansible. I have an Ansible role with tasks and vars.

tasks

---
- name: install elasticsearch
  apt: 
   name: elasticsearch
   state: present

- name: adding plugins
  stat:
    path: "/usr/share/elasticsearch/plugins/{{ item.name }}"
  loop: "{{ plugins }}"
  register: add_plugins

- name: install plugins
  shell: /usr/share/elasticsearch/bin/plugin install {{ item.item.url }}
  when: (item.stat.exists|bool == false)
  loop: "{{ add_plugins.results }}"

- name: line removing elasticsearch.yml
  lineinfile: 
    dest: /etc/elasticsearch/elasticsearch.yml
    regexp: "{{ item.regexp }}"
    line: "{{ item.line }}"
  with_items: "{{ lines_for_removing }}"

- name: line adding elasticsearch.yml
  lineinfile:
    path: /etc/elasticsearch/elasticsearch.yml
    line: "{{ item }}"
    insertafter: '^(.*)http.port(.*)$'
  with_items: '{{ line_for_adding }}'
  notify:
    - Restart elasticsearch

vars

plugins: 
  - { name: hq, url: https://github.com/ElasticHQ/elasticsearch-HQ/archive/refs/tags/v2.0.3.zip }
  - { name: head, url: mobz/elasticsearch-head }
  - { name: cloud-aws, url: https://repo1.maven.org/maven2/org/elasticsearch/plugin/cloud-aws/2.4.2/cloud-aws-2.4.2.zip }

lines_for_removing:
  - { regexp: '^(.*)cluster.name(.*)$', line: 'cluster.name: logstash'}
  - { regexp: '^(.*)network.host(.*)$', line: 'network.host: {{ inventory_hostname }}'}
  - { regexp: '^(.*)http.port(.*)$', line: 'http.port: 9200'}

lines_for_adding:
  - http.cors.enabled : true

I run ansible-playbook

- hosts: logstash
  become: yes
  roles:
  - java(all ok)
  - logstash(all ok)
  - elasticsearch

and have an error:

TASK [elasticsearch : install plugins] **************************************************************************************
failed: [192.168.33.3] (item={u'failed': False, u'stat': {u'exists': False}, u'ansible_loop_var': u'item', u'item': {u'url': u'https://github.com/ElasticHQ/elasticsearch-HQ/archive/refs/tags/v2.0.3.zip', u'name': u'hq'}, u'invocation': {u'module_args': {u'follow': False, u'get_checksum': True, u'path': u'/usr/share/elasticsearch/plugins/hq', u'checksum_algorithm': u'sha1', u'get_md5': False, u'get_mime': True, u'get_attributes': True}}, u'changed': False}) => {"ansible_loop_var": "item", "changed": true, "cmd": "/usr/share/elasticsearch/bin/plugin install https://github.com/ElasticHQ/elasticsearch-HQ/archive/refs/tags/v2.0.3.zip", "delta": "0:00:00.006816", "end": "2021-12-04 09:04:16.990386", "item": {"ansible_loop_var": "item", "changed": false, "failed": false, "invocation": {"module_args": {"checksum_algorithm": "sha1", "follow": false, "get_attributes": true, "get_checksum": true, "get_md5": false, "get_mime": true, "path": "/usr/share/elasticsearch/plugins/hq"}}, "item": {"name": "hq", "url": "https://github.com/ElasticHQ/elasticsearch-HQ/archive/refs/tags/v2.0.3.zip"}, "stat": {"exists": false}}, "msg": "non-zero return code", "rc": 127, "start": "2021-12-04 09:04:16.983570", "stderr": "/bin/sh: 1: /usr/share/elasticsearch/bin/plugin: not found", "stderr_lines": ["/bin/sh: 1: /usr/share/elasticsearch/bin/plugin: not found"], "stdout": "", "stdout_lines": []}
failed: [192.168.33.3] (item={u'failed': False, u'stat': {u'exists': False}, u'ansible_loop_var': u'item', u'item': {u'url': u'mobz/elasticsearch-head', u'name': u'head'}, u'invocation': {u'module_args': {u'follow': False, u'get_checksum': True, u'path': u'/usr/share/elasticsearch/plugins/head', u'checksum_algorithm': u'sha1', u'get_md5': False, u'get_mime': True, u'get_attributes': True}}, u'changed': False}) => {"ansible_loop_var": "item", "changed": true, "cmd": "/usr/share/elasticsearch/bin/plugin install mobz/elasticsearch-head", "delta": "0:00:00.002418", "end": "2021-12-04 09:04:17.238313", "item": {"ansible_loop_var": "item", "changed": false, "failed": false, "invocation": {"module_args": {"checksum_algorithm": "sha1", "follow": false, "get_attributes": true, "get_checksum": true, "get_md5": false, "get_mime": true, "path": "/usr/share/elasticsearch/plugins/head"}}, "item": {"name": "head", "url": "mobz/elasticsearch-head"}, "stat": {"exists": false}}, "msg": "non-zero return code", "rc": 127, "start": "2021-12-04 09:04:17.235895", "stderr": "/bin/sh: 1: /usr/share/elasticsearch/bin/plugin: not found", "stderr_lines": ["/bin/sh: 1: /usr/share/elasticsearch/bin/plugin: not found"], "stdout": "", "stdout_lines": []}
failed: [192.168.33.3] (item={u'failed': False, u'stat': {u'exists': False}, u'ansible_loop_var': u'item', u'item': {u'url': u'https://repo1.maven.org/maven2/org/elasticsearch/plugin/cloud-aws/2.4.2/cloud-aws-2.4.2.zip', u'name': u'cloud-aws'}, u'invocation': {u'module_args': {u'follow': False, u'get_checksum': True, u'path': u'/usr/share/elasticsearch/plugins/cloud-aws', u'checksum_algorithm': u'sha1', u'get_md5': False, u'get_mime': True, u'get_attributes': True}}, u'changed': False}) => {"ansible_loop_var": "item", "changed": true, "cmd": "/usr/share/elasticsearch/bin/plugin install https://repo1.maven.org/maven2/org/elasticsearch/plugin/cloud-aws/2.4.2/cloud-aws-2.4.2.zip", "delta": "0:00:00.002365", "end": "2021-12-04 09:04:17.494733", "item": {"ansible_loop_var": "item", "changed": false, "failed": false, "invocation": {"module_args": {"checksum_algorithm": "sha1", "follow": false, "get_attributes": true, "get_checksum": true, "get_md5": false, "get_mime": true, "path": "/usr/share/elasticsearch/plugins/cloud-aws"}}, "item": {"name": "cloud-aws", "url": "https://repo1.maven.org/maven2/org/elasticsearch/plugin/cloud-aws/2.4.2/cloud-aws-2.4.2.zip"}, "stat": {"exists": false}}, "msg": "non-zero return code", "rc": 127, "start": "2021-12-04 09:04:17.492368", "stderr": "/bin/sh: 1: /usr/share/elasticsearch/bin/plugin: not found", "stderr_lines": ["/bin/sh: 1: /usr/share/elasticsearch/bin/plugin: not found"], "stdout": "", "stdout_lines": []}

The same error quoted

TASK [elasticsearch: install plugins] **************************************************************************************

failed: [192.168.33.3] (item={u'failed': False, u'stat': {u'exists': False}, u'ansible_loop_var': u'item', u'item': {u'url': u'https://github.com/ElasticHQ/elasticsearch-HQ/archive/refs/tags/v2.0.3.zip', u'name': u'hq'}, u'invocation': {u'module_args': {u'follow': False, u'get_checksum': True, u'path': u'/usr/share/elasticsearch/plugins/hq', u'checksum_algorithm': u'sha1', u'get_md5': False, u'get_mime': True, u'get_attributes': True}}, u'changed': False}) => {"ansible_loop_var": "item", "changed": true, "cmd": "/usr/share/elasticsearch/bin/plugin install https://github.com/ElasticHQ/elasticsearch-HQ/archive/refs/tags/v2.0.3.zip" , "delta": "0:00:00.006816", "end": "2021-12-04 09:04:16.990386", "item": {"ansible_loop_var": "item", "changed": false, "failed": false, "invocation": {"module_args": {"checksum_algorithm": "sha1", "follow": false, "get_attributes": true, "get_checksum": true, "get_md5": false, "get_mime": true, "path": "/usr/share/elasticsearch/p lugins/hq"}}, "item": {"name": "hq", "url": "https://github.com/ElasticHQ/elasticsearch-HQ/archive/refs/tags/v2.0.3.zip"}, "stat": {"exists": false}}, "msg": "non-zero return code", "rc": 127, "start": "2021-12-04 09:04:16.983570", "stderr": "/bin/sh: 1: /usr/share/elasticsearch/bin/plugin: not found", "stderr_lines": ["/bin/sh: 1: /usr/share/elasticsearch/bin/plugin: not found"], "stdout": "", "stdout_lines": []}

failed: [192.168.33.3] (item={u'failed': False, u'stat': {u'exists': False}, u'ansible_loop_var': u'item', u'item': {u'url': u'mobz/elasticsearch-head', u'name': u'head'}, u'invocation': {u'module_args': {u'follow': False, u'get_checksum': True, u'path': u'/usr/share/elasticsearch/plugins/head', u'checksum_algorithm': u'sha1', u'get_md5': False, u'get_mime': True, u'get_attributes': True}}, u'changed': False}) => {"ansible_loop_var": "item", "changed": true, "cmd": "/usr/share/elasticsearch/bin/plugin install mobz/elasticsearch-head", "delta": "0:00:00.002418", "end": "2021-12-04 09:04:17.238313", "item": {"ansible_loop_var": "item", "changed": false, "failed": false, "invocation": {"module_args": {"checksum_algorithm": "sha1", "follow": false, "get_attributes": true, "get_checksum": true, "get_md5": false, "get_mime": true, "path": "/usr/share/elasticsearch/plugins/head"}}, "item": {"name": "head", "url": "mobz/elasticsearch-head"}, "stat": {"exists": false}}, "msg": "non-zero return code", "rc": 127, "start": "2021-12-04 09:04:17.235895", "stderr": "/bin/sh: 1: /usr/share/elasticsearch/bin/plugin: not found", "stderr_lines": ["/bin/sh: 1: /usr/share/elasticsearch/bin/plugin: not found"], "stdout": "", "stdout_lines": []}

failed: [192.168.33.3] (item={u'failed': False, u'stat': {u'exists': False}, u'ansible_loop_var': u'item', u'item': {u'url': u'https://repo1.maven.org/maven2/org/elasticsearch/plugin/cloud-aws/2.4.2/cloud-aws-2.4.2.zip', u'name': u'cloud-aws'}, u'invocation': {u'module_args': {u'follow': False, u'get_checksum': True, u'path': u'/usr/share/elasticsearch/plugins/cloud-aws', u'checksum_algorithm': u'sha1', u'get_md5': False, u'get_mime': True, u'get_attributes': True}}, u'changed': False}) => {"ansible_loop_var": "item", "changed": true, "cmd": "/usr/share/elasticsearch/bin/plugin install https://repo1.maven.org/maven2/org/elasticsearch/plugin/cloud-aws/2.4.2/cloud-aws-2.4.2.zip" , "delta": "0:00:00.002365", "end": "2021-12-04 09:04:17.494733", "item": {"ansible_loop_var": "item", "changed": false, "failed": false, "invocation": {"module_args": {"checksum_algorithm": "sha1", "follow": false, "get_attrib utes": true, "get_checksum": true, "get_md5": false, "get_mime": true, "path": "/usr/share/elasticsearch/plugins/cloud-aws"}}, "item": {"name": "cloud-aws", "url": "https://repo1.maven.org/maven2/org/elasticsearch/plugin/cloud-aws/2.4.2/cloud-aws-2.4.2.zip"}, "stat": {"exists": false}}, "msg": "non-zero return code", "rc": 127, "start": "2021-12-04 09:04:17.492368", "stderr": "/bin/sh: 1: /usr/share/elasticsearch/bin/plugin: not found", "stderr_lines": ["/bin/sh: 1: /usr/share/elasticsearch/bin/plugin: not found"], "stdout": "", "stdout_lines": []}

The path to the binary plugin is wrong

... "stderr": "/bin/sh: 1: /usr/share/elasticsearch/bin/plugin: not found"...

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM