William-Yeh.elasticsearch

williamyeh.elasticsearch for Ansible Galaxy

Circle CI Build Status

概要

Ansible Galaxyのロール名: williamyeh.elasticsearch

このAnsibleロールは、Elasticsearchに以下の機能を提供します:

  • Elasticsearchのインストール
  • 要求があれば、JVMのヒープサイズとG1GCの指定
  • プラグインのインストール(標準およびサードパーティー)
  • 最低限の設定(実際の 設定はユーザーのテンプレートファイルに任せる; 下の使用法セクションを参照)

ロール変数

必須変数

ユーザーのプレイブックで定義が必要な変数:

elasticsearch_version

オプション変数

ユーザーがインストール可能な設定ファイル(Ansibleのテンプレートシステムによって):

# インストールする設定ファイル(通常は elasticsearch.yml)
# `playbook_dir` からの相対パス;
# ファイルはそのままコピーされます。
elasticsearch_conf_copy

# インストールする設定ファイル(通常は elasticsearch.yml.j2)
# `playbook_dir` からの相対パス;
# ファイルはAnsibleのテンプレートシステムを通してコピーされます。
elasticsearch_conf_template

ユーザーがインストール可能なプラグイン:

# インストールするプラグインの配列(elasticsearch.orgに登録されている)。
# @see http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/modules-plugins.html
elasticsearch_plugins

# インストールするその他のプラグインの配列。
# 配列内の各項目は以下のキーを持つ必要があります:
#  - "name"、プラグイン名(".jar"部分を除く)
#  - "url"、jarファイルのurlを指す。
elasticsearch_other_plugins

ユーザーが設定可能なデフォルト:

# JVMでG1GCを使用しますか?
elasticsearch_use_g1gc: false

# ElasticsearchのJVMヒープサイズ
elasticsearch_heap_size

ハンドラー

  • restart elasticsearch
  • stop elasticsearch

使用法

ステップ1: ロールを追加

プレイブックファイルにロール名 williamyeh.elasticsearch を追加します。

ステップ2: 変数を追加

プレイブックファイルに変数を設定します。

簡単な例:

---
# ファイル: simple-playbook.yml

- hosts: all

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

  vars:
    elasticsearch_version: 1.6.0

ステップ3: JVMメモリを調整(必要な場合)

---
- hosts: all

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

  vars:
    elasticsearch_version: 1.4.2

    elasticsearch_use_g1gc: true
    elasticsearch_heap_size: 6g

ステップ4: ユーザーの設定ファイルをコピーし、プラグインをインストールなど(必要な場合)

より実践的な例:

---
# ファイル: 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

    #-- そのままコピー
    elasticsearch_conf_copy: "files/elasticsearch.yml"

    #-- Ansibleのテンプレートシステムを通してコピー
    #elasticsearch_conf_template: "templates/elasticsearch.yml.j2"

依存関係

ターゲットホストにはJDKが事前にインストールされている必要があります。 williamyeh.oracle-java などの他のロールを使用できます。

ライセンス

MITライセンスの下でライセンスされています。 詳細は LICENSEファイル を参照してください。

歴史

なし。

プロジェクトについて

Install Elasticsearch

インストール
ansible-galaxy install William-Yeh.elasticsearch
ライセンス
mit
ダウンロード
190
所有者