Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remote cross cluster search stops working... #30247

Closed
asatsi opened this issue Apr 30, 2018 · 14 comments
Closed

Remote cross cluster search stops working... #30247

asatsi opened this issue Apr 30, 2018 · 14 comments
Labels
:Search/Search Search-related issues that do not fall into other categories

Comments

@asatsi
Copy link

asatsi commented Apr 30, 2018

Elasticsearch version (bin/elasticsearch --version):
$ bin/elasticsearch --version
Version: 6.2.2, Build: 10b1edd/2018-02-16T19:01:30.685723Z, JVM: 1.8.0_161

Plugins installed:
No external plugins installed.

JVM version (java -version):
"1.8.0_161"

OS version (uname -a if on a Unix-like system):
Linux myhostname 3.10.0-693.11.6.el7.x86_64 #1 SMP Thu Dec 28 14:23:39 EST 2017 x86_64 x86_64 x86_64 GNU/Linux

Description of the problem including expected versus actual behavior:
We have two elasticsearch clusters(each 16 nodes, 4 nodes per machine, in all 4 machines per cluster) configured across 8 machines. They are joined together by a third cluster configured as a cross elasticsearch cluster.

$ curl -s -XGET http://192.168.97.15:9400/_cluster/settings?pretty
{
"persistent" : {
"search" : {
"remote" : {
"prod1_cluster" : {
"seeds" : [
"192.168.97.15:9301",
"192.168.97.16:9301",
"192.168.97.26:9301",
"192.168.97.27:9301"
]
},
"prod2_cluster" : {
"seeds" : [
"192.168.181.15:9300",
"192.168.181.16:9300",
"192.168.181.26:9300",
"192.168.181.27:9300"
]
}
}
}
},
"transient" : { }
}

I can create the indices in kibana for two of these clusters initially. However after sometime the search for prod2_cluster (prod2_cluster:myindex_on_prod2) times out. Search for prod1_cluster always work. Also noticed that even though the _cluster/settings give a nice response. _remote/info errors out as below:

$ curl -s -XGET "http://192.168.97.15:9400/_remote/info?pretty"
{
"error" : {
"root_cause" : [
{
"type" : "node_disconnected_exception",
"reason" : "[node-es4-1][192.168.181.27:9300][cluster:monitor/nodes/info] disconnected"
}
],
"type" : "node_disconnected_exception",
"reason" : "[node-es4-1][192.168.181.27:9300][cluster:monitor/nodes/info] disconnected"
},
"status" : 500
}

All ports are opened and there is no connectivity issue.

Steps to reproduce:
Setup total three clusters. Two clusters are the actual clusters holding data and a third cluster which is used to "join" these two as part of a cross cluster search.

@colings86 colings86 added >bug :Search/Search Search-related issues that do not fall into other categories labels May 1, 2018
@elasticmachine
Copy link
Collaborator

Pinging @elastic/es-search-aggs

@javanna
Copy link
Member

javanna commented May 1, 2018

hi @asatsi did you find any related errors in the logs? We would need to know what the reason for the disconnection is. Hopefully you can find that in the logs and provide its stacktrace. Thanks!

@asatsi
Copy link
Author

asatsi commented May 2, 2018

Hi @javanna ,

I do see many occurrences of the below log. I have snipped specific portion in the attached file.

error.log

@asatsi
Copy link
Author

asatsi commented May 15, 2018

bump! Could somebody help out?

@javanna
Copy link
Member

javanna commented May 15, 2018

hi @asatsi from your logs, it seems like there are no nodes available that belong to one of the remote clusters. Note that the connection between the clusters uses the transport port (default 9300). Maybe there is some connection problem?

@asatsi
Copy link
Author

asatsi commented May 16, 2018

Thanks @javanna for reviewing the logs. There is apparently no issue with the connectivity as the firewall ports have been specifically opened for all the required ports. I also observed that whenever the "proxy cross cluster" is restarted, the remote connection behaves good. In Kibana I can see logs/dashboards from both the remote clusters. But after sometime, one of the remote cluster starts giving timeouts in Kibana.

@athanatos64
Copy link

I'm having the same problem as well. I though it maybe related to x-pack security since only a few users have the permissions to search remote clusters. If I'm not logged in and constantly searching remote indices, the connection timeouts.

@asatsi
Copy link
Author

asatsi commented May 22, 2018 via email

@athanatos64
Copy link

I usually have to do GET /_remote/info from Console and wait until I get connection restored back to search the remote cluster. Good to know that it's not X-pack related.

@asatsi
Copy link
Author

asatsi commented Jul 20, 2018

For now I am using two different kibana to point to the two clusters.

@danfisk
Copy link

danfisk commented Sep 7, 2018

What is the default time out for 'transient:' ? I have this working but do not use any kind of proxy server. Also I setup the seeds as persistent: In this way they are active until the next time the cluster is restarted. If you want them to always stay active, place the seeds in he elasticsearch.yml

@luxiaoxun
Copy link

@asatsi
Try "skip_unavailable": "true" to see if this configuration helped.

@javanna
Copy link
Member

javanna commented Oct 12, 2018

See #34405 , I believe the outlined solutions will help with this issue. Stay tuned for a fix. I am not sure that skip_unavailable helps as in some cases we are not quick enough detecting network disconnections and due to firewalls dropping connections in-between, we may have CCS searches hanging which is a problem regardless of the skip_unavailable setting value.

@javanna
Copy link
Member

javanna commented Nov 23, 2018

I am closing this issue in favor of #34405 . From 6.6 it will be possible to enable transport pings directed to remote clusters. We are also working on other improvements that should allow to better detect network issues and react, which are listed in the linked issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
:Search/Search Search-related issues that do not fall into other categories
Projects
None yet
Development

No branches or pull requests

7 participants