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

consul/connect: fix bug causing high cpu with multiple connect sidecars in group #10883

Merged
merged 3 commits into from
Jul 12, 2021

Commits on Jul 9, 2021

  1. consul/connect: fix bug causing high cpu with multiple connect sideca…

    …rs in group
    
    This PR fixes a bug where the underlying Envoy process of a Connect gateway
    would consume a full core of CPU if there is more than one sidecar or gateway
    in a group. The utilization was being caused by Consul injecting an envoy_ready_listener
    on 127.0.0.1:8443, of which only one of the Envoys would be able to bind to.
    The others would spin in a hot loop trying to bind the listener.
    
    As a workaround, we now specify -address during the Envoy bootstrap config
    step, which is how Consul maps this ready listener. Because there is already
    the envoy_admin_listener, and we need to continue supporting running gateways
    in host networking mode, and in those case we want to use the same port
    value coming from the service.port field, we now bind the admin listener to
    the 127.0.0.2 loop-back interface, and the ready listener takes 127.0.0.1.
    
    This shouldn't make a difference in the 99.999% use case where envoy is
    being run in its official docker container. Advanced users can reference
    ${NOMAD_ENVOY_ADMIN_ADDR_<service>} (as they 'ought to) if needed,
    as well as the new variable ${NOMAD_ENVOY_READY_ADDR_<service>} for the
    envoy_ready_listener.
    shoenig committed Jul 9, 2021
    Configuration menu
    Copy the full SHA
    ee7d32f View commit details
    Browse the repository at this point in the history

Commits on Jul 12, 2021

  1. consul/connect: use join host port

    Co-authored-by: Michael Schurter <mschurter@hashicorp.com>
    shoenig and schmichael authored Jul 12, 2021
    Configuration menu
    Copy the full SHA
    3ac8d4e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a18d901 View commit details
    Browse the repository at this point in the history