概要
いろいろと起動方法が変わっていたので試してみました
環境
- Ubuntu 18.04
- docker 20.10.7
- ElasticSearch 8.1.3
- Kibana 8.1.3
max_map_count 変更
ERROR: [1] bootstrap checks failed. You must address the points described in the following [1] lines before starting Elasticsearch.
というエラーが発生して ElasticSearch が起動しないので事前に変更します
- sudo sysctl -w vm.max_map_count=262144
ElasticSearch 起動
シングルノードで起動します
-
docker run -d -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" --name es docker.elastic.co/elasticsearch/elasticsearch:8.1.3
elastic ユーザのパスワードリセット
ElasticSearch にアクセスする elastic ユーザのパスワードを作成します
ターミナルに表示されたパスワードをメモしておきましょう
- docker exec -it es /usr/share/elasticsearch/bin/elasticsearch-reset-password -u elastic -a
ここで ElasticSearch にアクセスできるか確認
一旦アクセスできるか確認します
自動で生成されるクライアント証明書は localhost アクセス用のなので注意してください
- docker cp es:/usr/share/elasticsearch/config/certs/http_ca.crt .
-
curl --cacert http_ca.crt -u elastic https://localhost:9200
Enrollment token の作成
Kibana が ElasticSearch にアクセスするためのトークンを生成します
ターミナルに表示される eyxxx という文字列をコピーしておきます
-
docker exec -it es /usr/share/elasticsearch/bin/elasticsearch-create-enrollment-token -s kibana --url "https://localhost:9200"
Kibana の起動
-
docker run -d -p 5601:5601 --name kibana docker.elastic.co/kibana/kibana:8.1.3
動作確認
アクセスする URL は以下で確認できます
- docker logs kibana
URL の後ろに code が含まれている URL にアクセスしましょう
事前に取得した Enrollment token を入力します
Kibana -> ElasticSearch のアクセス経路は docker 内のネットワークを使用しているようなので ElasticSearch と Kibana は必ず同じネットワークに所属させるようにしてください (今回は default ネットワークを使っています)
設定が完了してログイン画面が表示されれば OK です
elastic ユーザでログインできることを確認しましょう
最後に
セキュリティ面がだいぶ強化されログインや Kibana からの接続時に証明書や認証が含まれるようになっていました
各種 SDK を使っている場合もいろいろとその辺りの変更が入っているかなと思います
0 件のコメント:
コメントを投稿