v0.20.7
Changes
skipper: discover redis shards without fetching full cluster state (#2934)
Skipper supports Redis based Cluster Ratelimits and
dynamic discovery of Redis instances using Kubernetes Service,
see https://github.com/zalando/skipper/blob/master/docs/tutorials/ratelimit.md#redis-based-cluster-ratelimits
Dynamic discovery relies on Kubernetes Dataclient that also fetches
Ingresses and RouteGroups and creates routes from them.
This change enables dynamic discovery of Redis instances using
Kubernetes without fetching Ingresses and RouteGroups.
When -kubernetes
flag is not set but -enable-swarm
,
-kubernetes-redis-service-namespace
, -kubernetes-redis-service-name
and
-kubernetes-redis-service-port
are provided then Skipper creates
Kubernetes dataclient to discover Redis instances
but does not use this dataclient for routing.
The change adds LoadEndpointAddresses to Kubernetes dataclient that is
similar to caching GetEndpointAddresses but does not rely on
previous call to Load or LoadAll to allow discovery of
Redis shards without fetching full cluster state.
Fixes #2476
Multiarch Docker image
Multiarch Docker image is available in Github's docker registry:
docker run -it ghcr.io/zalando/skipper:v0.20.7 skipper --help
Docker image
Docker image is available in Zalando's Open Source registry:
docker run -it registry.opensource.zalan.do/teapot/skipper:v0.20.7 skipper --help