Kibana startup fails with License information and later with Unable to retrieve version information

10,843

Solution 1

Per @leandrojmp comment, the issue was indeed with the public IP in elasticsearch.hosts. Once I replaced it to my private ip, it works

Solution 2

also:

When installing the Elastic Stack, you must use the same version across the entire stack. For example, if you are using Elasticsearch 7.9.3, you install Beats 7.9.3, APM Server 7.9.3, Elasticsearch Hadoop 7.9.3, Kibana 7.9.3, and Logstash 7.9.3.

Share:
10,843
rel.foo.fighters
Author by

rel.foo.fighters

Updated on June 04, 2022

Comments

  • rel.foo.fighters
    rel.foo.fighters over 1 year

    I'm tried to follow this guideline for installing ELK on Centos 8 (on top of one AWS cluster).

    After installing elastic and kibana, the kibana startup failed with:

    *"message":"License information could not be obtained from Elasticsearch
    

    I googled it, and realized I should use OSS version (latest is 7.10.2) so make sure to install only OSS version. you can use this guideline

    after that, I got new error from kibana.log

    -08T07:19:32Z","tags":["error","savedobjects-service"],"pid":62767,"message":"Unable to retrieve version information from Elasticsearch nodes."}
    

    I tried to google it, but no solution worked for me.

    my kibana.yaml:

    server.port: 5601
    server.host: "0.0.0.0"
    elasticsearch.hosts: "[my public AWS instance ip:9200]"
    

    my elasticsearch.yaml:

    path.data: /var/lib/elasticsearch
    path.logs: /var/log/elasticsearch
    network.host: 0.0.0.0
    http.port: 9200
    discovery.seed_hosts: "[my private AWS instance ip]"
    cluster.initial_master_nodes: "[my private AWS instance ip]"
    

    Update:

    If I'm changing this line in kibana.yaml file to:

    elasticsearch.hosts: "http://localhost:9200"
    

    Then it works. what is the root cause? why it can't access elastic public IP but only local?

    • leandrojmp
      leandrojmp over 2 years
      This error means that your elasticsearch is not running or Kibana can't connect to it. What are your elasticsearch.yml and kibana.yml file? Update your question with those files.
    • rel.foo.fighters
      rel.foo.fighters over 2 years
      I added the yamls data. elasticsearch is running as I'm able to get response from curl
    • leandrojmp
      leandrojmp over 2 years
      Are Kibana and Elasticsearch in the same ec2 instance or in different instances? If they are in the same instance, use the private IP and see if it works, if they are in different instances, can you curl elasticsearch from the kibana instance using the public IP? Since your Elasticsearch is running, it seems to be a network issue. Also, Kibana and Elasticsearch needs to be on the same version.