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
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: "*"
useradd es
echo es:Zdb7MyETqWw |chpasswd
mkdir -p /data/elasticsearch/{data,logs}
chown -R es:es /data/elasticsearch
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