Terminating Gateway Appending tcp:// to Service Addresses

I have a terminating gateway setup, and services/nodes registered (external) properly health checking with proper addresses.

However in my terminating gateway envoy logs (which I noticed after getting connection resets and no healthy upstream errors) its failing to set my services up in its envoy cluster properly as its appending tcp:// to the beginning of the service/node addresses so its then throwing a malformed url since its tcp://https://. I know this is some kind of configuration on the node or service that I’m missing or putting in improperly. My service and node is registered via terraform with a basic copy/paste of the terraform example for it.

Here’s the error:

[2023-06-14 11:45:42.950][65][warning][config] [source/common/config/new_delta_subscription_state.cc:262] delta config for type.googleapis.com/envoy.config.cluster.v3.Cluster rejected: Error adding/updating cluster(s) my-service.default.us-east-1.internal.4df05e31-d3f5-cc5c-b2ea-73dc30306f7a.consul: malformed url: tcp://https://REDACTED:443, cl-xdp-xapproxy-stage.default.us-east-1.internal.4df05e31-d3f5-cc5c-b2ea-73dc30306f7a.consul: malformed url: tcp://https://REDACTED:443

It seems the service definition needed the “address” attribute, even though it shouldn’t need that

@reskin89 Were you previously only defining the Address on the node, and then expecting the service to inherit that address when it is associated to the external node?

I’m asking because I’m trying to determine where this tcp:// prefix is being prepended. It’s not immediately clear to me where Consul or Envoy may be inserting this into the address field.

Exactly I was expecting the service to inherit the nodes address, which the docs say it should.

I could understand if the node address didn’t have https or something but it seems as though it just appends tcp:// to it.

The issue disappeared when I added an address to the service itself