x-pack安装

es/kibana/x-pack安装

默认的 es + kibana 是没有登录界面,也没有安全校验,所以默认只有有人知道了端口就能随便的访问,数据也很容易被盗。 x-pack可以增加密码登录后台,同时任何api的请求也需要通过安全校验。

本教程的所有的版本都是: 6.3.2

本地安装

参考链接: https://www.elastic.co/guide/en/x-pack/master/java-clients.html

  • elasticsearch上安装x-pack

    常用的安装方式elasticsearch-plugin install x-pack 基本上都是安装失败,本来x-pack文件很大,同时又被墙。所以笔者支持用户去用迅雷或者其他软件来下载软件(笔者下载了18小时左右)。

    本地安装为: bin/elasticsearch-plugin install file:x-pack-6.2.3.zip

    如果有多个节点的话,每个节点都需要安装这个插件。

  • kibana上安装x-pack

    kibana也采用本地安装: bin/kibana-plugin install file:x-pack-6.2.3.zip

更改 elasticsearch 的密码

elasticsearch-6.2.3-0/bin/x-pack下,执行./setup-passwords interactive然后回车设置密码。

其他节点只要安装了x-pack插件的话,就可以直接加入了,无需再设置密码了。

kibana上设置es密码

打开 kibana.yml 设置:

elasticsearch.username: "elastic"
elasticsearch.password: "changme"

kibana设置可通过互联网访问

打开 kibana.yml 设置:


OK,现在重启kibana服务。访问界面,会进入一个登陆界面。用上面的密码和账户就能登陆。

java驱动和使用密码

  • 导入依赖

    
    
        elasticsearch-releases
        https://artifacts.elastic.co/maven
        
            true
        
        
            false
        
    
        
    
    
        org.elasticsearch
        elasticsearch
        6.2.3
    
    
    
        org.elasticsearch.client
        x-pack-transport
        6.2.3
    
    
  • 使用x-pack创建密码client

    import org.elasticsearch.xpack.client.PreBuiltXPackTransportClient;
    
    
    public Client client () {
    
        Settings settings = Settings.builder()
                .put("cluster.name", "my-application")
                .put("xpack.security.user", "elastic:changme").build();
    
        TransportClient client = null;
    
        try {
            client = new PreBuiltXPackTransportClient(settings);
    
            for (String node : list) {
                String[] split = node.split(":");
                String  ip = split[0];
                int port = Integer.valueOf(split[1]);
                client.addTransportAddress(new TransportAddress(InetAddress.getByName(ip), port));
            }
        } catch (UnknownHostException e) {
            e.printStackTrace();
        }
    
        return client;
    }
    

    上面一定要使用 PreBuiltXPackTransportClient 而不能使用PreBuiltTransportClient ,因为 PreBuiltTransportClient里的settings里不包含xpack.security.user属性,启动就会报错。

zipkin使用密码

在 zipkin下加入配置就行:

zipkin:
  storage:
    type: elasticsearch
    elasticsearch:
      hosts: http://127.0.0.1:9200
      cluster: elasticsearch
      index: zipkin
      username: elastic         # 账户
      password: changme         # 密码
      index-shards: 1
      index-replicas: 1

你可能感兴趣的:(x-pack安装)