Elasticsearch:クラスタ運用次元共通API
6734 ワード
一、ノードディスク水位線https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-cluster.html#disk-based-shard-allocation、ESのデフォルトはdataノードディスクの使用空間状況に応じて新しいshardsを割り当てるか、ノード上の既存のshardsを他のノードに移行する. cluster.routing.allocation.disk.watermark.low:ESがディスク使用率がこの値を超えるノードに新しいshardsを割り当てないことを意味し、動的調整をサポートし、デフォルトの85%または; cluster.routing.allocation.disk.watermark.high:ESがディスク使用率がこの値を超えるノードに対してshardsを移動または再割り当てすることを意味し、動的調整をサポートし、デフォルトでは90%です. cluster.routing.allocation.disk.watermark.flood_ステージ:ESは、ディスク使用率がこの値を超えるノードのすべてのインデックスに読み取り専用(index.blocks.read_only_allow_delete)を設定し、新しいデータの書き込みを拒否し、動的調整をサポートします.デフォルトは95%です.
2、以上の3つのノードのディスク使用率を制御するパラメータもパーセンテージ値をディスク領域の残りの絶対値に変更することをサポートし、APIは以下の通りである.
二、クラスタ中のShardsはhttps://www.elastic.co/guide/en/elasticsearch/reference/current/modules-cluster.html#cluster-shard-allocation-settings、clusterを分配して回復する.routing.allocation.enable:shards割当てルールを制御し、デフォルトallで、dataノードを迅速に再起動する必要がある場合は、値をnoneに設定することを推奨します. all:クラスタ内のすべてのスライスの割り当てを許可します. none:スライスクラスタ内のすべてのスライスは許可されていません. primaries:クラスタ内のインデックスの新しいスライスのみを割り当てることができます. new_primaries:クラスタ内の新しいインデックスを割り当てるプライマリスライスのみを許可します.
2、スライス回復 cluster.routing.allocation.node_concurrent_incoming_recoveries:スライスリカバリ中に単一ノードがどれだけの同時スライス転送数を許可するか、デフォルト2; cluster.routing.allocation.node_concurrent_outgoing_recoveries:スライスリカバリ中に単一ノードがどれだけ同時スライス送信数を許可するか、デフォルト2; cluster.routing.allocation.node_concurrent_recoveries:スライス転送と転送の同時数を同時に設定します.
3.スライスが単一dataノードに割り当てられる数を制御する index.routing.allocation.total_shards_per_Node:indicesのスライスが単一ノードに割り当てられるスライス数を制御します. cluster.routing.allocation.total_shards_per_Node:クラスタ内のすべてのスライスが単一ノードに割り当てられるスライス数を制御し、あまり使用されません.
三、クラスター中のShards rebalance https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-cluster.html#cluster-shard-allocation-filtering、cluster.routing.rebalance.Enable:クラスタshards rebalanceパラメータを制御し、デフォルトallで、ノードを迅速に再起動する必要がある場合は、値をnoneに設定することを推奨します. all:クラスタ内のすべてのshardsがrebalanceを行うことを許可します. none:クラスタ内のすべてのindicesのshardsがrebalanceを行うことを許可しません. primaries:クラスタ内のプライマリshardsのみがrebalanceを許可します. replicas:クラスタ内のコピーshardsのみがrebalanceを許可する.
2、cluster.routing.allocation.cluster_concurrent_rebalance:クラスタ内のスライスrebalanceの同時数を許可し、デフォルトは2であり、クラスタが新しいdataノードを拡張した後、このパラメータ値を大きくすることでスライスをより速く新しいノードに移行させ、クラスタスライスRebalanceに迅速に達する.
四、インデックスsettings 1、インデックススライス数の調整
2、インデックスrefresh周波数の調整
3、インデックスtranslog flushポリシーの調整
curl -H 'Content-Type:application/json' -XPUT http://127.0.0.1:9200/_cluster/settings -d '{"transient" : {"cluster.routing.allocation.disk.watermark.low":"85%"}}'
curl -H 'Content-Type:application/json' -XPUT http://127.0.0.1:9200/_cluster/settings -d '{"transient" : {"cluster.routing.allocation.disk.watermark.high":"90%"}}'
curl -H 'Content-Type:application/json' -XPUT http://127.0.0.1:9200/_cluster/settings -d '{"transient" : {"cluster.routing.allocation.disk.watermark.flood_stage":"95%"}}'
2、以上の3つのノードのディスク使用率を制御するパラメータもパーセンテージ値をディスク領域の残りの絶対値に変更することをサポートし、APIは以下の通りである.
PUT _cluster/settings
{
"transient": {
"cluster.routing.allocation.disk.watermark.low": "100gb",
"cluster.routing.allocation.disk.watermark.high": "50gb",
"cluster.routing.allocation.disk.watermark.flood_stage": "10gb"
}
}
二、クラスタ中のShardsはhttps://www.elastic.co/guide/en/elasticsearch/reference/current/modules-cluster.html#cluster-shard-allocation-settings、clusterを分配して回復する.routing.allocation.enable:shards割当てルールを制御し、デフォルトallで、dataノードを迅速に再起動する必要がある場合は、値をnoneに設定することを推奨します.
curl -H 'Content-Type:application/json' -XPUT http://127.0.0.1:9200/_cluster/settings -d '{"transient" : {"cluster.routing.allocation.enable":"all"}}'
2、スライス回復
curl -H 'Content-Type:application/json' -XPUT http://127.0.0.1:9200/_cluster/settings -d '{"transient" : {"cluster.routing.allocation.node_concurrent_incoming_recoveries":"2"}}'
curl -H 'Content-Type:application/json' -XPUT http://127.0.0.1:9200/_cluster/settings -d '{"transient" : {"cluster.routing.allocation.node_concurrent_outgoing_recoveries":"2"}}'
curl -H 'Content-Type:application/json' -XPUT http://127.0.0.1:9200/_cluster/settings -d '{"transient" : {"cluster.routing.allocation.node_concurrent_recoveries":"4"}}'
3.スライスが単一dataノードに割り当てられる数を制御する
curl -H 'Content-Type:application/json' -XPUT http://127.0.0.1:9200/indices_test/_settings -d '{"index.routing.allocation.total_shards_per_node":"3"}'
PUT _cluster/settings
{
"transient" : {
"cluster.routing.allocation.exclude._ip" : "10.0.0.1" }
}
curl -H 'Content-Type:application/json' -XPUT http://127.0.0.1:9200/_cluster/settings -d '{"transient" : {"cluster.routing.allocation.exclude._ip":"127.0.0.1"}}'
三、クラスター中のShards rebalance https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-cluster.html#cluster-shard-allocation-filtering、cluster.routing.rebalance.Enable:クラスタshards rebalanceパラメータを制御し、デフォルトallで、ノードを迅速に再起動する必要がある場合は、値をnoneに設定することを推奨します.
curl -H 'Content-Type:application/json' -XPUT http://127.0.0.1:9200/_cluster/settings -d '{"transient" : {"cluster.routing.rebalance.enable":"all"}}'
2、cluster.routing.allocation.cluster_concurrent_rebalance:クラスタ内のスライスrebalanceの同時数を許可し、デフォルトは2であり、クラスタが新しいdataノードを拡張した後、このパラメータ値を大きくすることでスライスをより速く新しいノードに移行させ、クラスタスライスRebalanceに迅速に達する.
curl -H 'Content-Type:application/json' -XPUT http://127.0.0.1:9200/_cluster/settings -d '{"transient" : {"cluster.routing.allocation.cluster_concurrent_rebalance":"2"}}'
四、インデックスsettings 1、インデックススライス数の調整
curl -H 'Content-Type:application/json' -XPUT http://127.0.0.1:9200/indices_test/_settings -d '{"index":{"number_of_replicas" : 1}}'
2、インデックスrefresh周波数の調整
curl -H 'Content-Type:application/json' -XPUT http://127.0.0.1:9200/indices_test/_settings -d '{"index":{"refresh_interval" : "30s"}}'
3、インデックスtranslog flushポリシーの調整
curl -H 'Content-Type:application/json' -XPUT http://127.0.0.1:9200/indices_test/_settings -d '{"index":{"translog.durability" : "async","translog.flush_threshold_size":"1gb"}}'