ローリングリスタート と Solr オペレーター

トピック作成者:ks-solruserml-bot (2024/06/12 15:18 投稿)
4
CloseClose

(The bot translated the original post https://lists.apache.org/thread/14gky7pwxlhbtshs47n2xrcxwxlccrh9 into Japanese and reposted it under Apache License 2.0. The copyright of posted content is held by the original poster.)

こんにちは、

Solr オペレーターは、ローリングリスタートを実行する際にコレクションのトポロジーを考慮に入れます。1つの SolrCloud オブジェクトが1つのシャードに対応する状況では、どのように振る舞うかが気になります。この場合、Solr オペレーターは各シャードごとに異なる CR を受信し、それぞれが並行してローリングリスタートを開始します。オペレーターは、それが各 CR で単一のシャードを操作していることを理解し、大規模なクラスターの状態に巻き込まれないようになるでしょうか?

ありがとうございます。
Joel

返信投稿者:ks-solruserml-bot (2024/06/12 15:18 投稿)

前回の質問のフォローアップとして、これまでの調査結果を共有します。1つのシャードごとに1つの SolrCloud リソースがあるシナリオでは、ローリングリスタート中にオーバーシアノードが完全にスキップされていることがわかりました。したがって、solr-operator は、クラスター内に1つの SolrCloud オブジェクトしか存在しない場合にのみローリングリスタートを管理できるようです。

Joel Bernstein
http://joelsolr.blogspot.com/

返信投稿者:ks-solruserml-bot (2024/06/12 15:19 投稿)

これは興味深いですね。

おそらく、各シャードごとに SolrCloud リソースを実行しており、自動スケーリングの目的でシステムプロパティを個別に設定していると思います。
Solr Operator は、管理している各クラウドが独立していると想定しています。ただし、ローリングリスタートプロセスは実際には可能な限り多くのポッドを停止させ、クラスターの状態がより健全になるまで続けます(設定可能)。

理論上、各 SolrCloud リソースで同時にローリングリスタートを実行しても問題ありません。
これは、2 つの SolrCloud リソースがシャードを共有しないため、それらの再起動が互いに影響しないはずだからです。
(実際には、1 つの大きなクラウドを構成する複数の SolrCloud リソースを同時にアップグレードするための唯一の真に安全な方法を考案されたのです)

SolrCloud リソース間でのロジックの重複は、オーバーシアの部分にあります。
solr operator のロジックでは、オーバーシアを最後に再起動し、すべてのノードが稼働し、クラスターの状態が健全になるまで待機します。

他のすべてのノードのアップグレードが成功し、クラスターが健全であるにもかかわらず、オーバーシアがまだアップグレードされていないことがわかりますか?

返信投稿者:ks-solruserml-bot (2024/06/12 15:19 投稿)

了解しました。これが発生している理由を見つけました:

https://github.com/apache/solr-operator/blob/v0.4.0/controllers/util/solr_update_util.go#L185

基本的に、ステートフルセット内のノード数がクラスター状態内のノード数と同じであるという仮定をしています。
このチェックを削除し、私たちが関心を持っているすべてのノードがクラスター状態のライブノードに含まれていることを確認するだけで十分です。
これで解決されます。

GitHub Issue を作成していただけますか?これは v0.5.0 でこのパラダイムを「サポート」するための簡単な修正になります。

また、将来的には v0.6.0(または将来のどこかで)で SolrCloud を複数の StatefulSets に分割できるようにすると素晴らしいでしょう。これにより、複数の SolrCloud リソースを独立して管理する必要がなくなります。

Houston

返信投稿者:ks-solruserml-bot (2024/06/12 15:19 投稿)

ありがとうございます、Houston。

その通りです、ShardごとにSolrCloudを設定する主な動機は、自動スケーリングです。

こちらに作成した問題があります:
https://github.com/apache/solr-operator/issues/348

Joel Bernstein
http://joelsolr.blogspot.com/

トピックへ返信するには、ログインが必要です。

KandaSearch

Copyright © 2006-2024 RONDHUIT Co, Ltd. All Rights Reserved.

投稿の削除

この投稿を削除します。よろしいですか?