elasticsearch6.4.2線上使用配置

系統參數:

# 修改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"
}'

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章