聲明:本文僅作為學習交流,請勿用於商業用途,否則后果自負。如需使用黃金或白金版X-Pack請購買正版。
1、 安裝x-pack
具體安裝過程參照:http://www.cnblogs.com/shaosks/p/7466950.html
2、破解
1、下載x-pack-5.5.2.zip(本人用的版本是5.5.2), 解壓並找到x-pack-5.5.2.jar, 使用Luyten(下載地址:https://github.com/deathmarine/Luyten/releases/tag/v0.5.0)進行反編譯。
2、找到LicenseVerifier.class,其全路徑為org.elasticsearch/license/LicenseVerifier.class,將org.elasticsearch/license/LicenseVerifier.class反編譯並保存出來。修改成如下內容並命名為LicenseVerifier.java文件。
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; } }
3、接着我們需要進行編譯,正常情況,我們可能需要對這個項目編譯,其實javac命令也可以對單個文件進行編譯,只需要進入相應的類路徑就可以啦。我的ES安裝在E:\ElasticSearch\elasticsearch-5.5.2路徑,
因此把LicenseVerifier.java文件拷貝到E:\ElasticSearch\elasticsearch-5.5.2路徑下

利用javac命令進行編譯:
javac -cp "E:/ElasticSearch/elasticsearch-5.5.2/lib/elasticsearch-5.5.2.jar;E:/ElasticSearch/elasticsearch-5.5.2/lib/lucene-core-6.6.0.jar;E:/ElasticSearch/elasticsearch-5.5.2/plugins/x-pack/x-pack-5.5.2.jar" LicenseVerifier.java
生成LicenseVerifier.class文件。

4、把編譯后得到的LicenseVerifier.class替換原有的那個。利用好壓進行替換。再把x-pack-5.5.2.jar上傳上去進行替換。
用壓縮文件管理器打開x-pack-5.5.2.jar

把文件LicenseVerifier.class進行替換。用luyten-0.5.3.exe打開x-pack-5.5.2.jar進行查看

已經成功替換。
5、把新生成的x-pack-5.5.2.jar文件替換elasticsearch安裝目錄中的plugins –> x-pack。安裝了幾個elasticsearch,就要替換幾個。
如果你還沒有安裝x-pack,你可以把x-pack-5.5.2.zip中的elasticsearch中x-pack-5.5.2.jar進行替換。然后利用替換后的x-pack-5.5.2.zip進行x-pack插件的安裝。
6、申請一個免費license。下載:https://license.elastic.co/registration/download/38ff1b67-b0a0-461f-8bb0-4f7b3525beea

下載后修改,例如:
{"license":{"uid":"helloworld","type":"platinum","issue_date_in_millis":1486598400000,"expiry_date_in_millis":2524579200999,
"max_nodes":1000,"issued_to":"helloworld","issuer":"Web Form","signature":"helloworld","start_date_in_millis":1486598400000}}
其中主要的就是:
①"type":"platinum"
②"expiry_date_in_millis":2524579200999
這里,platinum表示白金版,可以使用所有功能。其他的如expiry_date_in_millis、max_nodes等根據自己需要修改即可。expiry_date_in_millis就是你要截止的日期,我配置的是到2050年。
最后修改如下:
{"license":{"uid":"77a781e8-edc9-48dc-8e11-52bbe091ef49","type":"platinum","issue_date_in_millis":1507852800000,"expiry_date_in_millis":2524579200999,"max_nodes":1000,"issued_to":"77a781e8-edc9-48dc-8e11-52bbe091ef49","issuer":"Web Form","signature":"AAAAAwAAAA23dnRYfo4QNXdLuTS7AAABmC9ZN0hjZDBGYnVyRXpCOW5Bb3FjZDAxOWpSbTVoMVZwUzRxVk1PSmkxaktJRVl5MUYvUWh3bHZVUTllbXNPbzBUemtnbWpBbmlWRmRZb25KNFlBR2x0TXc2K2p1Y1VtMG1UQU9TRGZVSGRwaEJGUjE3bXd3LzRqZ05iLzRteWFNekdxRGpIYlFwYkJiNUs0U1hTVlJKNVlXekMrSlVUdFIvV0FNeWdOYnlESDc3MWhlY3hSQmdKSjJ2ZTcvYlBFOHhPQlV3ZHdDQ0tHcG5uOElCaDJ4K1hob29xSG85N0kvTWV3THhlQk9NL01VMFRjNDZpZEVXeUtUMXIyMlIveFpJUkk2WUdveEZaME9XWitGUi9WNTZVQW1FMG1DenhZU0ZmeXlZakVEMjZFT2NvOWxpZGlqVmlHNC8rWVVUYzMwRGVySHpIdURzKzFiRDl4TmM1TUp2VTBOUlJZUlAyV0ZVL2kvVk10L0NsbXNFYVZwT3NSU082dFNNa2prQ0ZsclZ4NTltbU1CVE5lR09Bck93V2J1Y3c9PQAAAQByzEz6wTgS/fqcYehGn7cz2eL1irK1rd3ozEQdH7O1AxU2sbwdw5DXPZAtz51hXuBdW5xba75ZLv1VybO70IqReUQzO1Lz/cEhKokE90bMokgoXDKa6OHr79vuPI/OSdg8C3PzknD0eD+EUd623PJVShdykotni8lPn+0+kn8Z0kp482iZTgb42C06Ki3Pkd/8A8IF/DBma3qa9nrWWN2OdpVKVNVqifG2oDWC3dFTMT15U5hKZahBotaS8S9TayJV8qEI+g7H7iCCgP3CIYT7eOywvsBRGIcTjFQlEThL4ga5Uad1ti8Q1/6seC+gyotIQzKjRp8mCOO/0+2KbUBf","start_date_in_millis":1507852800000}}
7、更新 license文件
首先啟動elastic服務,然后執行如下命令:curl -XPUT -u elastic:changeme http://17.13.17.127:9200/_xpack/license -d @license.json,把文件上傳到服務器
這里可以查看官網:https://www.elastic.co/guide/en/x-pack/5.5/installing-license.html

8、雙擊kibana.bat,在瀏覽器中打開kibana,查看,license已經成功改變

9、_pack API
info API提供有關已安裝的X-Pack的一般信息。
GET /_xpack

