_nodes/http info missing lots of info

0

The Elasticsearch client for golang uses info derived from the follow ES api call:

GET /_node/http
https://www.elastic.co/guide/en/elasticsearch/reference/current/cluster-nodes-info.html

Normally this call returns lot of information about the node including IP address but when making the call to the AWS service this information is missing. This causes the golang client to fail to be able to discover any nodes. Here are two examples which highlight the problem:

regular node i have running locally:
curl "http://localhost:9200/_nodes/http?pretty"
{
"_nodes" : {
"total" : 1,
"successful" : 1,
"failed" : 0
},
"cluster_name" : "docker-cluster",
"nodes" : {
"hnsnurlLTG2-XbBQFyYg9w" : {
"name" : "16c3f8d15864",
"transport_address" : "172.25.0.4:9300",
"host" : "172.25.0.4",
"ip" : "172.25.0.4",
"version" : "7.8.0",
"build_flavor" : "default",
"build_type" : "docker",
"build_hash" : "757314695644ea9a1dc2fecd26d1a43856725e65",
"roles" : [
"data",
"ingest",
"master",
"ml",
"remote_cluster_client",
"transform"
],
"attributes" : {
"ml.machine_memory" : "25225474048",
"xpack.installed" : "true",
"transform.node" : "true",
"ml.max_open_jobs" : "20"
},
"http" : {
"bound_address" : [
"0.0.0.0:9200"
],
"publish_address" : "172.25.0.4:9200",
"max_content_length_in_bytes" : 104857600
}
}
}
}

AWS equivalent:
curl -XGET https://vpc-address....amazonaws.com/_nodes/http?pretty
{
"_nodes" : {
"total" : 3,
"successful" : 3,
"failed" : 0
},
"cluster_name" : "XXX",
"nodes" : {
"8oxT_9maSMif5iXoQptpKA" : {
"name" : "d026e0070020663bdd93028c2c801292",
"version" : "7.7.0",
"build_flavor" : "oss",
"build_type" : "tar",
"build_hash" : "unknown",
"roles" : [ "ingest", "master", "data", "remote_cluster_client" ]
},
"8joBdfy6Q-aULryA3aP00w" : {
"name" : "3992f18f3b80c28fbb6d5b5624c4bdfe",
"version" : "7.7.0",
"build_flavor" : "oss",
"build_type" : "tar",
"build_hash" : "unknown",
"roles" : [ "ingest", "master", "data", "remote_cluster_client" ]
},
"2v572nbWQK6zrXmwGUiRmQ" : {
"name" : "41d42ffdc2fdaf9c7a425e29c6ba92d6",
"version" : "7.7.0",
"build_flavor" : "oss",
"build_type" : "tar",
"build_hash" : "unknown",
"roles" : [ "ingest", "master", "data", "remote_cluster_client" ]
}
}
}

Obviously there are going to be some differences local Vs AWS with things like plugins but returning the actually http information seems pretty fundemental no?

biffta
demandé il y a 3 ans272 vues
1 réponse
0

The information is deliberately hidden because the IPs are private and as such would not be useful to any clients trying to retrieve them. Most cloud providers, including AWS, provide a loadbalancer instead. More information here:

https://www.elastic.co/blog/elasticsearch-sniffing-best-practices-what-when-why-how

biffta
répondu il y a 3 ans

Vous n'êtes pas connecté. Se connecter pour publier une réponse.

Une bonne réponse répond clairement à la question, contient des commentaires constructifs et encourage le développement professionnel de la personne qui pose la question.

Instructions pour répondre aux questions