Error using API to connect to cluster

ES version 7.17.1

I have just enabled security on an existing cluster that date back to the time when one had to pay to get "security". ;).

I can connect using curl on the elastic user and get the cluster health. So the basics are there.

When I try and connect from my ruby program (that works fine on another cluster that was set up with security from the start) using an API key I get :

 INFO  syslog-es-connect-AD : Try connecting to ES host {:hosts=>[{:host=>"secesprd02.its.auckland.ac.nz"}, {:host=>"secesprd01.its.auckland.ac.nz"}], :request_timeout=>10, :randomize_hosts=>true, :api_key=>"**********", :scheme=>"https"}
The client is unable to verify that the server is Elasticsearch. Some functionality may not be compatible if the server is running an unsupported product.
ERROR  syslog-es-connect-AD : Connection failed: The client noticed that the server is not Elasticsearch and we do not support this unknown product.

any idea what the problem is?

I tried to update this thread yesterday and when I viewed the post it did not have a "reply" instead it invited me to "add a comment" --- which I did. Now I can't see that comment ???

Very frustrating -- given that I spent half an hour giving a detailed explanation of what caused the problem.

Short answer is that simply doing a gem install elasticsearch installs the most recent version. But the api changes between major versions and this is the unhelpful error you get if the api library version and the server version are incompatible.

To diagnose this I had to run the code in the ruby debugger and trace the execution deep into the api code to find the actual code that produced the error. The code has an if statement with three independent tests ored together and produces the generic message of failure.

This is lazy programming at the users expense : (

I note that the message makes no mention of version incompatibly.

Hi @Russell_Fulton,
As I think you've already found out, the solution to this issue would be to use version 7.17 of the client instead of the latest. We try to make clear which versions to use in the Compatibility section of the client's README, but any constructive feedback on that messaging is welcome. Please let us know if you have any issues after installing the right version of the client.

I will raise this with the team, perhaps we can add more detail to the message.

Thanks,
Fernando

1 Like

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