Commit Graph

18541 Commits

Author SHA1 Message Date
Freddy f453ad692c
Merge pull request #14385 from hashicorp/snapshot-agent-path-addressing 2022-08-30 10:47:24 -06:00
Eric Haberkorn 06e7f3cadb
Finish up cluster peering failover (#14396) 2022-08-30 11:46:34 -04:00
Chris S. Kim 9c157e40a3 Merge branch 'main' into NET-638-push-server-address-updates-to-the-peer
# Conflicts:
#	agent/grpc-external/services/peerstream/stream_test.go
2022-08-30 11:09:25 -04:00
Jorge Marey 5525efd2bd Change changelog message 2022-08-30 17:00:11 +02:00
Jorge Marey e3813586f3 Fix typos. Add test. Add documentation 2022-08-30 16:59:02 +02:00
Jorge Marey 916eef8f51 add changelog file 2022-08-30 16:59:02 +02:00
Jorge Marey 4d8f5ab539 Add new tracing configuration 2022-08-30 16:59:02 +02:00
Luke Kysow 63df49b440
Run integration tests locally using amd64 (#14365)
Locally, always run integration tests using amd64, even if running
on an arm mac. This ensures the architecture locally always matches
the CI/CD environment.

In addition:
* Use consul:local for envoy integration and upgrade tests. Previously,
  consul:local was used for upgrade tests and consul-dev for integration
  tests. I didn't see a reason to use separate images as it's more
  confusing.
* By default, disable the requirement that aws credentials are set.
  These are only needed for the lambda tests and make it so you
  can't run any tests locally, even if you're not running the
  lambda tests. Now they'll only run if the LAMBDA_TESTS_ENABLED
  env var is set.
* Split out the building of the Docker image for integration
  tests into its own target from `dev-docker`. This allows us to always
  use an amd64 image without messing up the `dev-docker` target.
* Add support for passing GO_TEST_FLAGs to `test-envoy-integ` target.
* Add a wait_for_leader function because tests were failing locally
  without it.
2022-08-29 16:13:49 -07:00
Tu Nguyen d929272b1b
Apply suggestions from code review 2022-08-29 15:33:22 -07:00
Freddy f27a9effca
Merge pull request #13496 from maxb/fix-kv_entries-metric 2022-08-29 15:35:11 -06:00
Freddy 69d99aa8c0
Merge pull request #14364 from hashicorp/peering/term-delete 2022-08-29 15:33:18 -06:00
Max Bowsher 3aefc4123f Merge branch 'main' into fix-kv_entries-metric 2022-08-29 22:22:10 +01:00
Chris S. Kim 7b267f5c01
Merge pull request #14371 from hashicorp/kisunji/peering-metrics-update
Adjust metrics reporting for peering tracker
2022-08-29 17:16:19 -04:00
Eric Haberkorn 13f8839924
Fix a breaking change to the API package introduced in #13835 (#14378)
`QueryDatacenterOptions` was renamed to `QueryFailoverOptions` without creating
an alias. This adds `QueryDatacenterOptions` back as an alias to
`QueryFailoverOptions` and marks it is deprecated.
2022-08-29 16:59:27 -04:00
Austin Workman bb26fd603f Add support for S3 path based addressing 2022-08-29 14:46:02 -06:00
Chris S. Kim e4a154c88e Add heartbeat timeout grace period when accounting for peering health 2022-08-29 16:32:26 -04:00
David Yu f5139f0c17
docs: Cluster peering with Transparent Proxy updates (#14369)
* Update Cluster Peering docs to show example with Transparent Proxy 
Co-authored-by: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com>
2022-08-29 13:07:08 -07:00
Derek Menteer 1233680362 Add documentation and changelog entry. 2022-08-29 13:43:49 -05:00
Derek Menteer b641dcf03d Expose `grpc_tls` via serf for cluster peering. 2022-08-29 13:43:49 -05:00
Derek Menteer 4a01d75cf8 Add separate grpc_tls port.
To ease the transition for users, the original gRPC
port can still operate in a deprecated mode as either
plain-text or TLS mode. This behavior should be removed
in a future release whenever we no longer support this.

The resulting behavior from this commit is:
  `ports.grpc > 0 && ports.grpc_tls > 0` spawns both plain-text and tls ports.
  `ports.grpc > 0 && grpc.tls == undefined` spawns a single plain-text port.
  `ports.grpc > 0 && grpc.tls != undefined` spawns a single tls port (backwards compat mode).
2022-08-29 13:43:43 -05:00
David Yu 91be64887e
docs: Update Consul K8s release notes (#14379) 2022-08-29 11:34:39 -07:00
freddygv 850dc52f4f Add changelog entry 2022-08-29 12:31:13 -06:00
freddygv f790d84c04 Add validation to prevent switching dialing mode
This prevents unexpected changes to the output of ShouldDial, which
should never change unless a peering is deleted and recreated.
2022-08-29 12:31:13 -06:00
Eric Haberkorn 13992d5dc8
Update max_ejection_percent on outlier detection for peered clusters to 100% (#14373)
We can't trust health checks on peered services when service resolvers,
splitters and routers are used.
2022-08-29 13:46:41 -04:00
DanStough 680ff580a3 chore: add multi-arch docker build for testing 2022-08-29 12:01:31 -04:00
Chris S. Kim a58e943502 Rename test 2022-08-29 10:34:50 -04:00
Chris S. Kim 78bf8437d8 Fix test 2022-08-29 10:20:30 -04:00
Eric Haberkorn 2a370d456b
Update the structs and discovery chain for service resolver redirects to cluster peers. (#14366) 2022-08-29 09:51:32 -04:00
trujillo-adam fb71c17ef3
Update website/content/docs/nia/usage/run-ha.mdx 2022-08-26 15:48:55 -07:00
trujillo-adam f8969f5c84
Merge branch 'main' into nia/docs-0.7.0 2022-08-26 15:41:33 -07:00
trujillo-adam 79c29f9ebd redirects for CTS 0.7 2022-08-26 14:53:12 -07:00
trujillo-adam b26bc6d829 final content tweaks for CTS 0.7 docs 2022-08-26 14:46:13 -07:00
Chris S. Kim b1025f2dd9 Adjust metrics reporting for peering tracker 2022-08-26 17:34:17 -04:00
trujillo-adam bdd28ee69b
Apply suggestions from code review
Co-authored-by: lornasong <lornasong@users.noreply.github.com>
2022-08-26 14:28:20 -07:00
David Yu 5d1b26e973
docs: Release notes for Consul 1.12, 1.13 and Consul K8s 0.47.0 (#14352)
* consul 1.12, consul 1.13, and consul-k8s release notes

Co-authored-by: Jeff Boruszak <104028618+boruszak@users.noreply.github.com>
2022-08-26 13:37:41 -07:00
trujillo-adam d7609bdf53
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-08-26 12:20:29 -07:00
trujillo-adam f5e5ba1af5
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-08-26 12:18:28 -07:00
trujillo-adam 77aee6fd37
Apply suggestions from code review
Co-authored-by: Jeff Boruszak <104028618+boruszak@users.noreply.github.com>
2022-08-26 11:58:19 -07:00
freddygv 19f25fc3a5 Allow terminated peerings to be deleted
Peerings are terminated when a peer decides to delete the peering from
their end. Deleting a peering sends a termination message to the peer
and triggers them to mark the peering as terminated but does NOT delete
the peering itself. This is to prevent peerings from disappearing from
both sides just because one side deleted them.

Previously the Delete endpoint was skipping the deletion if the peering
was not marked as active. However, terminated peerings are also
inactive.

This PR makes some updates so that peerings marked as terminated can be
deleted by users.
2022-08-26 10:52:47 -06:00
Thomas Eckert 91e1242b82
Merge pull request #14347 from hashicorp/update-terminating-gateway-docs
Update Kubernetes Terminating Gateway Docs
2022-08-26 12:52:09 -04:00
smamindla57 d649320c0d
Updated consul monitoring with Newrelic APM (#14360)
* added newrelic consul quickstart link
* adding HCP Consul

Co-authored-by: David Yu <dyu@hashicorp.com>
2022-08-26 09:13:46 -07:00
Chris S. Kim 7e95b35102 Fix casing 2022-08-26 11:56:26 -04:00
trujillo-adam c8f2cc5311 replaced HA diagrams with SVG files 2022-08-26 08:38:51 -07:00
Chris S. Kim a8b2278968
Merge pull request #11742 from dekimsey/catalog-service-list-filter
Add support for filtering the 'List Services' API
2022-08-26 11:35:20 -04:00
Chris S. Kim 516a6daefa Merge branch 'main' into catalog-service-list-filter 2022-08-26 11:16:06 -04:00
Chris S. Kim a2c857df40 Fix tests for enterprise 2022-08-26 11:14:02 -04:00
Chris S. Kim a5e9ea6d96 Merge branch 'main' into NET-638-push-server-address-updates-to-the-peer
# Conflicts:
#	agent/grpc-external/services/peerstream/stream_test.go
2022-08-26 10:43:56 -04:00
Chris S. Kim a8090268d4
Replace ring buffer with async version (#14314)
We need to watch for changes to peerings and update the server addresses which get served by the ring buffer.

Also, if there is an active connection for a peer, we are getting up-to-date server addresses from the replication stream and can safely ignore the token's addresses which may be stale.
2022-08-26 10:27:13 -04:00
trujillo-adam 660afc14b4 updated the compatibility table for 0.7 2022-08-25 19:36:54 -07:00
trujillo-adam 7c5c4ecec9 add HA to configuration reference, updated other configuration params 2022-08-25 19:34:22 -07:00