Commit Graph

4536 Commits (70bb6a2abdbc5ed4a6e728e8da243c5394a631d1)

Author SHA1 Message Date
Daniel Upton a8df87f574 proxycfg-glue: server-local implementation of `ExportedPeeredServices`
2 years ago
Eric Haberkorn 501089292e
Add Cluster Peering Failover Support to Prepared Queries (#13835)
2 years ago
Nitya Dhanushkodi f47319b7c6
update generate token endpoint to take external addresses (#13844)
2 years ago
acpana 12b773ab02
Rename peering internal to ~
2 years ago
Luke Kysow 0c87be0845
peering: Add heartbeating to peering streams (#13806)
2 years ago
Daniel Upton 3655802fdc proxycfg-glue: server-local implementation of `PeeredUpstreams`
2 years ago
Luke Kysow c411e6b326
Add send mutex to protect against concurrent sends (#13805)
2 years ago
Kyle Havlovitz 0be7d923dc Cancel upstream watches when the discovery chain has been removed
2 years ago
Kyle Havlovitz 31318d7049 Fix duplicate Notify calls for discovery chains in ingress gateways
2 years ago
Evan Culver 4116537b83
connect: Add support for Envoy 1.23, remove 1.19 (#13807)
2 years ago
Paul Glass 77afe0e76e
Extract AWS auth implementation out of Consul (#13760)
2 years ago
Chris S. Kim 495936300e
Make envoy resources for inferred peered upstreams (#13758)
2 years ago
alex de5a991d8c
peering: refactor reconcile, cleanup (#13795)
2 years ago
Luke Kysow e8d965e56f
peerstream: set keepalive enforcement to 15s (#13796)
2 years ago
alex a9ae2ff4fa
peering: track exported services (#13784)
2 years ago
R.B. Boyer cd513aeead
peerstream: require a resource subscription to receive updates of that type (#13767)
2 years ago
R.B. Boyer c737301093
peerstream: fix test assertions (#13780)
2 years ago
Luke Kysow 46381b1a7f
Add docs for peerStreamServer vs peeringServer. (#13781)
2 years ago
Luke Kysow ca3d7c964c
peerstream: dialer should reconnect when stream closes (#13745)
2 years ago
R.B. Boyer bb4d4040fb
server: ensure peer replication can successfully use TLS over external gRPC (#13733)
2 years ago
alex adb5ffa1a6
peering: track imported services (#13718)
2 years ago
Matt Keeler 257f88d4df
Use Node Name for peering healthSnapshot instead of ID (#13773)
2 years ago
Matt Keeler 05b5e7e2ca
Enable partition support for peering establishment (#13772)
2 years ago
Dan Stough 49f3dadb8f feat: connect proxy xDS for destinations
2 years ago
Daniel Upton 3d74efa8ad proxycfg-glue: server-local implementation of `FederationStateListMeshGateways`
2 years ago
Daniel Upton ccc672013e proxycfg-glue: server-local implementation of `GatewayServices`
2 years ago
Daniel Upton 15a319dbfe proxycfg-glue: server-local implementation of `TrustBundle` and `TrustBundleList`
2 years ago
Daniel Upton 673d02d30f proxycfg-glue: server-local implementation of the `Health` interface
2 years ago
Daniel Upton 3c533ceea8 proxycfg-glue: server-local implementation of `ServiceList`
2 years ago
Daniel Upton fbf88d3b19 proxycfg-glue: server-local compiled discovery chain data source
2 years ago
Chris S. Kim f56810132f Check if an upstream is implicit from either intentions or peered services
2 years ago
Chris S. Kim 02cff2394d Use new maps for proxycfg peered data
2 years ago
Chris S. Kim 7f32cba735 Add new watch.Map type to refactor proxycfg
2 years ago
Chris S. Kim b4ffa9ae0c Scrub VirtualIPs before exporting
2 years ago
Kyle Havlovitz 9097e2b0f0
Merge pull request #13699 from hashicorp/tgate-http2-upstream
2 years ago
Dan Upton b9e525d689
grpc: rename public/private directories to external/internal (#13721)
2 years ago
R.B. Boyer 30fffd0c90
peerstream: some cosmetic refactors to make this easier to follow (#13732)
2 years ago
Kyle Havlovitz 7d0c692374 Use protocol from resolved config entry, not gateway service
2 years ago
Kyle Havlovitz 7162e3bde2 Enable http2 options for grpc protocol
2 years ago
R.B. Boyer c5c216008d
peering: always send the mesh gateway SpiffeID even for tcp services (#13728)
2 years ago
R.B. Boyer f0e6e4e697
state: prohibit changing an exported tcp discovery chain in a way that would break SAN validation (#13727)
2 years ago
R.B. Boyer 2317f37b4d
state: prohibit exported discovery chains to have cross-datacenter or cross-partition references (#13726)
2 years ago
Chris S. Kim a6634db4a5
Return error if ServerAddresses is empty (#13714)
2 years ago
Kyle Havlovitz 439eccdd80 Respect http2 protocol for upstreams of terminating gateways
2 years ago
R.B. Boyer af04851637
peering: move peer replication to the external gRPC port (#13698)
2 years ago
R.B. Boyer ea58f235f5
server: broadcast the public grpc port using lan serf and update the consul service in the catalog with the same data (#13687)
2 years ago
Freddy 3542138e4d
Parse peer name for virtual IP DNS queries (#13602)
2 years ago
R.B. Boyer 2a945facec
test: update mockery use to put mocks into test files (#13656)
2 years ago
Chris S. Kim f07132dacc
Revise possible states for a peering. (#13661)
2 years ago
Daniel Upton 45886848b4 proxycfg: server-local intention upstreams data source
2 years ago
Daniel Upton 37ccbd2826 proxycfg: server-local intentions data source
2 years ago
Daniel Upton 653b8c4f9d proxycfg: server-local config entry data sources
2 years ago
alex cd9ca4290a
peering: add imported/exported counts to peering (#13644)
2 years ago
Chris S. Kim b186731a2e
Fix ENT drift in files (#13647)
2 years ago
Chris S. Kim d8b7940e40
Add internal endpoint to fetch peered upstream candidates from VirtualIP table (#13642)
2 years ago
Eric Haberkorn 653cb42944
Fix spelling mistake in serverless patcher (#13607)
2 years ago
alex 07bc22e405
no 1.9 style metrics (#13532)
2 years ago
alex beb8b03e8a
peering: reconcile/ hint active state for list (#13619)
2 years ago
R.B. Boyer 31b95c747b
xds: modify rbac rules to use the XFCC header for peered L7 enforcement (#13629)
2 years ago
R.B. Boyer de0f9ac519
xds: have mesh gateways forward peered SpiffeIDs using the XFCC header (#13625)
2 years ago
R.B. Boyer 1a9c86ea8f
xds: mesh gateways now correctly load up peer-exported discovery chains using L7 protocols (#13624)
2 years ago
R.B. Boyer 0fa828db76
peering: replicate all SpiffeID values necessary for the importing side to do SAN validation (#13612)
2 years ago
Max Bowsher ef4b9e541f
Merge branch 'main' into fix-kv_entries-metric
2 years ago
alex 53f0cf5835
peering, internal: support UIServices, UINodes, UINodeInfo (#13577)
2 years ago
Chris S. Kim 2e4cb6f77d
Add new index for PeeredServiceName and ServiceVirtualIP (#13582)
2 years ago
alex 20ecf0febd
Merge pull request #13570 from hashicorp/acpance/peering-oss-intentions
2 years ago
Will Jordan 34ecbc1d71
Add per-node max indexes (#12399)
2 years ago
Chris S. Kim ba89a7d9b0
Make memdb indexers generic (#13558)
2 years ago
Matt Keeler 7a4d13b0b2
Port over the index 0 -> 1 code that lived in the old rpc setQueryMeta function. (#13561)
2 years ago
acpana 99c2e11328
oss: peering, http: get peer service intentions (#2098)
2 years ago
R.B. Boyer e8ea3d7c3b
state: peering ID assignment cannot happen inside of the state store (#13525)
2 years ago
Matt Keeler cb01702cd2
Add server local blocking queries and watches (#13438)
2 years ago
Chris S. Kim fb5eb20563
Pass trust domain to RBAC to validate and fix use of wrong peer trust bundles (#13508)
2 years ago
Max Bowsher 7b97b8abd2 Delete definition of metric `consul.acl.blocked.node.registration`
2 years ago
Max Bowsher 7c19c701e1 Fix incorrect name and doc for kv_entries metric
2 years ago
Dan Upton e00e3a0bc3
Move ACLResolveResult into acl/resolver package (#13467)
2 years ago
DanStough 4b402e3119 feat: tgtwy xDS generation for destinations
2 years ago
alex bd4ddb3720
peering: block Intention.Apply ops (#13451)
2 years ago
alex b3e99784a6
peering, state: account for peer intentions (#13443)
2 years ago
R.B. Boyer da8cea58c9
xds: begin refactor to always pass test snapshots through all xDS types (#13461)
2 years ago
R.B. Boyer 201d1458c3
xds: mesh gateways now have their own leaf certificate when involved in a peering (#13460)
2 years ago
Riddhi Shah 411edc876b
[OSS] Support merge-central-config option in node services list API (#13450)
2 years ago
Evan Culver 7f8c650d61
connect: Use Envoy 1.22.2 instead of 1.22.1 (#13444)
2 years ago
freddygv f3843809da Avoid deleting peerings marked as terminated.
2 years ago
freddygv 6453375ab2 Add leader routine to clean up peerings
2 years ago
Evan Culver ba6136eb42
connect: Update Envoy support matrix to latest patch releases (#13431)
2 years ago
alex a0a49ce2a6
peering: intentions list test (#13435)
2 years ago
freddygv 6c8ab1bbac Fixup stream tear-down steps.
2 years ago
freddygv cc921a9c78 Update peering state and RPC for deferred deletion
2 years ago
Freddy 71b254522e
Clean up imported nodes/services/checks as needed (#13367)
2 years ago
Mark Anderson edbf19f4e8
Merge pull request #13357 from hashicorp/ma/add-build-date-oss
2 years ago
Chris S. Kim a02e9abcc1
Update RBAC to handle imported services (#13404)
3 years ago
R.B. Boyer f557509e58
xds: allow for peered upstreams to use tagged addresses that are hostnames (#13422)
3 years ago
Kyle Havlovitz 7f62571419 Add dns node lookup support in partitions
3 years ago
R.B. Boyer 7001e1151c
peering: rename initiate to establish in the context of the APIs (#13419)
3 years ago
Mark Anderson dd22ceccd1 Change default dates
3 years ago
Mark Anderson f65093f1c6 Fixup some more tests
3 years ago
Mark Anderson 19c87be3a6 Add build date to self endpoint
3 years ago
Mark Anderson ec060e5e37 Build date in config file
3 years ago
R.B. Boyer bba3eb8cdd
peering: mesh gateways are required for cross-peer service mesh communication (#13410)
3 years ago
kisunji 196a1c468a Add missing index for read
3 years ago
kisunji d026d84880 Add IntentionMatch tests for source peers
3 years ago
kisunji bb0b42da12 Update ServiceIntentionSourceIndex to handle peer
3 years ago
Chris S. Kim bb832e2bba
Add SourcePeer fields to relevant Intentions types (#13390)
3 years ago
R.B. Boyer 7423886136
peering: allow protobuf requests to populate the default partition or namespace (#13398)
3 years ago
Dhia Ayachi ec0d267a35
Fix intentions wildcard dest (#13397)
3 years ago
R.B. Boyer edb2e55335
peering: avoid a race between peering establishment and termination (#13389)
3 years ago
Dhia Ayachi 7393374fc0
Egress gtw/intention rpc endpoint (#13354)
3 years ago
Dhia Ayachi 5ec3274ae5
Egress gtw/connect destination intentions (#13341)
3 years ago
R.B. Boyer ab758b7b32
peering: allow mesh gateways to proxy L4 peered traffic (#13339)
3 years ago
Fulvio d457d8b6ce
UDP check for service stanza #12221 (#12722)
3 years ago
alex bbbc50815a
peering: send leader addr (#13342)
3 years ago
Dan Upton b168424398
xds: remove HTTPCheckFetcher dependency (#13366)
3 years ago
R.B. Boyer 019aeaa57d
peering: update how cross-peer upstreams and represented in proxycfg and rendered in xds (#13362)
3 years ago
cskh 74158a8aa2
Add isLeader metric to track if a server is a leader (#13304)
3 years ago
Freddy 32f125cc0f
Merge pull request #13340 from hashicorp/peering/public-listener
3 years ago
Chris S. Kim 73af9e9737
Fix KVSGet method to handle QueryOptions properly (#13344)
3 years ago
Freddy a09c776645 Update public listener with SPIFFE Validator
3 years ago
freddygv 647c57a416 Add agent cache-type for TrustBundleListByService
3 years ago
freddygv 8b58fa8afe Update assumptions around exported-service config
3 years ago
Freddy 74ca6406ea
Configure upstream TLS context with peer root certs (#13321)
3 years ago
R.B. Boyer 8e530701ce
test: regenerate golden files (#13336)
3 years ago
Chris S. Kim fcdd031911
Revert getPathSuffixUnescaped (#13256)
3 years ago
Dan Upton adeabed126
proxycfg: replace direct agent cache usage with interfaces (#13320)
3 years ago
Chris S. Kim 67860bd248
Reimplement fs.FileInfo interface (#13315)
3 years ago
Dhia Ayachi 1b779240ae
update gateway-services table with endpoints (#13217)
3 years ago
Chris S. Kim f0a9b30174
Update repo to use go:embed (#10996)
3 years ago
Riddhi Shah 1a901953e2
[OSS] Fix merge central config tests (#13309)
3 years ago
freddygv 364758ef2f Use embedded SpiffeID for peered upstreams
3 years ago
freddygv c8edec0ab6 Remove intermediate representation of SPIFFE IDs
3 years ago
freddygv 870e7c72d7 Return SPIFFE ID for connect proxies in PeerMeta
3 years ago
Freddy 9427700270
[OSS] Add grpc endpoint to fetch a specific trust bundle (#13292)
3 years ago
Matt Keeler 3795769729
Fix a flaky test (#13282)
3 years ago
Dan Upton 2427e38839
Enable servers to configure arbitrary proxies from the catalog (#13244)
3 years ago
alex fd7a403e11
monitor leadership in peering service (#13257)
3 years ago
Riddhi Shah b6a4271c02
Termporarily disable validation of merge central config response (#13266)
3 years ago
Chris S. Kim 6d3bea7129
Add support for streaming CA roots to peers (#13260)
3 years ago
Riddhi Shah c78ee7d48f
Remove tests failing on ent (#13255)
3 years ago
John Cowen 09c5bac102
Export top-level HCP Enabled go-template variable for UI (#13165)
3 years ago
DanStough 2e2c71d2f2 fix: multiple grpc/http2 services for ingress listeners
3 years ago
Riddhi Shah d8d8c8603e
Add support for merge-central-config query param (#13001)
3 years ago
R.B. Boyer 31526139fd
remove a source of test panics (#13227)
3 years ago
R.B. Boyer a85b8a4705
api: ensure peering API endpoints do not use protobufs (#13204)
3 years ago
R.B. Boyer 1a8834e1c8
peering: replicate expected SNI, SPIFFE, and service protocol to peers (#13218)
3 years ago
R.B. Boyer be631ebdce
peering: disable requirement for mesh gateways initially (#13213)
3 years ago
Kyle Havlovitz 0ed9ff8ef7
Merge pull request #13143 from hashicorp/envoy-connection-limit
3 years ago
Kyle Havlovitz f2fbe8aec9 Fix proto lint errors after version bump
3 years ago
Kyle Havlovitz dbed8ae10b Specify go_package explicitly
3 years ago
cskh 8712a088b1
fix: non-leader agents return 404 on Get Intention exact api (#13179)
3 years ago
Kyle Havlovitz 4bc6c23357 Add connection limit setting to service defaults
3 years ago