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

Set proxy-id when bootstrapping gateway #9834

Closed
shoenig opened this issue Jan 15, 2021 · 1 comment · Fixed by #9849
Closed

Set proxy-id when bootstrapping gateway #9834

shoenig opened this issue Jan 15, 2021 · 1 comment · Fixed by #9849
Labels
hcc/cst Admin - internal stage/accepted Confirmed, and intend to work on. No timeline committment though. theme/consul/connect Consul Connect integration

Comments

@shoenig
Copy link
Member

shoenig commented Jan 15, 2021

If Nomad tries to register multiple gateways on the same agent, it runs into a disambiguation problem with Consul that can only be resolved by setting -proxy-id on the consul connect envoy command.

This is not trivial, because currently Nomad handles service registrations asynchronously from the task runner hooks that bootstrap Envoy. This is pretty trivial, we already set a deterministic ID for each gateway service registration, we just need to pass it in to the envoy bootstrap command.

https://www.consul.io/commands/connect/envoy#proxy-id

@shoenig shoenig added stage/accepted Confirmed, and intend to work on. No timeline committment though. theme/consul/connect Consul Connect integration labels Jan 15, 2021
shoenig added a commit that referenced this issue Jan 19, 2021
Connect ingress gateway services were being registered into Consul without
an explicit deterministic service ID. Consul would generate one automatically,
but then Nomad would have no way to register a second gateway on the same agent
as it would not supply 'proxy-id' during envoy bootstrap.

Set the ServiceID for gateways, and supply 'proxy-id' when doing envoy bootstrap.

Fixes #9834
shoenig added a commit that referenced this issue Jan 19, 2021
Connect ingress gateway services were being registered into Consul without
an explicit deterministic service ID. Consul would generate one automatically,
but then Nomad would have no way to register a second gateway on the same agent
as it would not supply 'proxy-id' during envoy bootstrap.

Set the ServiceID for gateways, and supply 'proxy-id' when doing envoy bootstrap.

Fixes #9834
shoenig added a commit that referenced this issue Jan 19, 2021
Connect ingress gateway services were being registered into Consul without
an explicit deterministic service ID. Consul would generate one automatically,
but then Nomad would have no way to register a second gateway on the same agent
as it would not supply 'proxy-id' during envoy bootstrap.

Set the ServiceID for gateways, and supply 'proxy-id' when doing envoy bootstrap.

Fixes #9834
shoenig added a commit that referenced this issue Jan 19, 2021
Connect ingress gateway services were being registered into Consul without
an explicit deterministic service ID. Consul would generate one automatically,
but then Nomad would have no way to register a second gateway on the same agent
as it would not supply 'proxy-id' during envoy bootstrap.

Set the ServiceID for gateways, and supply 'proxy-id' when doing envoy bootstrap.

Fixes #9834
shoenig added a commit that referenced this issue Jan 19, 2021
Connect ingress gateway services were being registered into Consul without
an explicit deterministic service ID. Consul would generate one automatically,
but then Nomad would have no way to register a second gateway on the same agent
as it would not supply 'proxy-id' during envoy bootstrap.

Set the ServiceID for gateways, and supply 'proxy-id' when doing envoy bootstrap.

Fixes #9834
backspace pushed a commit that referenced this issue Jan 22, 2021
Connect ingress gateway services were being registered into Consul without
an explicit deterministic service ID. Consul would generate one automatically,
but then Nomad would have no way to register a second gateway on the same agent
as it would not supply 'proxy-id' during envoy bootstrap.

Set the ServiceID for gateways, and supply 'proxy-id' when doing envoy bootstrap.

Fixes #9834
@tgross tgross added the hcc/cst Admin - internal label Jan 26, 2021
@github-actions
Copy link

I'm going to lock this issue because it has been closed for 120 days ⏳. This helps our maintainers find and focus on the active issues.
If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Oct 24, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
hcc/cst Admin - internal stage/accepted Confirmed, and intend to work on. No timeline committment though. theme/consul/connect Consul Connect integration
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants