网络设置
OpenSearch 使用 HTTP 设置通过 REST API 配置与外部客户端的通信,并使用传输设置配置 OpenSearch 内部节点间的通信。
要了解有关静态和动态设置的更多信息,请参阅配置 OpenSearch。
OpenSearch 支持以下常用网络设置
-
network.host
(静态,列表):将 OpenSearch 节点绑定到某个地址。使用0.0.0.0
以包含所有可用的网络接口,或指定分配给特定接口的 IP 地址。network.host
设置是network.bind_host
和network.publish_host
在值相同时的组合。作为network.host
的替代方案,可以根据需要单独配置network.bind_host
和network.publish_host
。请参阅高级网络设置。 -
http.port
(静态,单值或范围):将 OpenSearch 节点绑定到用于 HTTP 通信的自定义端口或端口范围。您可以指定一个地址或一个地址范围。默认值为9200-9300
。 -
transport.port
(静态,单值或范围):将 OpenSearch 节点绑定到用于节点间通信的自定义端口。您可以指定一个地址或一个地址范围。默认值为9300-9400
。
高级网络设置
OpenSearch 支持以下高级网络设置
-
network.bind_host
(静态,列表):将 OpenSearch 节点绑定到一个或多个地址以接收传入连接。默认值为network.host
中的值。 -
network.publish_host
(静态,列表):指定 OpenSearch 节点发布给集群中其他节点的地址,以便它们可以连接到该节点。
高级 HTTP 设置
OpenSearch 支持以下用于 HTTP 通信的高级网络设置
-
http.host
(静态,列表):设置 OpenSearch 节点用于 HTTP 通信的地址。http.host
设置是http.bind_host
和http.publish_host
在值相同时的组合。作为http.host
的替代方案,可以根据需要单独配置http.bind_host
和http.publish_host
。 -
http.bind_host
(静态,列表):指定 OpenSearch 节点绑定到一个或多个地址以监听传入的 HTTP 连接。 -
http.publish_host
(静态,列表):指定 OpenSearch 节点发布给其他节点的地址,用于 HTTP 通信。 -
http.compression
(静态,布尔值):在适用时启用对Accept-Encoding
压缩的支持。当启用HTTPS
时,默认值为false
,否则默认值为true
。禁用 HTTPS 的压缩有助于缓解潜在的安全风险,例如BREACH
攻击。要启用 HTTPS 流量的压缩,请显式将http.compression
设置为true
。 -
http.max_header_size
:(静态,字符串)请求中允许的所有 HTTP 头部的最大总大小。默认值为16KB
。
高级传输设置
OpenSearch 支持以下用于传输通信的高级网络设置
-
transport.host
(静态,列表):设置 OpenSearch 节点用于传输通信的地址。transport.host
设置是transport.bind_host
和transport.publish_host
在值相同时的组合。作为transport.host
的替代方案,可以根据需要单独配置transport.bind_host
和transport.publish_host
。 -
transport.bind_host
(静态,列表):指定 OpenSearch 节点绑定到一个或多个地址以监听传入的传输连接。 -
transport.publish_host
(静态,列表):指定 OpenSearch 节点发布给其他节点的地址,用于传输通信。
选择传输方式
默认的 OpenSearch 传输由 transport-netty4
模块提供,并使用 Netty 4 引擎处理集群内部节点间的 TCP 通信和与客户端的外部 HTTP 通信。此通信是完全异步和非阻塞的。下表列出了其他可互换使用的传输插件。
插件 | 描述 |
---|---|
transport-reactor-netty4 | 基于 Project Reactor 和 Netty 4 的 OpenSearch HTTP 传输(实验性) 安装: ./bin/opensearch-plugin install transport-reactor-netty4 配置(使用 opensearch.yml )http.type: reactor-netty4 http.type: reactor-netty4-secure |