1、创建es用户
启动需要非root用户
useradd es
passwd es
为用户授权es文件操作权限
chown -R es /opt/es
启动步骤
#备注:需要以es用户启动es集群,不能用root有户启动
su es
#输入密码
es123456
#启动命令
cd /opt/es/elasticsearch
./bin/elasticsearch
#后台启动命令:
cd /opt/es/elasticsearch
./bin/elasticsearch -d
2、配置自动启动ES
#创建es 的系统启动服务文件,进入到 cd /etc/init.d 目录
cd /etc/init.d
# 编写启动脚本
vim elasticsearch
#!/bin/bash
#chkconfig: 345 63 37
#description: elasticsearch
#processname: elasticsearch-7.4.2
export ES_HOME=/opt/es/elasticsearch
case $1 in
start)
su elsearch<<!
cd $ES_HOME
./bin/elasticsearch -d -p pid
exit
!
echo "elasticsearch is started"
;;
stop)
pid=`cat $ES_HOME/pid`
kill -9 $pid
echo "elasticsearch is stopped"
;;
restart)
pid=`cat $ES_HOME/pid`
kill -9 $pid
echo "elasticsearch is stopped"
sleep 1
su elsearch<<!
cd $ES_HOME
./bin/elasticsearch -d -p pid
exit
!
echo "elasticsearch is started"
;;
*)
echo "start|stop|restart"
;;
esac
exit 0
修改文件权限
chmod 777 elasticsearch
添加和删除服务并设置启动方式;
chkconfig --add elasticsearch
chkconfig --del elasticsearch
关闭和启动服务;
service elasticsearch start
service elasticsearch stop
service elasticsearch restart
设置服务是否开机启动;
chkconfig elasticsearch on
chkconfig elasticsearch off
3、创建LicenseVerifier.java和XPackBuild.java
为防止版本问题,最好是将/home/elasticsearch/modules/x-pack-core/x-pack-core-7.6.1.jar 反编译后获得这两个文件然后再修改其内容
jar包中所处位置:
LicenseVerifier.java:org/elasticsearch/license/LicenseVerifier.java
XPackBuild.java:org/elasticsearch/xpack/core/XPackBuild.java
1、文件修改后内容如下:
LicenseVerifier.java:
package org.elasticsearch.license;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.nio.ByteBuffer;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
import java.security.Signature;
import java.security.SignatureException;
import java.util.