Commit Graph

18831 Commits

Author SHA1 Message Date
Dan Upton 9fe6c33c0d
xDS Load Balancing (#14397)
Prior to #13244, connect proxies and gateways could only be configured by an
xDS session served by the local client agent.

In an upcoming release, it will be possible to deploy a Consul service mesh
without client agents. In this model, xDS sessions will be handled by the
servers themselves, which necessitates load-balancing to prevent a single
server from receiving a disproportionate amount of load and becoming
overwhelmed.

This introduces a simple form of load-balancing where Consul will attempt to
achieve an even spread of load (xDS sessions) between all healthy servers.
It does so by implementing a concurrent session limiter (limiter.SessionLimiter)
and adjusting the limit according to autopilot state and proxy service
registrations in the catalog.

If a server is already over capacity (i.e. the session limit is lowered),
Consul will begin draining sessions to rebalance the load. This will result
in the client receiving a `RESOURCE_EXHAUSTED` status code. It is the client's
responsibility to observe this response and reconnect to a different server.

Users of the gRPC client connection brokered by the
consul-server-connection-manager library will get this for free.

The rate at which Consul will drain sessions to rebalance load is scaled
dynamically based on the number of proxies in the catalog.
2022-09-09 15:02:01 +01:00
Jeff Apple a5f4573c76
Merge pull request #14534 from hashicorp/docs/capigw-tech-spec-update
Docs: add limitations to Tech Specs
2022-09-08 14:47:39 -07:00
Jeff Apple c12c0a8376
Update website/content/docs/api-gateway/tech-specs.mdx 2022-09-08 14:41:06 -07:00
Derek Menteer 03f2594d73
Merge pull request #14294 from hashicorp/derekm/split-grpc-ports
Add separate grpc tls port.
2022-09-08 16:27:38 -05:00
Nathan Coleman 193eeaee7a
Update website/content/docs/api-gateway/tech-specs.mdx 2022-09-08 15:56:28 -04:00
Jeff Apple c9251d2aaa
Update website/content/docs/api-gateway/tech-specs.mdx
Co-authored-by: Nathan Coleman <nathan.coleman@hashicorp.com>
2022-09-08 12:55:15 -07:00
Jeff Apple 0648e83bca
Update website/content/docs/api-gateway/tech-specs.mdx
Co-authored-by: Nathan Coleman <nathan.coleman@hashicorp.com>
2022-09-08 12:54:02 -07:00
Derek Menteer 8efe862b76 Merge branch 'main' of github.com:hashicorp/consul into derekm/split-grpc-ports 2022-09-08 14:53:08 -05:00
Jeff Apple ce4ec3e6b8
Update website/content/docs/api-gateway/tech-specs.mdx
Co-authored-by: Nathan Coleman <nathan.coleman@hashicorp.com>
2022-09-08 12:51:44 -07:00
Derek Menteer 75dec4c31d Remove rebuilding grpc server. 2022-09-08 13:45:44 -05:00
trujillo-adam 7c12ca1d2d
Merge pull request #14353 from hashicorp/nia/docs-0.7.0
Nia/docs 0.7.0
2022-09-08 11:44:04 -07:00
Jeff Apple ec508e492e
Docs: add limitations to Tech Specs 2022-09-08 11:38:27 -07:00
trujillo-adam 0df792005d fix to redirects file 2022-09-08 11:31:08 -07:00
Tu Nguyen 60452f068b Merge branch 'main' into nia/docs-0.7.0 2022-09-08 11:18:05 -07:00
Tu Nguyen 4a7ec94445 Merge branch 'nia/docs-0.7.0' of ssh://github.com/hashicorp/consul into nia/docs-0.7.0 2022-09-08 11:17:58 -07:00
Tu Nguyen 8dc33d601a Merge branch 'main' of ssh://github.com/hashicorp/consul 2022-09-08 11:17:46 -07:00
trujillo-adam 53aceea6f7 updated HA configuration ref 2022-09-08 11:16:34 -07:00
trujillo-adam 06c6023f25 Apply suggestions from code review
Co-authored-by: Michael Wilkerson <62034708+wilkermichael@users.noreply.github.com>
2022-09-08 11:16:34 -07:00
trujillo-adam ecc0a6e4b0 Apply suggestions from code review
Co-authored-by: Michael Wilkerson <62034708+wilkermichael@users.noreply.github.com>
2022-09-08 11:16:34 -07:00
trujillo-adam 808eeab7d8 fixed bad links in status/cluster endpoint ref 2022-09-08 11:16:34 -07:00
trujillo-adam aa7eddd41a applied AJs feedback and made a few additional improvements 2022-09-08 11:16:33 -07:00
trujillo-adam ca58bca433 udpated how to ID the leader in the usage docs 2022-09-08 11:16:33 -07:00
trujillo-adam d23c007cc4 added no-HA API status error message to EMs page 2022-09-08 11:16:33 -07:00
trujillo-adam 32645e3133 added cluster endpoint to status API docs 2022-09-08 11:16:33 -07:00
Tu Nguyen ed505b956b Apply suggestions from code review 2022-09-08 11:16:33 -07:00
trujillo-adam 950654f7f8 Update website/content/docs/nia/usage/run-ha.mdx 2022-09-08 11:16:33 -07:00
trujillo-adam 38727b41d1 redirects for CTS 0.7 2022-09-08 11:15:45 -07:00
trujillo-adam 1baca91665 final content tweaks for CTS 0.7 docs 2022-09-08 11:09:30 -07:00
trujillo-adam 73b0e2b3ec Apply suggestions from code review
Co-authored-by: lornasong <lornasong@users.noreply.github.com>
2022-09-08 11:09:30 -07:00
trujillo-adam c43e595c6c Apply suggestions from code review
Co-authored-by: Jeff Boruszak <104028618+boruszak@users.noreply.github.com>
Co-authored-by: Michael Wilkerson <62034708+wilkermichael@users.noreply.github.com>
2022-09-08 11:09:29 -07:00
trujillo-adam 0ed871d548 Apply suggestions from code review
Co-authored-by: Michael Wilkerson <62034708+wilkermichael@users.noreply.github.com>
Co-authored-by: Jeff Boruszak <104028618+boruszak@users.noreply.github.com>
2022-09-08 11:09:29 -07:00
trujillo-adam 40f359ef71 Apply suggestions from code review
Co-authored-by: Jeff Boruszak <104028618+boruszak@users.noreply.github.com>
2022-09-08 11:09:29 -07:00
trujillo-adam 8030e78245 replaced HA diagrams with SVG files 2022-09-08 11:09:29 -07:00
trujillo-adam b30982e1b2 updated the compatibility table for 0.7 2022-09-08 11:09:29 -07:00
trujillo-adam 6a4693245e add HA to configuration reference, updated other configuration params 2022-09-08 11:09:29 -07:00
trujillo-adam c694e1927d added ha information to the API endpoints docs 2022-09-08 11:09:29 -07:00
trujillo-adam 65822ef5d3 updates to the architecture page 2022-09-08 11:09:29 -07:00
trujillo-adam 159c6e5804 added error messages page and link fixes to a few pages 2022-09-08 11:09:29 -07:00
trujillo-adam cf154f08cc add HA usage page and small revisions to standard usage page 2022-09-08 11:09:29 -07:00
trujillo-adam 2c6ce70bee partial update to the nav, revisisions to the usage requirements page 2022-09-08 11:09:29 -07:00
trujillo-adam 4d2139d617 updated reset-store flag and other page content 2022-09-08 11:09:29 -07:00
Michael Wilkerson c76277b47f update docs (#13842)
* update docs

* Update website/content/docs/nia/cli/start.mdx

Co-authored-by: Jeff Boruszak <104028618+boruszak@users.noreply.github.com>

Co-authored-by: Jeff Boruszak <104028618+boruszak@users.noreply.github.com>
2022-09-08 11:09:29 -07:00
Michael Wilkerson 82137f71a5 Nia/cts tasks not required (#13731)
* update docs

* Update website/content/docs/nia/configuration.mdx

Co-authored-by: Jeff Boruszak <104028618+boruszak@users.noreply.github.com>

Co-authored-by: Jeff Boruszak <104028618+boruszak@users.noreply.github.com>
2022-09-08 11:09:28 -07:00
Noe Brown 576ac87523 Updated the default service name to lower case
Changes to doc :
Changed default service_name to consul-terraform-sync. Service name is used in service registration it was previously proper case, it is now lower case.
2022-09-08 11:09:28 -07:00
trujillo-adam 09ff452fa6
Merge branch 'main' into nia/docs-0.7.0 2022-09-08 10:03:57 -07:00
Derek Menteer 6aaf1c6035 Various cleanups. 2022-09-08 10:51:50 -05:00
Chris S. Kim 331c756471
Reuse http.DefaultTransport in UIMetricsProxy (#14521)
http.Transport keeps a pool of connections and should be reused when possible. We instantiate a new http.DefaultTransport for every metrics request, making large numbers of concurrent requests inefficiently spin up new connections instead of reusing open ones.
2022-09-08 11:02:05 -04:00
Michael Klein 6cd25728e5
ui: update tab nav steps to use `isVisible` vs `clickable` (#14517)
* Add `isVisible` property to tab-nav page-object

* Use `IsVisible` when testing visibility of tabs
2022-09-08 12:46:49 +02:00
John Cowen 84039e3d57
ui: Add 'self-managed' badge when CONSUL_HCP_MANAGED_RUNTIME=self (#14496) 2022-09-08 11:45:20 +01:00
John Cowen efb2ecbb2e
ui: Detect token in a cookie and passthrough (#14495) 2022-09-08 11:43:39 +01:00