Elasticsearch Network Settings
网络设置
Elasticsearch 缺省情况下是绑定 localhost。对于本地开发服务是足够的(如果你在相同机子上启动多个节点,它还可以形成一个集群),但是你需要配置基本的网络设置,为了能够在实际的多服务器生产集群中运行。
WARNING:注意网络配置,永远不要暴露未受保护的节点到公网上
常用的网络配置
network.host
节点将绑定到一个主机名或者 ip 地址并且会将该这个节点通知集群中的其他节点。接受 ip 地址,主机名,指定值或者包含这些值的数组
默认值:local
discovery.zen.ping.unicast.hosts
为了加入集群,一个节点至少需要知道集群中其他节点的主机名或者 ip 地址。这个设置提供初始其他节点列表,当前节点将尝试联系。接收 ip 地址或者主机名。
默认值:["127.0.0.1", "[::1]"]
http.port
HTTP 请求通信端口。接收单值或者一个范围。如果指定一个范围,该节点将会绑定范围的第一个可用顶点。
默认值:9200-9300
transport.tcp.port
节点间通信端口。接收单值或者一个范围。如果指定一个范围,该节点将会绑定范围的第一个可用顶点。
默认值:9300-9400
network.host 的特殊值
以下特殊值将可以传递给 network.host:
- [networkInterface] 网络接口的地址,例如 en0。
- local 系统中的回路地址,例如 127.0.0.1。
- site 系统中任何的本地站点地址,例如 192.168.0.1。
- global 系统中的任何全局作用域地 8.8.8.8。
IPv4 vs IPv6
默认情况下这些特殊值都可以在 IPv4 和IPv6 中使用,但是你可以使用 :ipv4,:ipv6 字符限制使用。例如,en0:ipv4 将绑定 en0 接口的 IPv4 地址。
Tip:在云上使用,更多特别设定可用,当你在 AWS 云或者 Google Compute Engine 云上使用时
高级网络配置
在常用的网络配置中解释的 network.host 是快捷方式,同时设置绑定地址和发布地址。在高级使用情况下,例如在一个代理服务器中运行,你可能需要设置如下不同的值:
network.bind_host
这将指定用于监听请求的网络接口。一个节点可以绑定多个接口,例如有两块网卡,一个本地站点地址,一个本地地址。
默认值:network.host
network.publish_host
发布地址,一个单一地址,用于通知集群中的其他节点,以便其他的节点能够和它通信。当前,一个 elasticsearch 节点可能被绑定到多个地址,但是仅仅有一个发布地址。如果没有指定,这个默认值将为 network.host 配置中的最好地址,以 IPv4/Ipv6 堆栈性能,之后以稳定性排序。
上述两个设置可以向 network.host 那样被设置--他们都接受 IP 地址,主机名和特定值
高级 TCP 设置
任何使用 TCP(像 HTTP 和 Transport 模块)共享如下设置:
- network.tcp.no_delay 开启或关闭 TCP 无延迟设置。默认值为 true。
- network.tcp.keep_alive 开启或关闭 TCP 长连接,默认值为 true。
- network.tcp.reuse_address 一个地址是否可以被重用。在非 windows 机子上默认值为 true。
- network.tcp.send_buffer_size TCP 发送缓冲区大小(以size unit指定)。没有默认值。
- network.tcp.receive_buffer_size TCP 接收缓冲区大小(以size unit指定)。没有默认值。
Transport 和 HTTP 协议
一个Elasticsearch节点暴露两个网络协议配置继承上面的设置,但可独立地进一步配置两个网络协议:
TCP Transport
用于集群中节点之间的通信。
HTTP
暴露基于 HTTP JSON 请求接口,被所有客户端使用,比局限于 Java 客户端。
翻译自:https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-network.html
欢迎转载,但请注明本文链接,谢谢。
2016.8.8 17:18
Elasticsearch Network Settings的更多相关文章
- RH133读书笔记(8)-Lab 8 Manage Network Settings
Lab 8 Manage Network Settings Goal: To build skills needed to manually configure networking Estimate ...
- Elasticsearch之settings和mappings的意义
Elasticsearch之settings和mappings(图文详解) Elasticsearch之settings和mappings的意义 简单的说,就是 settings是修改分片和副本数 ...
- Elasticsearch之settings和mappings(图文详解)
Elasticsearch之settings和mappings的意义 简单的说,就是 settings是修改分片和副本数的. mappings是修改字段和类型的. 记住,可以用url方式来操作它们,也 ...
- 修改Elasticsearch的settings
解决:Limit of total fields [1000] in index [nginx-access-log] has been exceeded" 的问题 PUT http://1 ...
- Elasticsearch 更新索引settings
1.更新索引设置:将副本减至0,修改索引分析器为ik_max_word和检索分词器为ik_smart 2.需要先将索引关闭,然后再PUT setings POST user/_close PUT us ...
- Elasticsearch之重要核心概念(cluster(集群)、shards(分配)、replicas(索引副本)、recovery(据恢复或叫数据重新分布)、gateway(es索引的持久化存储方式)、discovery.zen(es的自动发现节点机制机制)、Transport(内部节点或集群与客户端的交互方式)、settings(修改索引库默认配置)和mappings)
Elasticsearch之重要核心概念如下: 1.cluster 代表一个集群,集群中有多个节点,其中有一个为主节点,这个主节点是可以通过选举产生的,主从节点是对于集群内部来说的.es的一个概念就是 ...
- elasticsearch单机多实例环境部署
elasticsearch的功能,主要用在搜索领域,这里,我来研究这个,也是项目需要,为公司开发了一款CMS系统,网站上的搜索栏功能,我打算采用elasticsearch来实现. elasticsea ...
- elasticsearch文档-modules
elasticsearch文档-modules modules 模块 cluster 原文 基本概念 cluster: 集群,一个集群通常由很多节点(node)组成 node: 节点,比如集群中的每台 ...
- 分布式搜索ElasticSearch构建集群与简单搜索实例应用
分布式搜索ElasticSearch构建集群与简单搜索实例应用 关于ElasticSearch不介绍了,直接说应用. 分布式ElasticSearch集群构建的方法. 1.通过在程序中创建一个嵌入es ...
随机推荐
- eclipse 高亮代码
本文整合自网络上的两种靠谱的使eclipse代码高亮的方式. 其实你可以在Window->proferences->java->editor->syndex coloring- ...
- 【图像处理】【SEED-VPM】1.注意点
1. 新装系统要启动NFX 每次虚拟机复位要执行以下命令 /usr/sbin/exportfs -av /sbin/service nfs restart —————————————————————— ...
- 微信的redirect_uri参数错误解决办法
近期,我们在调试独立的微信商城的时候,遇到了一些问题,比如:微信的redirect_uri参数错误,这是一个很普遍存在的问题,当然解决起来并不难,首先,我们得去找到发生这一事件的原因. 可能1:授权目 ...
- 《Pro Express.js》学习笔记——Express框架常用设置项
Express 设置 系统设置 1. 无须再定义,大部分有默认值,可不设置 2. 常用设置 env view cache view engine views trust pro ...
- HDU 4067 hdoj 4067 Random Maze 最小费用流
给出n个点,m条边,入口s和出口t,对于每条边有两个值a,b,如果保留这条边需要花费:否则,移除这条边需要花费b. 题目要求用最小费用构造一个有向图满足以下条件: 1.只有一个入口和出口 2.所有路都 ...
- oracle_空值判断
Oracle空值测试 比较项目 is null is not null nvl 说明 NULL true false true null true false true 'NULL' fals ...
- zookeeper+dubbo-admin开发dubbo应用
前面的章节中我们已经安装好了zookeeper,tomcat了.今天我们来实现一个完整的从dubbo消息产生到消费的完整流程. 1.dubbo api 2.dubbo consumer 消费者 3.d ...
- jQuery原生框架-----------------属性操作
// 添加一个处理兼容获取样式的静态方法jQuery.getStyle = function( dom, styleName ) { // dom不是dom,styleName不是字符串,直接打走 i ...
- Schedule 学习
现在做的项目都有用到Schedule,现在用一点时间来总结. 一.首先要到Nuget中下载Quartz.net. 二.下载下来了,你需要对它进行配置,使它能给你正常的使用. 三.在Global.asa ...
- 通过工厂方式配置bean
src\dayday\CarFactoryBean.java package dayday;import org.springframework.beans.factory.FactoryBean;/ ...