注意es操作不能使用root用戶
1.jdk
2.集群
hosts配置
集群名稱 節(jié)點名稱
threadpool,一般被配置為:cpu core * 3 / 2 + 1
ip jvm 50%
discovery.zen.ping.unicast.hosts:["elsatc1","elsatc2","elsatc3"]
gateway.recover_after_nodes: 3。這個參數(shù)可以讓es直到有足夠的node都上線之后,再開始shard recovery的過程。
還應該設置一個集群中至少要有多少個node,等待那些node的時間:gateway.expected_nodes: 10,gateway.recover_after_time: 5m
discovery.zen.minimum_master_nodes設置為2 避免腦裂
文件路徑path.logs: /var/log/elasticsearch
path.data: /var/data/elasticsearch
日志配置
禁止swapping bootstrap.memory_lock: true
/etc/security/limits.conf文件? elasticsearch - nofile 65536?
root hard memlock unlimited
虛擬內(nèi)存
需要提升mmap count的限制:sysctl -w vm.max_map_count=262144
/etc/sysctl.conf,將vm.max_map_count的值修改一下,重啟過后,用sysctl vm.max_map_count來驗證一下數(shù)值是否修改成功
設置線程的數(shù)量
可以通過ulimit -u 2048來臨時設置,也可以在/etc/security/limits.conf中設置nproc為2048來永久性設置。
root hard nproc 2048
/etc/security/limits.conf中,設置nofile為65536
root hard nofile 65536
GET _nodes/stats/process?filter_path=**.max_file_descriptors
可以用上面這行代碼檢查每個node上的file descriptor數(shù)量
root hard as unlimited
#bigdata soft nofile 65536
bigdata hard nofile 131072
#bigdata soft nproc 2048
bigdata hard nproc 4096
bigdata soft memlock unlimited
bigdata hard memlock unlimited
elasticsearch -d -Epath.conf=/etc/elasticsearch