API перезагрузки безопасных настроек узлов
Перезагружает хранилище ключей на узлах кластера.
Запрос
POST /_nodes/reload_secure_settings
POST /_nodes/<node_id>/reload_secure_settings
Предварительные условия
- Если включены функции безопасности Elasticsearch, у вас должна быть привилегия кластера
manage, чтобы использовать этот API.
Описание
Безопасные настройки хранятся в хранилище ключей на диске. Некоторые из этих настроек являются перезагружаемыми. То есть вы можете изменить их на диске и перезагрузить их без перезапуска узлов в кластере. После обновления перезагружаемых безопасных настроек в вашем хранилище ключей вы можете использовать этот API для перезагрузки этих настроек на каждом узле.
Если хранилище ключей Elasticsearch защищено паролем, а не просто зашифровано, вам необходимо предоставить пароль для хранилища ключей при перезагрузке безопасных настроек. Перезагрузка настроек для всего кластера предполагает, что хранилища ключей всех узлов защищены одним и тем же паролем; этот метод разрешен только при шифровании межузловых коммуникаций. В качестве альтернативы, вы можете перезагрузить безопасные настройки на каждом узле, локально вызвав API и передав узел-специфичный пароль хранилища ключей Elasticsearch.
Параметры пути
-
<node_id> - (Необязательно, строка) Названия конкретных узлов в кластере, на которые нужно нацелиться. Например,
nodeId1,nodeId2. Опции выбора узлов см. в спецификации узла.
Elasticsearch требует согласованных безопасных настроек на всех узлах кластера, но эта согласованность не обеспечивается. Поэтому перезагрузка определенных узлов не является стандартной практикой. Она оправдана только при повторной попытке неудачных операций перезагрузки.
Тело запроса
-
secure_settings_password - (Необязательно, строка) Пароль для хранилища ключей Elasticsearch.
Примеры
В следующих примерах предполагается общий пароль для хранилища ключей Elasticsearch на каждом узле кластера:
resp = client.nodes.reload_secure_settings(
secure_settings_password="keystore-password",
)
print(resp)
resp1 = client.nodes.reload_secure_settings(
node_id="nodeId1,nodeId2",
secure_settings_password="keystore-password",
)
print(resp1) const response = await client.nodes.reloadSecureSettings({
secure_settings_password: "keystore-password",
});
console.log(response);
const response1 = await client.nodes.reloadSecureSettings({
node_id: "nodeId1,nodeId2",
secure_settings_password: "keystore-password",
});
console.log(response1); POST _nodes/reload_secure_settings
{
"secure_settings_password":"keystore-password"
}
POST _nodes/nodeId1,nodeId2/reload_secure_settings
{
"secure_settings_password":"keystore-password"
} Ответ содержит объект nodes, который представляет собой карту, ключами которой являются идентификаторы узлов. Каждое значение имеет узел name и необязательное поле reload_exception. Поле reload_exception содержит сериализованное исключение, которое было вызвано во время процесса перезагрузки, если таковое имелось.
{
"_nodes": {
"total": 1,
"successful": 1,
"failed": 0
},
"cluster_name": "my_cluster",
"nodes": {
"pQHNt5rXTTWNvUgOrdynKg": {
"name": "node-0"
}
}
}
© 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/cluster-nodes-reload-secure-settings.html