elasticsearch配置文件详解
发布网友
发布时间:2024-10-02 08:24
我来回答
共1个回答
热心网友
时间:2024-11-05 06:21
ES在启动前需要对配置文件进行一定的配置,深入了解各个配置项可以帮助我们进行更好的配置。
主配置文件elasticsearch.yml
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的性能。所以默认启动时进行相应大小内存的锁定,若无法锁定则会启动失败。
非生产环境可能机器内存本身就很小,能够供给ES使用的就更小,若该参数配置为true的话很可能导致无法锁定内存以致ES无法成功启动,此时可以修改为false。
network.host
配置能够访问当前节点的主机,默认值为当前节点所在机器的本机回环地址127.0.0.1和[::1],这就导致默认情况下只能通过当前节点所在主机访问当前节点。可以配置为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配置项移除,重启集群或加入新节点到已存在的集群时切记不要设置该配置项。