elasticsearch6.4.2线上使用配置

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_36666651/article/details/84998267

系统参数:

# 修改linux内核内存分配策略
sysctl vm.overcommit_memory=1

# 尽可能少的使用swap 
sysctl vm.swappiness=0

# 修改tcp-backlog(socket监听队列的值)
sysctl net.core.somaxconn=1024

# 修改mmap计数
sysctl vm.max_map_count=262144

vim /etc/security/limits.conf

# 进程最大数目
* - nproc 2056474
# 打开文件的最大数目
* - nofile 655360
# 地址空间限制
* - as unlimited
# 最大文件大小
* - fsize unlimited
# 最大锁定内存地址空间
* - memlock unlimited

环境参数:

/etc/profile

export ES_NETWORK_HOST=127.0.0.1

jvm参数:

# 6.4版本在jvm.options文件配置 而不是以前的环境参数设置
# jvm.options与elasticsearch.yml在同一目录

配置文件

elasticsearch.yml

# xpack.security.enabled: true
# xpack.security.transport.ssl.enabled: true
# xpack.security.transport.ssl.verification_mode: certificate 
# xpack.security.transport.ssl.keystore.path: certs/elastic-certificates.p12 
# xpack.security.transport.ssl.truststore.path: certs/elastic-certificates.p12

# 节点区域划分
# cluster.routing.allocation.awareness.attributes: zone
# cluster.routing.allocation.awareness.force.zone.values: zone-1, zone-2, zone-3
node.attr.zone: zone-1

# 集群名称 同一个集群里的此参数要一致
cluster.name: log-platform

# 节点名称  统一集群的节点之间需要不一致
node.name: ${HOSTNAME}

### es的节点分为三类  client  master data  
### client的master和data都是false, 作用类似于nginx的请求转发
### master负责结果聚合等工作,压力较大  所以不建议节点同时为master和data
### data节点存储分片负责部分计算

# 此节点为master候选节点
node.master: true
# 此节点为data节点
node.data: true

# data存放的路径
path.data: /data/es-data1/data, /data/es-data2/data
# log存放的路径
path.logs: /data/es-data1/logs

# 此节点对外的ip  本地直接写127.0.0.1即可
network.host: ${ES_NETWORK_HOST}
# 对外暴露的http访问端口
http.port: 9200
# es内部通讯端口  单播使用
transport.tcp.port: 9300
# 单播访问的地址 域名直接改成127.0.0.1即可  或者修改下本机host将127.0.0.1映射到多个域名,我是这么做的  我的有一个client 3个master  所以配了四个地址
# 组播好像已经废弃了
discovery.zen.ping.unicast.hosts: ["es1.log.com:9300","es2.log.com:9300","es3.log.com:9300"]

# 设置master选举需要赞同的最小节点数
# 值得计算方式为 master候选节点数除2加1
# 例如 node.master值为true的节点数量为5 值即为(5/2)+1 = 3
discovery.zen.minimum_master_nodes: 2

# 一个集群中的N个节点启动后,才允许进行恢复处理
gateway.recover_after_nodes: 2
# 1.初始化数据恢复时,并发恢复线程的个数,默认为4
cluster.routing.allocation.node_initial_primaries_recoveries: 6
# 2.添加删除节点或负载均衡时并发恢复线程的个数,默认为2
cluster.routing.allocation.node_concurrent_recoveries: 4
# 设置恢复时的吞吐量(例如:100mb,默认为0无限制.如果机器还有其他业务在跑的话还是限制一下的好)
indices.recovery.max_bytes_per_sec: 0
# 探查的超时时间,默认3秒,提高一点以应对网络不好的时候,防止脑裂
discovery.zen.ping_timeout: 5s

# CORS跨域访问设置
http.cors.enabled: true
http.cors.allow-origin: "*"
# 设置请求内容的最大容量,默认100mb
http.max_content_length: 100mb

# 锁住内存空间,禁止系统发生内存交换
bootstrap.memory_lock: true

设置索引缓存参数:
缓存类型 缓存条目 过期时间

curl -XPUT 'http://localhost:9200/_all/_settings?preserve_existing=true' -d '{
  "index.cache.field.expire" : "10m",
  "index.cache.field.max_size" : "50000",
  "index.cache.field.type" : "soft",
  "index.number_of_replicas" : "1",
  "index.number_of_shards" : "5"
}'

猜你喜欢

转载自blog.csdn.net/qq_36666651/article/details/84998267