dockerelasticsearchconfigurationkibana

Configuring Elasticsearch and Kibana to work with each other without requiring enrollment token


What I am trying to do is getting elasticsearch and kibana to work with each other. But even after numerous attempts I have not been able to do so. The endpoint on Kibana's Api keeps asking for enrollment token. I run the following code for the generation of enrollment token.

elasticsearch-create-enrollment-token -s kibana

But get the error

Unable to create an enrollment token. Elasticsearch node HTTP layer SSL configuration is not configured with a keystore, with exit code 73

I am just trying to setup elastic search with kibana so that I can get started learning these techs. I don't need any security features. And so, I have disabled them with the environment variables. But I think I am doing something wrong as it still asks for enrollment token but doesn't allow me create it either. Below I have posted my .yaml file with configuration for both elasticsearch and kibana. Can someone tell me how to do it by disabling all the security features? Also, why am I not being able to create the enrollment token? How do I create one?
Thank you.

docker configuration


Solution

  • bin/elasticsearch-create-enrollment-token

    This command is used to create enrollment tokens, which you can use to enroll new Elasticsearch nodes to an existing cluster or configure Kibana instances to communicate with an existing Elasticsearch cluster that has security features enabled. EnrollmentToken

    Since you don't need security features to be enabled, you can update your elastic configuration to set: xpack.security.enrollment.enabled=false

    version: '3'
        services:
          elastic:
            image: docker.elastic.co/elasticsearch/elasticsearch:8.14.1
            container_name: elastic
            environment:
              - node.name=es01
              - cluster.name=es-docker-cluster
              - discovery.type=single-node
              - bootstrap.memory_lock=true
              - "ES_JAVA_OPTS=-Xms128m -Xmx512m"
              - xpack.security.enabled=false
              - xpack.security.enrollment.enabled=false
            ulimits:
              memlock:
                soft: -1
                hard: -1
            volumes:
              - data01:/usr/share/elasticsearch/data
            ports:
              - 9200:9200
            networks:
              - elastic
          
          kibana:
            image: docker.elastic.co/kibana/kibana:8.14.1
            container_name: kib01
            ports:
              - 5601:5601
            environment:
              - ELASTICSEARCH_HOSTS=http://elastic:9200
            networks:
              - elastic
        
        volumes:
          data01:
            driver: local
        
        networks:
          elastic:
            driver: bridge