ES-集群配置7.1.1
2024-04-10 02:40:45  阅读数 1001
1、优化配置主机配置
cat << EOF >>/etc/security/limits.conf
root soft nofile 65535
root hard nofile 65535
* soft nofile 65536
* hard nofile 65536
EOF
echo "vm.max_map_count=655360">>/etc/sysctl.conf
sysctl -p
2、编辑es配置(每台主机的节点名称注意修改)

es版本下载:https://repo.huaweicloud.com/elasticsearch/

#解压安装es
mkdir /data
tar -zxvf elasticsearch-7.1.1-linux-x86_64.tar.gz -C /data
mv /data/elasticsearch-7.1.1/ /data/elasticsearch
vim /data/elasticsearch/config/elasticsearch.yml

#集群名称
cluster.name: ES
#节点名称
node.name: node-1
#数据目录
path.data: /data/elasticsearch/data
#日志目录
path.logs: /data/elasticsearch/logs
#本机IP
network.host: 0.0.0.0
#端口
http.port: 9200
#节点间通讯端口
transport.tcp.port: 9300
#es7.x 之后新增的配置,候选主节点地址,在开启服务后可以被选为主节点
discovery.seed_hosts: ['192.168.5.71', '192.168.5.72', '192.168.5.73']
#指定下master,初始化es集群使用---一个节点上写就行,其他节点可以不用加这个配置
cluster.initial_master_nodes: ["node-1"]

#集群内同时启动的数据任务个数,默认是2个
cluster.routing.allocation.cluster_concurrent_rebalance: 16
#添加或删除节点及负载均衡时并发恢复的线程个数,默认4个
cluster.routing.allocation.node_concurrent_recoveries: 16
#初始化数据恢复时,并发恢复线程的个数,默认4个
cluster.routing.allocation.node_initial_primaries_recoveries: 16
#解除硬盘限制超过80%无法创建索引
cluster.routing.allocation.disk.threshold_enabled: false

#利用script更新数据
#script.inline: true
#script.indexed: true
  
#开放插件es-head访问
http.cors.enabled: true    
http.cors.allow-origin: "*"
3、创建es用户授权
useradd es
echo es:Zdb7MyETqWw |chpasswd
mkdir  -p  /data/elasticsearch/{data,logs}
chown -R  es:es /data/elasticsearch
4、启动es

es7版本需要使用jdk11以上,修改启动配置文件的java目录,使用es自带的jdk启动(没有就下载解压一个放到es目录里,注释下面的判断语句,让他直接使用es目录里的jdk--脚本很简单,大家应该能看懂!)

 vim /data/elasticsearch/bin/elasticsearch-env
  #if [ ! -z "$JAVA_HOME" ]; then
  #  JAVA="$JAVA_HOME/bin/java"
  #else
    if [ "$(uname -s)" = "Darwin" ]; then
      # OSX has a different structure
      JAVA="$ES_HOME/jdk/Contents/Home/bin/java"
    else
      JAVA="$ES_HOME/jdk/bin/java"
    fi
  #fi
-----------------------------------------
#修改下这个玩意--底部有解释
vim /data/elasticsearch/config/jvm.options
-XX:+UseConcMarkSweepGC 改为 -XX:+UseG1GC
su - es -c '/data/elasticsearch/bin/elasticsearch -d'
echo "#es-start">>/etc/rc.local
echo "su - es -c '/data/elasticsearch/bin/elasticsearch -d'">>/etc/rc.local

启动时候告警---(我没查到具体啥原理-反正是解决问题了,我更换的是java12版本,如果有知道的请告知下,感谢!)
OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.

vim /data/elasticsearch/config/jvm.options
-XX:+UseConcMarkSweepGC 改为 -XX:+UseG1GC