操做系统:win7
虚拟机:centos7
工具:CRThtml
4月份的时候,我在虚拟机里安装了两个elasticsearch
和kibana
,而且都安装了x-pack
。那个时候,下面两个链接都是能够访问的:
查看集群信息:
http://192.168.116.19:9200/_cluster/health?pretty=truejava
利用kibana
图形化界面查看集群:node
http://192.168.116.19:5601/json
如今发现都访问不了,查了下日志才发现,个人license
过时啦!
这时我才想起来x-pack
好像是收费的。centos
无奈,只好破解啦服务器
个人版本是x-pack-5.2.2,去官网下载x-pack-5.2.2.zip包。
进行解压,在elasticsearch目录中找到x-pack-5.2.2.jar。
再把x-pack-5.2.2.jar进行解压。找到LicenseVerifier.class文件。
(全路径:org.elasticsearch/license/LicenseVerifier.class)curl
这里咱们须要用反编译软件查看。jd-gui反编译出来的不许,咱们使用Luyten来进行反编译。elasticsearch
①咱们须要先把内容复制到一个文件(本身建立LicenseVerifier.java)中。
②将其改成以下代码,(下面的代码是为了方便咱们替换license.json文件,因此所有返回true):ide
package org.elasticsearch.license; public class LicenseVerifier { public static boolean verifyLicense(final License license, final byte[] encryptedPublicKeyData) { return true; } public static boolean verifyLicense(final License license) { return true; } }
③咱们把其上传了Linux服务器中,随便哪一个目录。
我是在/usr/programe_files/LicenseVerifier.java。svn
④接着咱们须要进行编译,正常状况,咱们可能须要对这个项目编译,其实javac命令也能够对单个文件进行编译,只须要进入相应的类路径就能够啦。
javac -cp "/usr/programe_files/elasticsearch-5.2.2/lib/elasticsearch-5.2.2.jar:/usr/programe_files/elasticsearch-5.2.2/lib/lucene-core-6.4.1.jar:/usr/programe_files/elasticsearch-5.2.2/plugins/x-pack/x-pack-5.2.2.jar" LicenseVerifier.java
这里说明下:
个人elasticsearch安装目录在/usr/programe_files/elasticsearch-5.2.2。
⑤把编译后获得的LicenseVerifier.class替换原有的那个。个人作法是,把其下载到window系统中,利用好压进行替换。再把x-pack-5.2.2.jar上传上去进行替换。
替换的地方:elasticsearch安装目录中的plugins –> x-pack。
你安装了几个elasticsearch,就要替换几个。
若是你尚未安装x-pack,你能够把x-pack-5.2.2.zip中的elasticsearch中x-pack-5.2.2.jar进行替换。而后利用替换后的x-pack-5.2.2.zip进行x-pack插件的安装。
⑥去官网申请免费license
,会发邮件给你进行下载。
将获得的文件进行以下修改:
{"license":{"uid":"ba9ae270-28ee-4051-810f-09469dfd4aa4","type":"platinum","issue_date_in_millis":1498694400000,"expiry_date_in_millis":2524579200999,"max_nodes":100,"issued_to":"yu tao (shanghai)","issuer":"Web Form","signature":"AAAAAwAAAA0d3SXUL/5bRSxB/OU4AAABmC9ZN0hjZDBGYnVyRXpCOW5Bb3FjZDAxOWpSbTVoMVZwUzRxVk1PSmkxaktJRVl5MUYvUWh3bHZVUTllbXNPbzBUemtnbWpBbmlWRmRZb25KNFlBR2x0TXc2K2p1Y1VtMG1UQU9TRGZVSGRwaEJGUjE3bXd3LzRqZ05iLzRteWFNekdxRGpIYlFwYkJiNUs0U1hTVlJKNVlXekMrSlVUdFIvV0FNeWdOYnlESDc3MWhlY3hSQmdKSjJ2ZTcvYlBFOHhPQlV3ZHdDQ0tHcG5uOElCaDJ4K1hob29xSG85N0kvTWV3THhlQk9NL01VMFRjNDZpZEVXeUtUMXIyMlIveFpJUkk2WUdveEZaME9XWitGUi9WNTZVQW1FMG1DenhZU0ZmeXlZakVEMjZFT2NvOWxpZGlqVmlHNC8rWVVUYzMwRGVySHpIdURzKzFiRDl4TmM1TUp2VTBOUlJZUlAyV0ZVL2kvVk10L0NsbXNFYVZwT3NSU082dFNNa2prQ0ZsclZ4NTltbU1CVE5lR09Bck93V2J1Y3c9PQAAAQCBFriH7K2dVFXmsQLHDvpY0Ppda0FHGTDSjAmnCcplQWaNKHtX+DR6znV+vOiokhQ8s/Yz5PmI5GFhsqkLEWXl975x1/8GHaDgb7aMv7UzciFw2duWsrH8mKTGGr2wHUKMVW7pUx2Kcr5WkH0G3ax3gynsvnYTApqWiyWdkdPX/jR/T1UhfjEqpCKCQryj+aNLxy2GP+4wF/wH4NvmDF0aWALFCKDAWhuDMCNmm+oKrLrgcIXyQERk7JBf5rZG5Xm7ViiyQ8aFf8X4CN7hA8xxrPmT57jtTrX9d4Q3Kf4jEBVeUnk/qa1Doj0/Ezn2G0vVE2oRQOXmUp9nwo0JTAHj","start_date_in_millis":1498694400000}}
其中主要的就是:
①"type":"platinum" ②"expiry_date_in_millis":2524579200999
原本我想把type改成enterprise的,结果它不认。platinum是白金版,权限也很高。
expiry_date_in_millis就是你要截止的日期,我配置的是到2050年。
把文件重命名为:license.json
,接着上次到服务器,放在本身喜欢的目录中,接着在该目录中执行以下命令:
[root@localhost Downloads]#curl -XPUT -u elastic:changeme 'http://192.168.100.50:9200/_xpack/license' -d @license.json 或者 [root@localhost Downloads]#curl -XPUT -u elastic:changeme 'http://192.168.100.50:9200/_xpack/license?acknowledge=true' -d @license.json
这里能够查看官网:https://www.elastic.co/guide/en/x-pack/5.2/installing-license.html
以后再把elasticsearch重启就OK了。
我遇到了问题,启动kibana时,会使得原本已启动的elasticsearch给关闭啦!并且把空指针异常。真是吐血。折腾到如今也没有搞定。
不过我实践到,把kibana中的插件x-pack删除掉,kibana仍是能够正常启动。可是安装上x-pack就会出错。
参考连接:
http://www.cnblogs.com/benwu/articles/6648471.html
http://blog.csdn.net/mvpboss1004/article/details/65445023
晚上一直尝试到如今,基本能够确定,上面的破解方式,对kibana来讲是不成功的。 由于我又在elasticsearch-5.4.3和kibana-5.4.三、x-pack-5.4.3安装了遍。用官方原版的就是没有问题。用本身改的认证文件license.json就是不行。