pomerium/internal
Kenneth Jenkins c7c2087483
envoy: enable TCP keepalive for internal clusters (#4902)
In split service mode, and during periods of inactivity, the gRPC
connections to the databroker may fall idle. Some network firewalls may
eventually time out an idle TCP connection and even start dropping
subsequent packets once connection traffic resumes. Combined with Linux
default TCP retransmission settings, this could cause a broken
connection to persist for over 15 minutes.

In an attempt to avoid this scenario, enable TCP keepalive for outbound
gRPC connections, matching the Go standard library default settings for
time & interval: 15 seconds for both. (The probe count does not appear
to be set, so it will remain at the OS default.)

Add a test case exercising the BuildClusters() method with the default
configuration options, comparing the results with a reference "golden"
file in the testdata directory. Also add an '-update' flag to make it
easier to update the reference golden when needed:

  go test ./config/envoyconfig -update
2024-01-11 09:12:45 -08:00
..
atomicutil atomicutil: use atomicutil.Value wherever possible (#3517) 2022-07-28 15:38:38 -06:00
authenticateflow authenticateflow: verify redirect in Callback test (#4894) 2024-01-03 17:18:18 -08:00
autocert core/autocert: fix flaky test (#4899) 2024-01-05 12:31:22 -07:00
chanutil fileutil: update watcher to use fsnotify and polling (#3663) 2022-10-19 09:13:08 -06:00
contextkeys xds: only tag contexts used for UpdateRecords (#2269) 2021-06-04 14:01:25 -04:00
controlplane core: fix graceful stop (#4865) 2023-12-29 10:18:08 -07:00
databroker authorize: build evaluators cache in parallel (#4722) 2023-11-09 11:49:34 -05:00
deterministicecdsa core/ci: update linting (#4844) 2023-12-14 09:07:54 -08:00
encoding config: remove source, remove deadcode, fix linting issues (#4118) 2023-04-21 17:25:11 -06:00
errgrouputil core/go: use max procs (#4766) 2023-12-07 09:14:57 -07:00
events core/events: fix flaky test (#4700) 2023-11-02 11:28:28 -06:00
fileutil core/ci: update linting (#4844) 2023-12-14 09:07:54 -08:00
handlers core/authenticate: refactor identity authenticators to initiate redirect (#4858) 2023-12-19 12:04:23 -07:00
hashutil dev: update linter (#1728) 2020-12-30 09:02:57 -08:00
httputil core/authenticate: refactor identity authenticators to initiate redirect (#4858) 2023-12-19 12:04:23 -07:00
identity core/authenticate: refactor identity authenticators to initiate redirect (#4858) 2023-12-19 12:04:23 -07:00
log chore(deps): bump github.com/spf13/viper from 1.16.0 to 1.18.2 (#4861) 2023-12-27 16:16:38 -07:00
middleware controlplane: remove gorilla handlers dependency (#3813) 2022-12-15 14:41:29 -07:00
registry core/redis: remove comment (#4843) 2023-12-07 15:55:02 -07:00
retry core/ci: update linting (#4844) 2023-12-14 09:07:54 -08:00
scheduler feature/databroker: user data and session refactor project (#926) 2020-06-19 07:52:44 -06:00
sessions config: add cookie_same_site option (#4148) 2023-05-03 14:36:42 -06:00
sets zero/telemetry: calculate DAU and MAU (#4810) 2023-12-11 13:37:01 -05:00
signal log context (#2107) 2021-04-22 10:58:13 -04:00
syncutil config: generate cookie secret if not set in all-in-one mode (#3742) 2022-11-11 14:14:30 -07:00
telemetry core/ci: update linting (#4844) 2023-12-14 09:07:54 -08:00
tests/xdserr config: remove source, remove deadcode, fix linting issues (#4118) 2023-04-21 17:25:11 -06:00
testutil envoy: enable TCP keepalive for internal clusters (#4902) 2024-01-11 09:12:45 -08:00
tripper config: remove source, remove deadcode, fix linting issues (#4118) 2023-04-21 17:25:11 -06:00
urlutil stub out HPKE public key fetch for self-hosted authenticate (#4360) 2023-07-13 10:04:34 -07:00
version dev: update linter (#1728) 2020-12-30 09:02:57 -08:00
zero zero: group funcs that need run within a lease (#4862) 2023-12-21 11:41:41 -05:00