主配置文件 elasticsearch.yml

来自姬鸿昌的知识库
跳到导航 跳到搜索

https://www.bilibili.com/video/BV1nF411F75k/?p=12

cluster.name

当前节点所属集群名称,多个节点如果要组成同一个集群,那么集群名称一定要配置成相同。

默认值 elasticsearch,生产环境建议根据 ES 集群的使用目的修改成合适的名字。


node.name

当前节点名称,默认值当前节点部署所在机器的主机名,所以如果一台机器上要起多个 ES 节点的话,需要通过配置该属性明确指定不同的节点名称。


path.data

配置数据存储目录,比如索引数据等,默认值 $ES_HOME/data,生产环境下强烈建议部署到另外的安全目录,防止 ES 升级导致数据被误删除。


path.logs

配置日志存储目录,比如运行日志和集群健康信息等,默认值 $ES_HOME/logs,生产环境下强烈建议部署到另外的安全目录,防止 ES 升级导致数据被误删除。


bootstrap.memory_lock

配置 ES 启动时是否进行内存锁检查,默认值 true。

ES 对于内存的需求比较大,一般生产环境建议配置大内存,如果内存不足,容易导致内存交换到磁盘,严重影响 ES 的性能。

所以默认启动时进行相应大小内存的锁定,如果无法锁定则会启动失败。


network.host

配置能够访问当前节点的主机,默认值为当前节点所在机器的本机回环地址 127.0.0.1 和 [::1],这就导致默认情况下只能通过当前节点所在主机访问当前节点。

可以配置为 0.0.0.0,表示所有主机均可访问。

#ES开启远程访问
network.host: 0.0.0.0


http.port

配置当前 ES 节点对外提供服务的 http 端口,默认值 9200


discovery.seed_hosts

配置参与集群节点发现过程的主机列表,说白一点就是集群中所有节点所在的主机列表,可以是具体的 IP 地址,也可以是可解析的域名。


cluster.initial_master_nodes

配置 ES 集群初始化时参与 master 选举的节点名称列表,必须与 node.name 配置的一致。

ES 集群首次构建完成后,应该将集群中所有节点的配置文件中的 cluster.initial_master_nodes 配置项移除,重启集群或者将新节点加入某个已存在的集群时切记不要设置该配置项。


修改 JVM 配置

修改 config/jvm.option 配置文件,调整 JVM 堆内存大小

-Xms4g
-Xmx4g

配置的建议