83 lines
2.5 KiB
YAML
83 lines
2.5 KiB
YAML
- name: "elastic | Hole Paket"
|
|
get_url:
|
|
url: "{{ es_url }}"
|
|
dest: "{{ es_dl_path }}"
|
|
when: "'elasticsearch-oss' not in ansible_facts.packages"
|
|
|
|
- name: "elastic | Installiere Paket"
|
|
command: "dpkg -i elasticsearch-oss-{{ es_version }}-amd64.deb"
|
|
args:
|
|
chdir: "{{ es_dl_path }}"
|
|
when: "'elasticsearch-oss' not in ansible_facts.packages"
|
|
|
|
- name: "elastic | Prüfe Plugin"
|
|
stat:
|
|
path: /usr/share/elasticsearch/plugins/ingest-attachment
|
|
register: ingest_plugin
|
|
|
|
# https://www.elastic.co/guide/en/elasticsearch/plugins/current/installation.html
|
|
# Installiert die zur ES passende Plugin-Version - 7.10.2 (OSS)
|
|
- name: "eleastic | Installiere Plugin"
|
|
command: elasticsearch-plugin install ingest-attachment --batch
|
|
when: ingest_plugin.stat.exists == False
|
|
|
|
- name: "elastic | Passe Konfiguration an"
|
|
lineinfile:
|
|
path: /etc/elasticsearch/elasticsearch.yml
|
|
line: "{{ item }}"
|
|
loop:
|
|
- 'http.max_content_length: 400mb'
|
|
- 'indices.query.bool.max_clause_count: 2000'
|
|
|
|
- name: "elastic | Kopiere Fix für CVE-2021-44228"
|
|
copy:
|
|
src: nolog4j0day.options
|
|
dest: /etc/elasticsearch/jvm.options.d/nolog4j0day.options
|
|
|
|
- name: "elastic | Starte Dienst"
|
|
systemd:
|
|
name: elasticsearch
|
|
state: started
|
|
daemon_reload: yes
|
|
|
|
- name: "elastic | Konfiguriere ES-Server-Adresse"
|
|
shell:
|
|
cmd: rbenv exec bundle exec rails r "Setting.set('es_url', 'http://127.0.0.1:9200')"
|
|
chdir: "{{ zammad_home }}"
|
|
environment:
|
|
RAILS_ENV: production
|
|
become: true
|
|
become_user: "{{ zammad_user }}"
|
|
|
|
- name: "elastic | Erstelle Such-Index"
|
|
shell:
|
|
cmd: rbenv exec bundle exec rake zammad:searchindex:rebuild
|
|
chdir: "{{ zammad_home }}"
|
|
environment:
|
|
RAILS_ENV: production
|
|
become: true
|
|
become_user: "{{ zammad_user }}"
|
|
|
|
- name: "elastic | Konfiguriere Datei-Erweiterungen"
|
|
shell:
|
|
cmd: rbenv exec bundle exec rails r "Setting.set('es_attachment_ignore', [ '.png', '.jpg', '.jpeg', '.mpeg', '.mpg', '.mov', '.bin', '.exe', '.box', '.mbox' ] )"
|
|
chdir: "{{ zammad_home }}"
|
|
environment:
|
|
RAILS_ENV: production
|
|
become: true
|
|
become_user: "{{ zammad_user }}"
|
|
|
|
- name: "elastic | Konfiguriere Datei-Größen"
|
|
shell:
|
|
cmd: rbenv exec bundle exec rails r "Setting.set('es_attachment_max_size_in_mb', {{ es_attachment_max_size }})"
|
|
chdir: "{{ zammad_home }}"
|
|
environment:
|
|
RAILS_ENV: production
|
|
become: true
|
|
become_user: "{{ zammad_user }}"
|
|
|
|
- name: "elastic | Richte Monit-Überwachung ein"
|
|
copy:
|
|
src: elasticsearch.monit
|
|
dest: /etc/monit/conf-enabled/elasticsearch
|
|
notify: reload monit
|