Open lkysow opened 2 years ago
Just a small note here, sounds like we need some sort of backend support to be able to do this. Currently discussing some sort of solution to this.
@msiege2 wasn't sure if this was on your radar or not, so thought I'd give you a quick ping. I didn't want to remove the ui label here as the problem does surface in the UI, even though I think the fix is adding information we don't currently have to the backend HTTP API (as far as I understand it).
Wanted to make sure this was on your radar, as I know often folks see the ui label and leave it for me to pick up. This one is one that someone else will need to pick up. ty!
Hi everyone,
I might be seeing something related to this issue in the UI. In the screenshot both instances have sidecars running, but the UI does only show "in service mesh with proxy" for the first instance. I added a screenshot below. There is no functional issue: everything works as expected. Requests get loadbalanced to both instances. It seems that this is only something GUI-related.
The /v1/catalog/connect/service6000 api-endpoint returns the following json (and shows that every instance has a proxy associated):
[
{
"ID": "6aadc940-f5d8-a338-d21b-d911e72f78f3",
"Node": "client-1",
"Address": "172.25.231.150",
"Datacenter": "dc1",
"TaggedAddresses": {
"lan": "172.25.231.150",
"lan_ipv4": "172.25.231.150",
"wan": "172.25.231.150",
"wan_ipv4": "172.25.231.150"
},
"NodeMeta": {
"consul-network-segment": ""
},
"ServiceKind": "connect-proxy",
"ServiceID": "service6000-0-0-sidecar-proxy",
"ServiceName": "service6000-0-0-sidecar-proxy",
"ServiceTags": [
"proxy"
],
"ServiceAddress": "",
"ServiceTaggedAddresses": {
"consul-virtual": {
"Address": "240.0.0.2",
"Port": 6001
}
},
"ServiceWeights": {
"Passing": 1,
"Warning": 1
},
"ServiceMeta": {},
"ServicePort": 6001,
"ServiceSocketPath": "",
"ServiceEnableTagOverride": false,
"ServiceProxy": {
"DestinationServiceName": "service6000",
"DestinationServiceID": "service6000-0-0",
"LocalServiceAddress": "10.254.2.178",
"LocalServicePort": 80,
"Mode": "",
"Config": {
"envoy_extra_static_clusters_json": "{\"connect_timeout\":\"3.000s\",\"dns_lookup_family\":\"V4_ONLY\",\"lb_policy\":\"ROUND_ROBIN\",\"load_assignment\":{\"cluster_name\":\"collector_cluster_name\",\"endpoints\":[{\"lb_endpoints\":[{\"endpoint\":{\"address\":{\"socket_address\":{\"address\":\"172.25.231.150\",\"port_value\":9411,\"protocol\":\"TCP\"}}}}]}]},\"name\":\"collector_cluster_name\",\"type\":\"STATIC\"}",
"envoy_prometheus_bind_addr": "0.0.0.0:1999",
"envoy_tracing_json": "{\"http\":{\"name\":\"envoy.tracers.zipkin\",\"typedConfig\":{\"@type\":\"type.googleapis.com/envoy.config.trace.v3.ZipkinConfig\",\"collector_cluster\":\"collector_cluster_name\",\"collector_endpoint_version\":\"HTTP_JSON\",\"collector_endpoint\":\"/api/v2/spans\",\"shared_span_context\":false}}}",
"protocol": "http"
},
"Upstreams": [
{
"DestinationType": "service",
"DestinationName": "whoami",
"Datacenter": "",
"LocalBindAddress": "0.0.0.0",
"LocalBindPort": 21000,
"Config": {
"protocol": "http"
},
"MeshGateway": {}
}
],
"MeshGateway": {},
"Expose": {
"Paths": [
{
"ListenerPort": 6003,
"Path": "/",
"LocalPathPort": 80
}
]
}
},
"ServiceConnect": {},
"CreateIndex": 81,
"ModifyIndex": 92
},
{
"ID": "6aadc940-f5d8-a338-d21b-d911e72f78f3",
"Node": "client-1",
"Address": "172.25.231.150",
"Datacenter": "dc1",
"TaggedAddresses": {
"lan": "172.25.231.150",
"lan_ipv4": "172.25.231.150",
"wan": "172.25.231.150",
"wan_ipv4": "172.25.231.150"
},
"NodeMeta": {
"consul-network-segment": ""
},
"ServiceKind": "connect-proxy",
"ServiceID": "service6000-0-1-sidecar-proxy",
"ServiceName": "service6000-0-1-sidecar-proxy",
"ServiceTags": [
"proxy"
],
"ServiceAddress": "",
"ServiceTaggedAddresses": {
"consul-virtual": {
"Address": "240.0.0.2",
"Port": 6006
}
},
"ServiceWeights": {
"Passing": 1,
"Warning": 1
},
"ServiceMeta": {},
"ServicePort": 6006,
"ServiceSocketPath": "",
"ServiceEnableTagOverride": false,
"ServiceProxy": {
"DestinationServiceName": "service6000",
"DestinationServiceID": "service6000-0-1",
"LocalServiceAddress": "10.254.2.194",
"LocalServicePort": 80,
"Mode": "",
"Config": {
"envoy_extra_static_clusters_json": "{\"connect_timeout\":\"3.000s\",\"dns_lookup_family\":\"V4_ONLY\",\"lb_policy\":\"ROUND_ROBIN\",\"load_assignment\":{\"cluster_name\":\"collector_cluster_name\",\"endpoints\":[{\"lb_endpoints\":[{\"endpoint\":{\"address\":{\"socket_address\":{\"address\":\"172.25.231.150\",\"port_value\":9411,\"protocol\":\"TCP\"}}}}]}]},\"name\":\"collector_cluster_name\",\"type\":\"STATIC\"}",
"envoy_prometheus_bind_addr": "0.0.0.0:1999",
"envoy_tracing_json": "{\"http\":{\"name\":\"envoy.tracers.zipkin\",\"typedConfig\":{\"@type\":\"type.googleapis.com/envoy.config.trace.v3.ZipkinConfig\",\"collector_cluster\":\"collector_cluster_name\",\"collector_endpoint_version\":\"HTTP_JSON\",\"collector_endpoint\":\"/api/v2/spans\",\"shared_span_context\":false}}}",
"protocol": "http"
},
"Upstreams": [
{
"DestinationType": "service",
"DestinationName": "whoami",
"Datacenter": "",
"LocalBindAddress": "0.0.0.0",
"LocalBindPort": 21000,
"Config": {
"protocol": "http"
},
"MeshGateway": {}
}
],
"MeshGateway": {},
"Expose": {
"Paths": [
{
"ListenerPort": 6008,
"Path": "/",
"LocalPathPort": 80
}
]
}
},
"ServiceConnect": {},
"CreateIndex": 105,
"ModifyIndex": 118
}
]
Overview of the Issue
Consul 1.11.1
On http://localhost:8500/ui/dc1/services it says
in service mesh with proxy and gateway
:On instance list page (http://localhost:8500/ui/dc1/services/frontend/instances) it only says
in service mesh with proxy
. It doesn't say gateway: