nkakouros.elasticsearch
ansible-role-elasticsearch
Elasticsearchをインストールして設定します。
説明
このロールは、設定可能な方法で以下を行います:
- Elasticsearchをインストール
- Elasticsearchを設定
- HTTPおよびトランスポートのTLSを設定
- 内蔵ユーザーのパスワードを設定
- 上記の情報をansibleコントローラーと同期してさらに利用
設定はyaml辞書(elastic_config
)を介して行われるため、このロールによって行われるすべてのデフォルト設定は、elastic_config
に適切なキーを定義することで上書きできます。
要件
なし
依存関係
- 対象システムにJavaがインストールされている必要があります。
- Elasticsearch用に生成された証明書が必要です(暗号化通信を有効にする場合)。
これらのタスクを実行するために、他のansibleロールを使用できます。例えば、geerlingguy.javaやnkakouros.easyrsaがあります。例のプレイブックを参照してください。
ロール変数
このロールの変数とその説明については、defaults/main.ymlファイルを確認してください。
デフォルトでは、このロールは単にElasticsearchをインストールし、マスター、データ、およびインジェストノードとしてElasticsearchを開始します。
他のロールとの比較
このロールを作成する前に、次の2つのロールをプロジェクトで使用しようとしました:
- https://github.com/geerlingguy/ansible-role-elasticsearch
- https://github.com/elastic/ansible-elasticsearch
しかし、私のニーズには合いませんでした。最初のものはあまりにもシンプルで、機能を追加するためのPRは数ヶ月または数年待たされる可能性があります。2つ目は、古くて読みづらいansibleコードが多く、以前のElasticsearchバージョンの膨大なデータと混乱を招く文書が多いため、私には難しすぎました。
例のプレイブック
これは、開発目的のためにできるだけ早くElasticsearchをインストールするための最小限のプレイブックです。証明書は使用しません。
- hosts: elastic-server
roles:
- nkakouros.elasticsearch
フルのELKインストールを設定してインストールする完全な例については、molecule/default/フォルダーを参照してください。そこには、prepare.ymlファイルがあり、このロールが必要とする依存関係をインストールするプレイブックが含まれています。playbook.ymlファイルには、このロールを具体的に使用するための完全かつ複雑な例が含まれています。
ライセンス
GPLv3
著者情報
ニコラオス・カクーロス (nkak@kth.se)
ansible-galaxy install nkakouros.elasticsearch