Important Elasticsearch configuration 导入Elasticsearch 配置:
当Elasticsearch 需要非常少的配置,有大量的设置需要被手动配置,应该在投产前被配置
1.path.data and path.logs
2.cluster.name
3.node.name
4.bootstrap.memory_lock
5.network.host
6.discovery.zen.ping.unicast.hosts
7.discovery.zen.minimum_master_nodes
path.data and path.logs
如果你是使用.zip或者.tar.gz ,data和logs目录是 $ES_HOME的子目录。
如果那些重要的目录是留在默认的位置,会有一个很高的风险被删除 当升级Elasticsearch到一个新的版本。
在生成使用中,你几乎肯定要改变数据或者log目录的位置
path:
logs: /var/log/elasticsearch
data: /var/data/elasticsearch
cluster.name 集群名字:
一个节点可以加入到一个集群当它分享它的cluster.name,使用所有其他的nodes 在cluster.
默认名字是elasticsearch,但是你应该改变它为一个合适的名字描述了集群的目的。
cluster.name: logging-prod
确保你不要使用相同的名字在不同的环境,否则你会导致节点加入到cluster.
node.name 节点名字:
默认情况下, Elasticsearch 会随机生成uuid作为节点id.
注意node id 是坚持的不改变的当一个节点重启因此 默认节点名字也不会被改变
它是值得配置一个更加有意义的名字, 也有利于保留在重启节点后
bootstrap.memory_lock
它是及其重要的对于你的节点状态, 你的JVM是没有曾经交换到磁盘。
一种方式达到是设置bootstrap.memory_lock 为true
为了这个设置生效,其他系统设置需要被首选配置。
查看启用 bootstrap.memory_lock 用于更多的信息关于如何正确的设置memory locking 。
network.host
默认,Elasticsearch 绑定回环地址只有在127.0.0.1, 这个足以在一个server上运行一个单独的开发节点。
为了和其他服务器上的节点通讯和形成一个clutser, 你的地址需要绑定在一个非回环地址。
虽然有很多网络设置,通常你需要做的是配置一个 network.host:
network.host: 192.168.1.10
network.host 设置也了解一些特定的值比如_local_, _site_, _global_ and modifiers like :ip4 and :ip6,
discovery.zen.ping.unicast.hosts
立即可以用的,不需要任何的网络设置,Elasticsearch 会绑定到可用的回环地址,会扫描端口从9300到9305 尝试连接到其他运行的节点。
这个提供一个自动集群体验 不需要任何其他配置。
当那一刻来临形成一个cluster ,你需要提供一个其他节点的种子清单:
discovery.zen.ping.unicast.hosts:
- 192.168.1.10:9300
- 192.168.1.11
- seeds.mydomain.com
端口是默认的 transport.profiles.
默认的端口和fallback to transport.tcp.port 如果没有被指定。