私は大きなESクラスタを持っています。ディスクアラートポリシーが90%に設定されているので、私は一般的にディスクアラートを受け取る[私のESの高いウォーターマークが87%に設定されている]。シャードの割り当てを見ると、ノードが高いディスク使用率ノードからランダムなノードに移動することがわかります。これはディスクの問題をすばやく解決しますが、ディスク使用率が最も低いノードにそのシャードを移動させません。最高のウォーターマークに達したときにランダムなノードに移動するのではなく、ディスク使用率が最も低いノードにelasticsearch move shardを強制することは可能ですか?elasticsearchはどのようにしてシャードの移動先のノードを選択しますか?
1
A
答えて
1
実際にESは、アカウントa lot of factorsにそれが取るランダムな意思決定を使用していません:
- MaxRetryAllocationDecider - 破片の割り当てが 成功
- NodeVersionAllocationDeciderずにN回再試行された場合 任意のノードに割り当てられることから破片を防ぎます - バージョンと互換性がない可能性のあるノードからの再配置または割り当てを防止します。
- SameShardAllocationDecider - 同じシャードの複数のインスタンスが同じノードに割り当てられないようにします。
- DiskThresholdDecider - シャードに潜在的に割り当てられているノードが十分なディスク容量を持っていることを確認します。
- ShardsLimitAllocationDecider - インデックスまたはノード単位でノードごとのシャード数を制限します。
- AwarenessAllocationDecider - ノード構成で定義された認識キーと値のペアに基づいてシャード割り当てを制御します。
ご覧のとおり、多くの要因があり、ディスク容量の少ないチェッカーはありません。だから唯一の解決策は、あなたの決定者を提供するorg.elasticsearch.plugins.ClusterPlugin
を拡張するyour own pluginと書くことです。しかし、私はそれがES配分決定部パターンの主な設計/考え方と矛盾するので、これは良いアイデアではないと思う:
- 以前のすべてのdeciders
- 任意の正の解の決定を拒否することができます任意のサイダーは、後続に影響を与えません決定
- decidersのほとんどが使用し、ローカル・ノードのデータ
この戦略は、あなたが禁止することを可能にし、クラスタ内で選択する自由を最大化するように設計されています。そういうわけで、外からは無作為に動いているように見えます。これは、大規模で長寿命のクラスタにとって最適な戦略です。
いずれの種類のバイアスを導入しても、製造上の致命的な問題につながる可能性があります。ディスクスペースベースのデシデイがあるとしましょう.1台のサーバーには非常に大きなHDDがあります。しばらくすると、すべてのシャードがこのマシンに割り当てられます。この問題を解決するには、CPU、メモリー、ネットワーク、破損金額などの重要なリソースを考慮する必要があります。さらに、各要因のメトリックと重みを算出する必要があります。
関連する問題
- 1. すべてのelasticsearchシャードをあるノードから別のノードに移動するにはどうすればよいですか? ElasticSearch 2.Xで
- 2. elasticsearchノードのシャード数
- 3. - どのようにリストに移動して選択し、選択した値
- 4. Elasticsearchシャードを移動できません
- 5. ElasticSearchノード/インデックス/シャードが破損した場合はどうなるのですか
- 6. 選択した値をDropDownListの先頭に移動するにはどうすればよいですか?
- 7. ユーザーが移動先のドキュメントライブラリを選択しているワークフロー
- 8. 最後に選択したものがスピナーオプションの先頭に移動します
- 9. D3フォースグラフでD3ノード選択はどのように機能しますか?
- 10. ElasticSearch Clusterでノードがどのように動作するか
- 11. Ractive.jsを使用して、選択した選択ボックスをどのように非選択にしますか?
- 12. 起動時にOdooはどのようにデータベースを選択しますか?
- 13. ノードを選択しようとすると、xslで変数をどのように使用しますか?
- 14. MySQLはどのようにインデックスを選択しますか?
- 15. MySQLはどのように列を選択しますか..?
- 16. lxml xpathを使用して先行ノードを選択しようとしています
- 17. どのようにイメージを並べて移動しますか?
- 18. どのように上に移動し、C#のツリービューでプログラムによって選択項目を下に移動できますか?
- 19. 注釈タイトルはどのように選択しましたか?
- 20. どのようにCSSのラジオボタンを選択しますか?
- 21. どのようにデフォルトの動的ドロップダウンを選択しますか?
- 22. MongoDBはシャード・キーのタイプをどのように決定しますか?
- 23. どのようにしてInternet Explorer 7の「選択時に選択」タイムアウトをコンボボックスに増やしますか?
- 24. 選択したファイルを別のディレクトリに移動します。
- 25. Influxdb特定のシャードのデータを選択
- 26. VB.Net - どのようにオブジェクトを「動的に」選択しますか?
- 27. kubernetesはAWS上のロードバランサに追加するノードをどのように選択しますか?
- 28. Googleドライブの選択としてどのようにvaadin-grid要素の選択を使用しますか?
- 29. jqueryで最も最近選択されたオブジェクトをスクロールしてページの先頭に移動します
- 30. Octopus gemは、shard_idに基づいて関連モデルのシャードを動的に選択します