Добавление отсутствующего уровня в систему
Распределение индексов в развертывании Elasticsearch может выполняться на уровнях данных.
Чтобы разрешить распределение индексов, выполните следующие шаги, чтобы добавить уровень данных, на котором индексы ожидают размещения, в ваше развертывание:
Для назначения фрагментов нам необходимо включить новый уровень в развертывании.
Используйте Kibana
- Войдите в консоль Elastic Cloud.
-
На панели Услуга Elasticsearch щелкните имя вашего развертывания.
Если имя вашего развертывания отключено, ваши экземпляры Kibana могут быть неисправны. В этом случае, пожалуйста, обратитесь в службу поддержки Elastic. Если ваше развертывание не включает Kibana, все, что вам нужно сделать, это включить его сначала.
-
Откройте меню боковой навигации вашего развертывания (расположено под логотипом Elastic в верхнем левом углу) и перейдите к Dev Tools > Console.
-
Определите, какой уровень индекс ожидает для назначения. Получите настроенное значение для параметра
index.routing.allocation.include._tier_preference:resp = client.indices.get_settings( index="my-index-000001", name="index.routing.allocation.include._tier_preference", flat_settings=True, ) print(resp)response = client.indices.get_settings( index: 'my-index-000001', name: 'index.routing.allocation.include._tier_preference', flat_settings: true ) puts response
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, и в кластере Elasticsearch требуется больше узлов с рольюdata_warm. - Откройте меню боковой навигации вашего развертывания (расположено под логотипом Elastic в верхнем левом углу) и перейдите к Управление этим развертыванием.
- С правой стороны щелкните, чтобы раскрыть кнопку раскрывающегося списка Управление, и выберите Изменить развертывание из списка вариантов.
- На странице Изменить нажмите + Добавить ресурсы для уровня, который вы определили, что необходимо включить в ваше развертывание. Выберите желаемый размер и зоны доступности для нового уровня.
- Перейдите к нижней части страницы и нажмите кнопку Сохранить.
Чтобы назначить фрагменты, вы можете добавить больше узлов в свой кластер Elasticsearch и назначить целевой уровень индекса роль узла новым узлам.
Чтобы определить, какой уровень необходим для назначения индексу, используйте API получения настроек индекса для получения настроенного значения для параметра index.routing.allocation.include._tier_preference:
resp = client.indices.get_settings(
index="my-index-000001",
name="index.routing.allocation.include._tier_preference",
flat_settings=True,
)
print(resp) response = client.indices.get_settings( index: 'my-index-000001', name: 'index.routing.allocation.include._tier_preference', flat_settings: true ) puts response
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"
}
}
} | Представляет собой список узлов уровня данных, разделенных запятыми, на которых разрешено размещение этого индекса, первый из которых имеет более высокий приоритет, т.е. уровень, на который нацелен индекс. Например, в этом примере предпочтительный уровень — |
© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/8.17/add-tier.html