システムに欠落しているティアを追加する
Elasticsearchのデプロイメントにおけるインデックスの割り当ては、データティアに基づいて行われます。
インデックスが割り当てられるようにするために、インデックスが割り当てられることを期待するデータティアをデプロイメントに追加する手順は次のとおりです:
シャードを割り当てるためには、デプロイメントで新しいティアを有効にする必要があります。
Kibanaを使用する
- 1. Elastic Cloudコンソールにログインします。
- 2. Elasticsearchサービスパネルで、デプロイメントの名前をクリックします。
デプロイメントの名前が無効になっている場合、Kibanaインスタンスが正常でない可能性があります。その場合は、Elasticサポートにお問い合わせください。デプロイメントにKibanaが含まれていない場合は、最初に有効にするだけで済みます。 - 3. デプロイメントのサイドナビゲーションメニュー(左上隅のElasticロゴの下に配置されています)を開き、Dev Tools > Consoleに移動します。
- 4. インデックスが割り当てを期待するティアを特定します。
index.routing.allocation.include._tier_preference
設定の構成値を取得します:
Python
resp = client.indices.get_settings(
index="my-index-000001",
name="index.routing.allocation.include._tier_preference",
flat_settings=True,
)
print(resp)
Ruby
response = client.indices.get_settings(
index: 'my-index-000001',
name: 'index.routing.allocation.include._tier_preference',
flat_settings: true
)
puts response
Js
const response = await client.indices.getSettings({
index: "my-index-000001",
name: "index.routing.allocation.include._tier_preference",
flat_settings: "true",
});
console.log(response);
コンソール
GET /my-index-000001/_settings/index.routing.allocation.include._tier_preference?flat_settings
コンソール-結果
{
"my-index-000001": {
"settings": {
"index.routing.allocation.include._tier_preference": "data_warm,data_hot"
}
}
}
このインデックスが割り当てを許可されているデータティアノードロールのカンマ区切りリストを表します。最初のものが優先度が高いものです。すなわち、インデックスがターゲットにしているティアです。例として、この例ではティアの優先度はdata_warm,data_hot であり、インデックスはwarm ティアをターゲットにしており、data_warm ロールを持つノードがElasticsearchクラスターにさらに必要です。 |
- 5. デプロイメントのサイドナビゲーションメニュー(左上隅のElasticロゴの下に配置されています)を開き、このデプロイメントを管理に移動します。
- 6. 右側から、管理ドロップダウンボタンを展開し、オプションのリストからデプロイメントを編集を選択します。
- 7. 編集ページで、有効にする必要があるティアの+ キャパシティを追加をクリックします。新しいティアの希望のサイズと可用性ゾーンを選択します。
- 8. ページの下部に移動し、保存ボタンをクリックします。
シャードを割り当てるために、Elasticsearchクラスターにノードを追加し、インデックスのターゲットティアのnode roleを新しいノードに割り当てることができます。
インデックスが割り当てに必要なティアを特定するには、インデックス設定を取得APIを使用してindex.routing.allocation.include._tier_preference
設定の構成値を取得します:
Python
resp = client.indices.get_settings(
index="my-index-000001",
name="index.routing.allocation.include._tier_preference",
flat_settings=True,
)
print(resp)
Ruby
response = client.indices.get_settings(
index: 'my-index-000001',
name: 'index.routing.allocation.include._tier_preference',
flat_settings: true
)
puts response
Js
const response = await client.indices.getSettings({
index: "my-index-000001",
name: "index.routing.allocation.include._tier_preference",
flat_settings: "true",
});
console.log(response);
コンソール
GET /my-index-000001/_settings/index.routing.allocation.include._tier_preference?flat_settings
コンソール-結果
{
"my-index-000001": {
"settings": {
"index.routing.allocation.include._tier_preference": "data_warm,data_hot"
}
}
}
このインデックスが割り当てを許可されているデータティアノードロールのカンマ区切りリストを表します。最初のものが優先度が高いものです。すなわち、インデックスがターゲットにしているティアです。例として、この例ではティアの優先度はdata_warm,data_hot であり、インデックスはwarm ティアをターゲットにしており、data_warm ロールを持つノードがElasticsearchクラスターにさらに必要です。 |