我的版本是x-pack-6.1.1,我使用的系统是mac os
这里需要使用反编译工具luyten来进行反编译,windows和mac都有这个软件
下载地址:https://github.com/deathmarine/Luyten/releases
使用luyten打开x-pack-6.1.1.jar,找到LicenseVerifier.java,将其另存为到磁盘的一个地方,并更改为如下代码
package org.elasticsearch.license; public class LicenseVerifier { public static boolean verifyLicense(final License license, final byte[] array) { return true; } public static boolean verifyLicense(final License license) { return true; } }
如图:
#将改好代码的文件上传到linux服务器,随意那个目录,接着我们需要编译这个文件
javac -cp "/data/elk/elasticsearch-6.1.1/lib/elasticsearch-6.1.1.jar:/data/elk/elasticsearch-6.1.1/lib/lucene-core-7.1.0.jar:/data/elk/elasticsearch-6.1.1/plugins/x-pack/x-pack-6.1.1.jar" LicenseVerifier.java
#将x-pack-6.1.1.jar解压并替换成我们更改过的LicenseVerifier.java
!!!这里切记一定要在linux环境下执行,切勿使用windows好压之类的解压文件,否则会出现启动不了的错误 jar -xf x-pack-6.1.1.jar jar -cvf x-pack-6.1.1.jar x-pack-6.1.1
#将x-pack-6.1.1.jar替换掉原有的x-pack-6.1.1.jar即可,替换地方为
elasticsearch/plugins/x-pack
#去官网申请一个免费的license,会发邮件给你,收到之后下载并更改文件
申请地址:https://license.elastic.co/registration
{"license":{"uid":"XXXXXXXXXXXXXXX","type":"platinum","issue_date_in_millis":1514505600000,"expiry_date_in_millis":4102329600000,"max_nodes":999,"issued_to":"ae ae (beijingitjuzi)","issuer":"Web Form","signature":"XXXXXXXXXXXXXXXXX","start_date_in_millis":1514505600000}} 这里,platinum表示白金版,可以使用所有功能。其他的如expiry_date_in_millis、max_nodes等根据自己需要修改即可。(仅需要修改type,expiry_date_in_millis,max_nodes)
#将license导入集群即可
curl -XPUT -u elastic:password 'http://$IP:9200/_xpack/license' -H "Content-Type: application/json" -d @license.json