x-pack-5.6.10激活教程

简介

X-Pack 已经作为 Elastic 公司单独的产品线,前身是 Shield, Watcher, Marvel, Graph, 和 reporting,先来说说这几个是做什么的吧:
    Shield: 提供对数据的 Password-Protect,以及加密通信、基于角色的权限控制,IP 过滤,审计,可以有效地:

  • 防止未授权的访问:基于 Password-Protect,基于角色的权限控制,IP过滤;
  • 保证数据的完整性:基于消息认证和 TLS/SSL 加密;
  • 审计跟踪:可以知道谁在什么时候对数据做了什么;

Watcher: 提供对数据操作的变更的监控和报警。
    Marvel: 基于 Kibana 的插件,主要用于监控 ES 集群。可以看到集群的健康状况、实时的性能指标,分析历史集群、索引、节点的指标等。
    Graph: 用于分析数据间的关系。
    Reporting: 用于快速生成 Kibana Visualization 和 Dashboard 的报表,可以对生成的时间定制计划,并且可以由某些特定条件触发。
X-Pack 是个大合集,便于安装、不用为版本兼容性犯愁,可以灵活 disable / enable 其中的各个组件。他还多干了一件事儿,可以监控 Logstash。

安装

下载对应版本的x-pack,注意一定一定一定要对应,否则装不了,我这里是5.6.10的版本。
下载地址:https://download.csdn.net/download/qq_42986261/10607939

1、elasticsearch安装x-pack,提示[y/N]选择y下一步即可
[elasticsearch@elk-node1 ~]$ cd /usr/local/elasticsearch-5.6.10/bin/
[elasticsearch@elk-node1 bin]$ ./elasticsearch-plugin install file::///usr/local/application/x-pack-5.6.10.zip
2、kibana安装x-pack,由于要刷入缓存文件时间会久点。
[root@elk-node1 ~]# cd /usr/local/kibana-5.6.10-linux-x86_64/bin/
[root@elk-node1 bin]# ./kibana-plugin install file::///usr/local/application/x-pack-5.6.10.zip
3、logstash安装x-pack
[root@elk-node1 bin]# cd /usr/local/logstash-5.6.10/bin
[root@elk-node1 bin]# ./logstash-plugin file::///usr/local/application/x-pack-5.6.10.zip

注意:安装完x-pack插件之后logstash的xxx.conf读取日志文件需要添加密码。默认密码:elstic/changeme

破解

1、执行这边命令我们看到license有效期"expiry_date"为30天

[root@localhost bin]# curl -XGET -u elastic:changeme 'http://localhost:9200/_xpack/license'
{
"license" : {
"status" : "active",
"uid" : "45c0eea9-b813-4895-86f5-e7bd824a8e36",
"type" : "trial",
"issue_date" : "2018-08-10T09:42:45.745Z",
"issue_date_in_millis" : 1533894165745,
"expiry_date" : "2018-09-09T09:42:45.745Z",
"expiry_date_in_millis" : 1536486165745,
"max_nodes" : 1000,
"issued_to" : "elasticsearch",
"issuer" : "elasticsearch",
"start_date_in_millis" : -1
}
}

2、任意目录下创建LicenseVerifier.java 文件

[root@elk-node1 local]# cat LicenseVerifier.java
package org.elasticsearch.license;
import java.nio.*;
import java.util.*;
import java.security.*;
import org.elasticsearch.common.xcontent.*;
import org.apache.lucene.util.*;
import org.elasticsearch.common.io.*;
import java.io.*;
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、编译class文件

$ javac -cp "/usr/local/elasticsearch-5.6.10/lib/elasticsearch-5.6.10.jar:/usr/local/elasticsearch-5.6.10/lib/lucene-core-6.6.1.jar:/usr/local/elasticsearch-5.6.10/plugins/x-pack/x-pack-5.6.10.jar"  LicenseVerifier.java
$ ls License*
LicenseVerifier.class LicenseVerifier.java
# 进入x-pack目录
$ cd /usr/local/elasticsearch-5.6.10/plugins/x-pack
$ mkdir test
$ mv x-pack-5.6.10.jar test/
# 备份文件
$ cp x-pack-5.6.10.jar /tmp
# 解压文件
$ jar xvf x-pack-5.6.10.jar
# 替换 class
$ cp /usr/local/LicenseVerifier.class org/elasticsearch/license
# 删除旧的x-pack-5.6.10.jar
$ rm -fr x-pack-5.6.10.jar
# 打包
$ jar cvf x-pack-5.6.10.jar .
# 打包好的文件放回x-pack目录下
$ cp x-pack-5.6.10.jar /usr/local/elasticsearch-5.6.0/plugins/x-pack/

4、申请license
申请地址 https://license.elastic.co/registration,申请完成后很快会发送到邮箱,而后修改license文件。
它分有不同的版本,版本有不同的权限,如下:

  1. open source开源版本
  2. basic基础版本
  3. gold是黄金版
  4. PLATINUM铂金版

修改license邮箱中有个链接,点击下载文件。
主要修改:type改为platinum表示可以使用所有功能 ; expiry_date_in_millis表示使用期限,可以根据转换的时间戳填入注意后面的999也加上。
5、重命名为license.json放在自己喜欢的目录下,到该目录下执行更新
[root@localhost local]# curl -XPUT -u elastic:changeme 'http://192.168.1.105:9200/_xpack/license' -d @license.json
{"acknowledged":true,"license_status":"valid"}You have new mail in /var/spool/mail/root
6、重启elasticsearch我们看到license有效期已经为50年了。

[root@localhost local]# curl -XGET -u elastic:changeme 'http://localhost:9200/_xpack/license'
{
"license" : {
"status" : "active",
"uid" : "0788f97d-621c-4317-9ceb-97fe85c69aad",
"type" : "platinum",
"issue_date" : "2018-08-11T00:00:00.000Z",
"issue_date_in_millis" : 1533945600000,
"expiry_date" : "2068-08-11T14:37:59.999Z",
"expiry_date_in_millis" : 3111921479999,
"max_nodes" : 100,
"issued_to" : "he jianlai (alibaba)",
"issuer" : "Web Form",
"start_date_in_millis" : 1533945600000
}
}

x-pack功能开关

Setting                                        Description
xpack.security.enabled               设置为 false 可以关闭 X-Pack security 功能。需要在 elasticsearch.yml 和 kibana.yml 同时配置。
xpack.monitoring.enabled          设置为 false 可以关闭 X-Pack monitoring 功能。 需要在elasticsearch.yml 和 kibana.yml 同时配置。
xpack.graph.enabled                 设置为 false 可以关闭 X-Pack graph 功能。 需要在elasticsearch.yml 和 kibana.yml 同时配置。
xpack.watcher.enabled              设置为 false 可以关闭 Watcher 功能。 只需要在 elasticsearch.yml 配置。
xpack.reporting.enabled            设置为 false 可以关闭 reporting 功能。 只需要在 kibana.yml 配置。

登录kibana,也可以看到相关信息:

参数介绍


集群级别:
        Uptime : 集群运行时间;
    节点级别:
        Disk Available:可用磁盘;
        JVM Heap: JVM 使用情况;
    索引级别:
        Indices:索引数量,相当于数据库数;
        Documents:文档数量,相当于记录数;
        Disk Usage:磁盘使用情况;
        Primary Shards:分片数;
        Replica Shards:冗余分片数;

Overview
相较于集群健康视图,这里的指标更多:

Serach Rate (/s):近1小时的查询速率,QPS;
    Search Latency (ms):近1小时的查询延迟;
    Index Rate (/s):近1小时的索引速率,IPS;
    Index Latency (ms):近1小时的索引延迟;
    Shard Activity:对于 Shard 的操作历史;

Indices
索引视角的监控视图,包含以下指标:
    Document Count:文档数;
    Data:数据量;
    Index Rate:索引速率;
    Search Rate:查询速率;
    Unassigned Shards:未分配的分片数;
点击 Index Name 可以进入查看对于索引的详细基础监控:
    Index Memory (KB):索引内存使用,分为 Lucene、Term、Points;
    Index Size (MB):索引大小;
    Search Rate (/s):查询速率;
    Indexing Rate (/s):索引速率;
    Segment Count:段数;
    Document Count:文档数;
    Shard Legend:分片状态图谱,分为 Primary, Replica,Relocating,Initializing,Unassigned Primary,Unassigned Replica 多个状态。
点击 Advanced 可以看到高级监控页面,请读者自己去感受下。
Nodes
节点监控,首先看到的是概述指标:
    CPU Usage: CPU 使用率;
    Load Average:CPU 平均负载;
    JVM Memory:JVM 使用情况;
    Disk Free Space:磁盘空闲空间;
    Shards:分片数;
点击某个节点我们可以看到详细基础监控:
    JVM Heap (GB):JVM 使用情况;
    Index Memory (KB):索引占用内存;
    CPU Utilization (%):CPU 使用率;
    System Load:系统负载;
    Latency (ms):延迟,分为索引和查询;
    Segment Count:段数量;
    Shard Legend:分片状态图谱, Primary, Replica,Relocating,Initializing多个状态。

基于角色的权限控制
该功能的入口在 Management -> Users/Roles。Users 可以方便的管理用户并且对其赋予角色,角色和权限挂钩。Roles 可以方便的管理角色,对其进行赋权。Role 是 Permission 的集合,Permission 是 Privilege 的集合,下面来说说权限:
    集群权限(Cluster Privilege);
    Run As Privileges:可以使得新建角色拥有所选用户集的权限;
    索引权限(Index Privilege):
        Indices:指定在哪些索引上赋权;
        Privileges:指定赋予哪些权限;
        Granted Documents Query(可选):指定在哪些 Query 上赋权;
        Granted Fields(可选):指定在哪些 fields 上赋权;
其中,集群权限和索引权限的详细细分权限如下:
Cluster Privileges
权限类型                               权限描述
all                                          所有群集管理操作,如快照,节点关闭/重新启动,设置更新,重新路由或管理用户和角色。
monitor                                 所有集群只读操作,如集群健康状态,热线程,节点信息,节点和集群统计信息,快照/恢复状态,挂起集群任务。
manage                                构建在监视器上,并添加可更改集群中值的集群操作。这包括快照,已检查的设置和重新路由。此权限不包括管理安全性的能力。
manage_security                  所有与安全性相关的操作,如对用户和角色的CRUD操作以及缓存清除。
manage_index_templates    对索引模板的所有操作。
manage_pipeline                 对管道的所有操作。
transport_client                    传输客户端连接所需的所有权限。
Indices Privileges
权限类型                              权限描述
all                                         所有索引操作权限。
monitor                                监控(恢复,细分信息,索引统计信息和状态)所需的所有操作。
manage                               所有监视器权限和索引管理( aliases, analyze, cache clear, close, delete, exists, flush, mapping, open, force merge, refresh, settings, search shards, templates, validate
view_index_metadata         只读访问索引元数据(aliases, aliases exists, get index, exists, field mappings, mappings, search shards, type exists, validate, warmers, settings)。此权限主要供Kibana用户使用。
read                                     只读访问操作(count, explain, get, mget, get indexed scripts, more like this, multi percolate/search/termvector, percolate, scroll, clear_scroll, search, suggest, tv)。还授予对更新映射操作的访问权限。
index                                    索引和更新文档的权限。还授予对更新映射操作的访问权限。
create                                   索引文档的权限。还授予对更新映射操作的访问权限。
delete                                   删除文档的权限。
write                                     对文档执行所有写操作的权限,包括对文档进行索引,更新和删除以及执行批量操作的权限。还授予对更新映射操作的访问权限。
delete_index                        删除索引的权限。
create_index                        创建索引的权限。创建索引请求可能包含在创建后添加到索引的别名。在这种情况下,请求还要求在索引和别名名称上具有manage特权。

kibana添加roles授权相关索引。

[root@localhost ~]# curl -XPOST -u elastic 'localhost:9200/_xpack/security/role/test_user' -H "Content-Type: application/json" -d '
> {
> "indices" : [
> {
> "names" : [ "test_resource" ],
> "privileges" : [ "all" ]
> },
> {
> "names" : [ ".kibana*" ],
> "privileges" : [ "manage", "read", "index" ]
> }
> ]
> }'
Enter host password for user 'elastic':
{"role":{"created":true}}You have new mail in /var/spool/mail/root

修改用户密码语句

curl -XPUT -u elastic 'localhost:9200/_xpack/security/user/logstash_system/_password' -d '{
"password" : "123456"
}'

x-pack-5.6.10激活教程的更多相关文章

  1. zz Windows 10安装教程:硬盘安装Win10 系统步骤(适合32位和64位)

    Windows 10安装教程:硬盘安装Win10 系统步骤(适合32位和64位) Posted on 2015年01月28日 by 虾虾 22 Comments   最新的Windows 10 MSD ...

  2. PyCharm 2017 免费 破解 注册 激活 教程(附 License Server 地址)(Python 编辑器 IDE 推荐)

    许多朋友都在问如何破解 PyCharm 2017 Professional 专业版,咪博士对此是坚决反对的! 不到万不得已,请不要这样做.破解之前,请拖到文章末尾,思考几个问题,想明白你确实需要这样做 ...

  3. Adobe Photoshop CC 2015安装激活教程

    Adobe Photoshop CC 2015安装激活教程(附序列号) Adobe Photoshop CC 2015是Adobe针对旗下的创意云Creative Cloud 套装推出了2015年年度 ...

  4. 转:office 2016最新安装及激活教程(KMS)

    office 2016最新安装及激活教程(KMS)[亲测有效]!!   win7激活教程 博主的一个朋友,咳咳……你们懂得,想装office,于是我就上网找了一下激活的方法,亲测有效,而且也没有什么广 ...

  5. Adobe photoshop CC 2018安装激活教程

    2017年10月,Adobe公司发布最新版Adobe CC 2018系列软件,photoshop cc 2018更是迎来惊艳的新功能.下面来分享安装和激活教程. 不会安装请加QQ:1833920353 ...

  6. IntelliJ IDEA 2019年最新版2019.3.1 安装激活教程【最强,可用至2100、2089年】

    IntelliJ IDEA 2019年最新版 永久激活教程 本文包括最新[2019.3.1 & 1.3]激活 和[2018.3.2]激活 说明:①2019.3.②2019.1.③2018.3版 ...

  7. IntelliJ Pycharm 2019年最新版 安装激活教程【最强,可用至2089、2100年】

    本文为2019年Pycharm最新版安装永久激活教程 PyCharm 2019.3 (Professional Edition) ①IntelliJ Pycharm 2019.3安装永久破解[最强] ...

  8. IDEA 2020.2 最新激活教程,有效期到2089年!

    这段时间众多粉丝私信说需要IDEA 2020.2 最新激活教程,于是!他来了他带着最新激活教程来了. 注意: 本教程适用于 JetBrains 全系列产品 IDEA 2020.2 以下所有版本,请放心 ...

  9. Axure RP 9 Enterprise/Pro/Team for Mac/Windows安装破解版激活教程

    Axure RP 9.0 是一款功能强大的.操作方便.专业可靠的快速原型设计工具.一款能够在这里体验最简单的设计方式,这里有着全新的升级的软件界面,更加的时尚,更加的丰富,专为每一个用户提供了便捷的设 ...

随机推荐

  1. get通配符

    这篇文章是在上一篇常用正则表达式(合) https://blog.csdn.net/yeyeye200/article/details/86186889 基础上的延伸:关于通配符的使用~ 一开始get ...

  2. https及证书

    本文试图以通俗易通的方式介绍Https的工作原理,不纠结具体的术语,不考证严格的流程.我相信弄懂了原理之后,到了具体操作和实现的时候,方向就不会错,然后条条大路通罗马.阅读文本需要提前大致了解对称加密 ...

  3. PHP 使用数字作为SESSION的Key,一刷新页面session丢失,Session消失,无法存储

    PHP 使用数字作为SESSION的Key,一刷新页面session丢失,Session消失,无法存储 项目中有用到md5截取做session key值的,有些md5截取出来的部分是纯数字的,导致部分 ...

  4. 非root用户安装cuda和cudnn

    1.根据自己的系统在官网下载cuda (选择runfile(local)) https://developer.nvidia.com/cuda-downloads 2.进入下载目录,并执行 sh cu ...

  5. linux五种I/O模型

    1.基本概念 1.1同步和异步 同步和异步关注的是消息通信机制 1.1.1同步 所谓同步,就是在发出一个调用时,在没有得到结果之前,调用就不返回,一直在等,但是一旦调用返回,就能得到返回值. 1.1. ...

  6. 文件上传的三种模式-Java

    文件上传的三种方式-Java 前言:因自己负责的项目(jetty内嵌启动的SpringMvc)中需要实现文件上传,而自己对java文件上传这一块未接触过,且对 Http 协议较模糊,故这次采用渐进的方 ...

  7. Equal 路由类

    1.Route 原型 class Route { /* 获取请求路径和查询字符串 */ /* 获取模块.控制器.动作名称 */ /* 获取 URI 参数 */ }

  8. python之路(五)-文件操作

    文件操作无非两个,即:读.写 python 2.x: 文件句柄 = file('文件路径', '模式') python3.x: 文件句柄 = open('文件路径', '模式') 打开文件的模式有: ...

  9. go网络编程应用

    网络编程基础(聊天室) 服务端 package main import ( "fmt" "net" "strings" "os&q ...

  10. 网络操作系统 第九章 DHCP服务器管理与配置

    本章小结 本章介绍了DHCP服务器的基本概念,基本原理和主要功能,详细说明了Window是下DHCP服务器的安装配置和Linux下DHCP 服务器的安装配置,通过本章的学习.读者能够理解动态主机配置协 ...