William-Yeh.elasticsearch

williamyeh.elasticsearch für Ansible Galaxy

Circle CI Build Status

Zusammenfassung

Rollenname in Ansible Galaxy: williamyeh.elasticsearch

Diese Ansible-Rolle hat folgende Funktionen für Elasticsearch:

  • Installiere Elasticsearch.
  • Speichergröße und G1GC für die JVM angeben, falls gewünscht.
  • Plugins installieren (standardmäßig und von Drittanbietern).
  • Grundkonfiguration (echte Konfiguration sollte in den Vorlagen des Nutzers hinterlegt werden; siehe Abschnitt Nutzung unten).

Rollenvariablen

Pflichtvariablen

Variablen, die im Playbook des Nutzers definiert werden müssen:

elasticsearch_version

Optionale Variablen

Benutzerinstallierbare Konfigurationsdateien (durch das Ansible-Vorlagensystem):

# conf-Datei (normalerweise elasticsearch.yml), die installiert werden soll,
# relativ zu `playbook_dir`;
# die Datei wird unverändert kopiert
elasticsearch_conf_copy

# conf-Datei (normalerweise elasticsearch.yml.j2), die installiert werden soll,
# relativ zu `playbook_dir`;
# die Datei wird durch das Ansible-Vorlagensystem kopiert
elasticsearch_conf_template

Benutzerinstallierbare Plugins:

# Ein Array von Plugins (registriert auf elasticsearch.org), die installiert werden sollen.
# @siehe http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/modules-plugins.html
elasticsearch_plugins

# Ein Array von anderen zu installierender Plugins.
# Jedes Element im Array sollte mindestens die folgenden Schlüssel haben:
#  - "name", den Namen des Plugins ohne den ".jar" Teil.
#  - "url", die URL der jar-Datei.
elasticsearch_other_plugins

Benutzerkonfigurierbare Standardwerte:

# G1GC für die JVM verwenden?
elasticsearch_use_g1gc: false

# JVM Speichergröße für Elasticsearch
elasticsearch_heap_size

Handler

  • neustarten elasticsearch
  • stoppen elasticsearch

Nutzung

Schritt 1: Rolle hinzufügen

Füge den Rollennamen williamyeh.elasticsearch zu deiner Playbook-Datei hinzu.

Schritt 2: Variablen hinzufügen

Setze Variablen in deiner Playbook-Datei.

Ein einfaches Beispiel:

---
# Datei: simple-playbook.yml

- hosts: all

  roles:
    - williamyeh.oracle-java
    - williamyeh.elasticsearch

  vars:
    elasticsearch_version: 1.6.0

Schritt 3: JVM-Speicher anpassen, falls erforderlich

---
- hosts: all

  roles:
    - williamyeh.oracle-java
    - williamyeh.elasticsearch

  vars:
    elasticsearch_version: 1.4.2

    elasticsearch_use_g1gc: true
    elasticsearch_heap_size: 6g

Schritt 4: Konfigurationsdatei des Nutzers kopieren, Plugins installieren usw., falls erforderlich

Ein praktisches Beispiel:

---
# Datei: complex-playbook.yml

- hosts: all

  roles:
    - williamyeh.oracle-java
    - williamyeh.elasticsearch

  vars:
    elasticsearch_version: 1.4.2

    elasticsearch_plugins:
      - elasticsearch/marvel/latest
      - lmenezes/elasticsearch-kopf

    elasticsearch_other_plugins:
      - name: analysis-ik
        url:  https://github.com/medcl/elasticsearch-rtf/raw/master/plugins/analysis-ik/elasticsearch-analysis-ik-1.2.6.jar
        memo: https://github.com/medcl/elasticsearch-analysis-ik

    #-- unverändert kopieren
    elasticsearch_conf_copy: "files/elasticsearch.yml"

    #-- durch das Ansible-Vorlagensystem kopieren
    #elasticsearch_conf_template: "templates/elasticsearch.yml.j2"

Abhängigkeiten

Deine Ziel-Hosts sollten das JDK vorinstalliert haben. Du kannst williamyeh.oracle-java oder andere Rollen aus Ansible Galaxy verwenden.

Lizenz

Lizenz unter der MIT-Lizenz. Siehe die LICENSE-Datei für Einzelheiten.

Geschichte

Keine.

Über das Projekt

Install Elasticsearch

Installieren
ansible-galaxy install William-Yeh.elasticsearch
GitHub Repository
Lizenz
mit
Downloads
190
Besitzer