How to use docker without xpack features (aka how to make the license expiration message go away)


#1

Problem:

I run an ElasticSearch instance in a docker container. I am not using any xpack.security features (or at least, not knowingly - that may be the problem...). I keep getting License Expiration warnings:

elasticsearch_1  | # LICENSE [EXPIRED] ON [xxx 2018]. IF YOU HAVE A NEW LICENSE, PLEASE UPDATE IT.
elasticsearch_1  | # OTHERWISE, PLEASE REACH OUT TO YOUR SUPPORT CONTACT.
elasticsearch_1  | # 
elasticsearch_1  | # COMMERCIAL PLUGINS OPERATING WITH REDUCED FUNCTIONALITY
elasticsearch_1  | # - security
elasticsearch_1  | #  - Cluster health, cluster stats and indices stats operations are blocked
elasticsearch_1  | #  - All data operations (read and write) continue to work
elasticsearch_1  | # - watcher
elasticsearch_1  | #  - PUT / GET watch APIs are disabled, DELETE watch API continues to work
elasticsearch_1  | #  - Watches execute and write to the history
elasticsearch_1  | #  - The actions of the watches don't execute
elasticsearch_1  | # - monitoring
elasticsearch_1  | #  - The agent will stop collecting cluster and indices metrics
elasticsearch_1  | #  - The agent will stop automatically cleaning indices older than [xpack.monitoring.history.duration]
elasticsearch_1  | # - graph
elasticsearch_1  | #  - Graph explore APIs are disabled
elasticsearch_1  | # - ml
elasticsearch_1  | #  - Machine learning APIs are disabled
elasticsearch_1  | # - logstash
elasticsearch_1  | #  - Logstash specific APIs are disabled. You can continue to manage and poll stored configurations
elasticsearch_1  | # - deprecation
elasticsearch_1  | #  - Deprecation APIs are disabled
elasticsearch_1  | # - upgrade
elasticsearch_1  | #  - Upgrade API is disabled

So I do not want to purchase a paid license, BUT I want that message to go away. I am fully aware that some features of xpack will not work without a paid license, and I am ok with that. I am not using xpack.security anyway. How to make it go away?

What I've tried:

I have set "xpack.security.enabled" to false and "xpack.monitoring.enabled" to false, an no other xpack-settings, and I still get those warnings. This is totally annoying and fills up my logs.

Where I've looked:

  • X-Pack License Settings (https://www.elastic.co/guide/en/elasticsearch/reference/6.2/license-settings.html) tells me how to start a trial, but my trial is over. It does not tell me how to set it to Open-Source-Only.

  • License Management (https://www.elastic.co/guide/en/x-pack/6.2/license-management.html) tells me how to generate a trial license (which I don't want) and how to update my license with a license JSON file (but I don't want to purchase one).

  • License Expiration (https://www.elastic.co/guide/en/x-pack/6.2/license-expiration.html) tells me that "Your X-Pack license is time based and expires at a future date. If you’re using X-Pack monitoring and your license will expire within 30 days, a license expiration warning is displayed prominently. Warnings are also displayed on startup and written to the Elasticsearch log starting 30 days from the expiration date. These error messages tell you when the license expires and what features will be disabled if you fail to update the license.", ok got it, I know what's disabled, fine - now how stop the warning?

  • Subscriptions (https://www.elastic.co/subscriptions) tells me what is included in the OpenSource license, but now how to activate (?) it. I guess I have to uninstall XPack altogether, but I have no idea how to uninstall it on a docker image.

  • The Install-With-Docker page (https://www.elastic.co/guide/en/elasticsearch/reference/6.4/docker.html) says that "These images are free to use under the Elastic license. They contain open source and free commercial features and access to paid commercial features [...]. Alternatively, you can download other Docker images that contain only features available under the Apache 2.0 license. To download the images, go to www.docker.elastic.co.", but when I go to the indicated page, I do not see how I can download the Apache-Only images. I only see a list of Docker images, without any difference.

Please, help me to...

  • (a) switch off the warning about an expired license for something I do not even intend to use,
  • (b) switch off xpack altogether - that must be possible?, and/or
  • (c) finding Docker images that only contain Apache-licenses features.

At the moment, this issue annoys me so much that I am thinking of stopping to use ElasticSearch altogether. It seems to be quite difficult to use the OpenSource version.


Some more info:
Using the lince API (/_xpack/license) to check tells me this:

{
  "license" : {
    "status" : "expired",
    "uid" : "xxx",
    "type" : "basic",
    "issue_date" : "2018-xxx",
    "issue_date_in_millis" : xxx,
    "expiry_date" : "2018-xxx",
    "expiry_date_in_millis" : xxx,
    "max_nodes" : 1000,
    "issued_to" : "xxx",
    "issuer" : "elasticsearch",
    "start_date_in_millis" : -1
  }
}

(Mark Walkom) #2

What version are you on?


#3

Hi!
I'm using the docker image of 6.1.1 (docker.elastic.co/elasticsearch/elasticsearch:6.1.1).


(Toby McLaughlin) #4

I understand not wanting a trial licence. However, a free Basic licence may suit your needs.

https://register.elastic.co/

Alternatively, for version 6.1.1, the OSS-only image is available as docker.elastic.co/elasticsearch/elasticsearch-oss:6.1.1

The same -oss pattern applies for the other components, too.


#5

Hi Toby!
Thank you, that was exactly what I looked for. Very helpful!
I'll have a look at the Basic license.
Have a nice weekend!


(Toby McLaughlin) #6

Excellent!

Good weekend to you, too!


(system) closed #7

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.