Rancher が Elasticsearch 8.5.1 バージョンのサービスをデプロイ

序文

es7 から es8 にアップグレードすると、起動コンテナで ssl セキュア送信設定がデフォルトで有効になりますが、Rancher にデプロイするとデータやログなどのディレクトリの永続化を実現するために pvc をマウントする必要があり、ssl を有効にするには証明書などの操作が必要で非常に面倒で残念です。

この記事では、Rancher で es 8.5.1 バージョン サービスをデプロイするためにセキュリティ構成 (つまり、サービスへのアクセスにユーザー名とパスワードが必要) を有効にするが、SSL を有効にしない例を取り上げます。

pvc がマウントされた後、ディレクトリのデフォルトの所有者をroot変更する必要があるelasticsearchため、全体的な展開は 3 つのステップに分かれています。

  1. コンテナーのデフォルトの起動スクリプトをオーバーライドし、rootユーザーとしてコンテナーに入り、PVC マウント ディレクトリの所有者を変更する必要があります。
  2. 2 番目のステップでは、通常のスクリプトでコンテナを起動し、デフォルトのユーザーでelasticsearchコンテナを実行します。
  3. 3 番目のステップでは、コンテナーのコマンドラインを入力し、組み込みシステムのユーザーをリセットしelastickibana_system

1. ワークロードをデプロイする

1.1 基本情報

ここに画像の説明を挿入

注意点:

  • データ ディレクトリを永続化する必要があるため、StatefulSet タイプとしてデプロイされます。
  • クラスターの外部でサービスを提供する必要があるため、ポート 9200 が NodePort としてマッピングされます。

1.2 環境変数

ここに画像の説明を挿入

詳細な説明

# 单节点部署
discovery.type=single-node
# 无需自动下载 geoip
ingest.geoip.downloader.enabled=false
xpack.license.self_generated.type=basic
# 启用密码认证
xpack.security.enabled=true
xpack.security.enrollment.enabled=true
# 不启用 SSL 传输加密,否则需要处理证书等
xpack.security.transport.ssl.enabled=false

1.3 データ量

ここに画像の説明を挿入

データ ディレクトリdataとログ ディレクトリはlogs永続化する必要があります

1.4 入力コマンドとユーザーUID

ここに画像の説明を挿入

  • エントリ コマンドは、まず、次を使用してイメージ自体のコマンドをオーバーライドします。/bin/bash
  • ユーザーUIDは0を使用します。すなわちroot

2. マウントディレクトリの所有者を変更する

PVC マウント ディレクトリの所有者はデフォルトで であるためroot/root、たとえば次のようになります。

ここに画像の説明を挿入

コンテナのコマンドラインを入力し、ディレクトリの所有者を変更します。

chown -R elasticsearch data/
chown -R elasticsearch logs/

ここに画像の説明を挿入

変更後の表示ls -lah

ここに画像の説明を挿入

コマンドラインを終了し、コンテナを停止します。

3. ワークロードを変更する

ここに画像の説明を挿入

  • クリアエントリコマンド
  • ユーザー UID は 1000 に設定されます。つまりelasticsearch
  • ワークロードを再起動する

4. ユーザーパスワードをリセットする

コンテナのコマンドラインに入り、リセットコマンドを実行します。

bin/elasticsearch-reset-password -u elastic -i
# kibana_system 用于 kibana 接入 es
bin/elasticsearch-reset-password -u kibana_system -i

ここに画像の説明を挿入

リセットが成功すると、http://宿主机IP:NodePortポートのログイン検証にアクセスできるようになります。

ここに画像の説明を挿入

ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/qq12547345/article/details/130370159