_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
질문됨 3년 전272회 조회
1개 답변
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
답변함 3년 전

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

질문 답변하기에 대한 가이드라인

관련 콘텐츠