ElasticSearch单机配置节点

本文详细介绍了如何在单机上配置ElasticSearch,包括单机单节点和多节点的配置步骤,以及如何在后台运行ES。在单机单节点配置中,设置了cluster.name、node.name、data和logs路径等参数。而在单机多节点配置中,通过调整node.max_local_storage_nodes、discovery.zen.ping.unicast.hosts等参数,确保了数据的分布式存储和跨域访问支持。最后,说明了后台运行ES的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

单机单节点配置

cluster.name: esbest
node.name: node127-9200
node.master: true
path.data: /esdata/data-9200
path.logs: /eslog/log-9200

bootstrap.memory_lock: false
bootstrap.system_call_filter: false

http.port: 9200
transport.tcp.port: 9300

network.host: 0.0.0.0
discovery.type: single-node

xpack.security.enabled: false

单机多节点配置

1. 节点1:9200es节点的配置文件内容

cluster.name: esbest
node.name: node127-9200
node.master: true
path.data: /esdata/data-9200
path.logs: /eslog/log-9200
bootstrap.memory_lock: false
network.host: 0.0.0.0 //四个0表示所有IP
http.port: 9200
transport.tcp.port: 9300
http.cors.enabled: true //# 开启跨域访问支持,默认为false
http.cors.allow-origin: “” //# 跨域访问允许的域名地址,(允许所有域名)以上使用正则
node.max_local_storage_nodes: 2 //单机上最大允许运行的es节点个数
discovery.zen.ping.unicast.hosts: [“10.10.10.168:9300”,“10.10.10.168:9301”]
action.destructive_requires_name: true
cluster.routing.allocation.same_shard.host: true //如果是多节点的话,为防止索引分片丢失,需要开启这个参数。

discovery.seed_hosts: [“10.10.10.168:9200”,“10.10.10.168:9201”]
cluster.initial_master_nodes: [“node127-9200”]

2. 节点2:9201es节点的配置文件内容

cluster.name: esbest
node.name: node127-9201
path.data: /esdata/data-9201
path.logs: /eslog/log-9201
bootstrap.memory_lock: false
network.host: 0.0.0.0
http.port: 9201
transport.tcp.port: 9301
http.cors.enabled: true
http.cors.allow-origin: “”
node.max_local_storage_nodes: 2
discovery.zen.ping.unicast.hosts: [“10.10.10.168:9300”,“10.10.10.168:9301”]
action.destructive_requires_name: true
cluster.routing.allocation.same_shard.host: true

注:9200和9201节点的配置文件,区别就是数据存放目录、日志存放目录、服务端口、集群间相互通信的端口不同,其余都一样;数据目录和日志目录都需手动创建,属主数组都是elasticsearch用户。
注:“cluster.routing.allocation.same_shard.host: true”参数的作用,es天生集群特性,用户只管往es集群里存放数据,es主节点会把数据分布到各个节点,目的是为了保证节点宕机后数据不丢失。如果一台机器上起多个es节点的话,因为es集群默认不知道这个机器上有多个es节点,所以可能会出现把本该分散放到多个机器的某些索引分片,都集中放到了这个多节点的机器上,因为es以为这几个多节点是分布在不同的机器上,假如这个多节点的机器宕机,那就可能会造成丢失数据。上面那个参数的作用就是,允许es主节点探测该物理机是不是存在多个节点,如果存在多个节点,则只给这个机器一份独立数据,也就是说es集群存储数据时,会把这些在一台机器上的多个节点当做一个节点来对待。
注:es多节点的好处,因为JVM局限性,es最大分配内存不要超过32G,否则jvm垃圾回收会严重影响性能。es节点最大给32G内存,而物理机内存很大,所以就可以启动多个节点,来提高整个es集群的性能。

后台方式运行ES

./elasticsearch -d

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值