1 Elasticsearch安装x-pack
直接通过elasticsearch的插件安装。
# cd /data/elasticsearch-5.6.11/
# ./bin/elasticsearch-plugin install x-pack
如果想要开启安全登录要在配置文件添加(默认管理员账号密码为elastic/changeme)
xpack.security.enabled: true
2 破解elasticsearch插件x-pack
2.1 在任意目录创建LicenseVerifier.java文件
# vi 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;
}
}
2.2 执行此命令编译得到LicenseVerifier.class文件
# javac -cp "/data/elasticsearch-5.6.11/lib/elasticsearch-5.6.11.jar:/data/elasticsearch-5.6.11/lib/lucene-core-6.6.1.jar:/data/elasticsearch-5.6.11/plugins/x-pack/x-pack-5.6.11.jar" LicenseVerifier.java
命令解释:根据自己的安装目录填写相关文件路径。
2.3 到elasticsearch的x-apck目录里,
创建test目录用来做临时操作。
# cd /data/elasticsearch-5.6.11/plugins/x-pack/
# mkdir test
# cp x-pack-5.6.11.jar /tmp #备份防止修改错误
# mv x-pack-5.6.11.jar test
2.4 解压jar包
# cd test/
# jar -xvf x-pack-5.6.11.jar
2.5 替换原有文件并重新打包。
# rm -rf x-pack-5.6.11.jar
# mv /root/LicenseVerifier.class org/elasticsearch/license/
# jar -cvf x-pack-5.6.11.jar ./*
# jar -cvf x-pack-5.6.11.jar ./*
2.6 重新启动elasticsearch
2.7 申请license
申请地址:https://register.elastic.co/xpack_register
收到邮件后下载对应的 json文件,修改如下type为 platinum表示白金版,可以使用所有功能。其他的如expiry_date_in_millis:3107746200000(按秒的时间戳)、max_nodes等根据自己需要修改即可
{"license":{"uid":"aa1e9f4f-e7ca-4df0-8362-7076c65f781a","type":"platinum","issue_date_in_millis":1540944000000,"expiry_date_in_millis":3107746200000,"max_nodes":100,"
………………………………………………
2.8 修改json文件名为license.json
2.9 导入license
# curl -XPUT -u 'elastic:changeme' 'http://10.10.4.11:9200/_xpack/license?acknowledge=true' -H "Content-Type: application/json" -d @license.json
{"acknowledged":true,"license_status":"valid"}
出现以上显示表示成功。
2.10 测试
浏览器或者curl
http://10.10.4.12:9200/_xpack/license?
3 Elasticsearch安装x-pack后连接head
3.1 修改elasticsearch配置文件
# vi /data/elasticsearch-5.6.11/config/elasticsearch.yml
http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type #一行
3.2 head地址需要添加账号密码才可以登录。
http://10.10.4.11:9100/?auth_user=elastic&auth_password=changeme
4 kibana安装x-pack
4.1 到kibana的家目录里执行
# ./bin/kibana-plugin install x-pack
4.2 修改kibana的配置文件
# vi /data/kibana-5.6.11-linux-x86_64/config/kibana.yml
elasticsearch.username: "elastic"
elasticsearch.password: "changeme"
xpack.ml.enabled: true #开启ml
xpack.security.enabled: true #开启安全
xpack.monitoring.enabled: true #开启监控
xpack.security.encryptionKey: "122333444455555666666777777788888888"
xpack.reporting.encryptionKey: "122333444455555666666777777788888888"
注意事项:如果开启安全模式,那么elasticsearch也必须开启。不然连接不上elasticsearch
4.3 重启kibana
因为要加载各各新添加的模块,所以第一次启动特别慢,所以请耐心等候。数据越多启动越慢。(elasticsearch添加安全模块,会出现登录界面)默认账号密码为elastic/changeme
登录上去,侧边多了好多选项。
4.4 Kibana报错
4.4.1 问题1
1、报错
log [08:59:02.297] [warning][security] Generating a random key for xpack.security.encryptionKey. To prevent sessions from being invalidated on restart, please set xpack.security.encryptionKey in kibana.yml
2、原因: xpack.security.encryptionKey生成随机密钥。要防止会话在重新启动时失效,请在kibana.yml中设置xpack.security.encryptionKey。但不得少于32位的设置结果
3、解决
Kibana配置文件添加
xpack.security.encryptionKey: "122333444455555666666777777788888888"
4、官方参考文档:
https://www.elastic.co/guide/en/kibana/6.x/using-kibana-with-security.html
4.4.2 问题2
1、 报错
log [09:12:59.339] [warning][reporting] Generating a random key for xpack.reporting.encryptionKey. To prevent pending reports from failing on restart, please set xpack.reporting.encryptionKey in kibana.yml
2、 解决
Kibana配置文件添加
xpack.reporting.encryptionKey: "122333444455555666666777777788888888"
3、 官方参考文档:
https://www.elastic.co/guide/en/kibana/current/reporting-settings-kb.html
网友评论