API кластеров
Спецификация узла
Некоторые API кластера могут работать с подмножеством узлов, которые могут быть указаны с помощью фильтров узлов. Например, API Управление задачами, Статистика узлов и Информация об узлах могут сообщать результаты из отфильтрованного набора узлов, а не со всех узлов.
Фильтры узлов записываются в виде списка отдельных фильтров, разделенных запятыми, каждый из которых добавляет или удаляет узлы из выбранного подмножества. Каждый фильтр может быть одним из следующих:
-
_all, для добавления всех узлов в подмножество. -
_local, для добавления локального узла в подмножество. -
_master, для добавления текущего выбранного узла-мастера в подмножество. - идентификатор или имя узла, для добавления этого узла в подмножество.
- IP-адрес или имя хоста, для добавления всех соответствующих узлов в подмножество.
- шаблон, используя
*подстановочные знаки, который добавляет все узлы в подмножество, чьё имя, адрес или имя хоста соответствует шаблону. -
master:true,data:true,ingest:true,voting_only:true,ml:trueилиcoordinating_only:true, которые соответственно добавляют в подмножество все узлы, подходящие для роли мастер, все узлы данных, все узлы загрузки, все узлы только с правом голоса, все узлы машинного обучения и все узлы только с координацией. -
master:false,data:false,ingest:false,voting_only:true,ml:falseилиcoordinating_only:false, которые соответственно удаляют из подмножества все узлы, подходящие для роли мастер, все узлы данных, все узлы загрузки, все узлы только с правом голоса, все узлы машинного обучения и все узлы только с координацией. - пара шаблонов, используя
*подстановочные знаки, видаattrname:attrvalue, которые добавляют в подмножество все узлы с пользовательским атрибутом узла, чьё имя и значение соответствуют соответствующим шаблонам. Пользовательские атрибуты узла настраиваются путём установки свойств в файле конфигурации видаnode.attr.attrname: attrvalue.
Фильтры узлов выполняются в порядке их указания, что важно при использовании фильтров, удаляющих узлы из набора. Например, _all,master:false означает все узлы за исключением подходящих для роли мастер, но master:false,_all означает то же, что и _all, поскольку фильтр _all выполняется после фильтра master:false.
Если фильтры не указаны, по умолчанию выбираются все узлы. Однако, если фильтры указаны, они выполняются, начиная с пустого выбранного подмножества. Это означает, что фильтры, такие как master:false, удаляющие узлы из выбранного подмножества, полезны только если они следуют за другими фильтрами. При использовании в одиночку, master:false не выбирает ни один узел.
Вот несколько примеров использования фильтров узлов с API Информация об узлах.
# If no filters are given, the default is to select all nodes GET /_nodes # Explicitly select all nodes GET /_nodes/_all # Select just the local node GET /_nodes/_local # Select the elected master node GET /_nodes/_master # Select nodes by name, which can include wildcards GET /_nodes/node_name_goes_here GET /_nodes/node_name_goes_* # Select nodes by address, which can include wildcards GET /_nodes/10.0.0.3,10.0.0.4 GET /_nodes/10.0.0.* # Select nodes by role GET /_nodes/_all,master:false GET /_nodes/data:true,ingest:true GET /_nodes/coordinating_only:true GET /_nodes/master:true,voting_only:false # Select nodes by custom attribute (e.g. with something like `node.attr.rack: 2` in the configuration file) GET /_nodes/rack:2 GET /_nodes/ra*:2 GET /_nodes/ra*:2*
© 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/7.17/cluster.html