Multi-Cloud�Global Content Distribution�at Cloud Native Speeds
Jiri Kremser, Yury Tsarev
@JirkaKremser @xnullz @k8gb_io
#ossummit
Software engineer and open-source enthusiast currently working on kedify.io. He is a contributor/maintainer of k8gb project.
Previously GiantSwarm.io, ABSA, Red Hat, etc.
dev at Kedify.io
Jiri Kremser
An active contributor to the Kubernetes and Crossplane ecosystems, Yury has worked with leading firms in Linux distribution, big data, video streaming, consulting, and finance. Yury joined Upbound to spearhead the control plane revolution in cloud-native infrastructure.�Creator of k8gb project.
https://www.linkedin.com/in/yurytsarev/
Principal Solutions Architect at Upbound
Yury Tsarev
Open Source Global Content Distribution
Project Overview
Kubernetes Global Balancer - k8gb.io
✅ Handles high impact regional failures
✅ DNS-based global traffic steering
�✅ Simple Gslb CRD
✅ No Management Cluster
✅ No Single Point of Failure
✅ Multiple global load balancing strategies
K8GB Project History
✅ Originated in Absa to solve the need for cloud native GSLB solution
✅ Ability to route traffic to geographically dispersed clusters
✅ Response to workload state on a pod health level
✅ Designed to replace proprietary vendor solutions
✅ K8GB was started in the end of 2019 as OSS project from day 0
Use Case 1.1: Handling Regional Failure
Use Case 1.2: Handling Regional Failure
Use Case 1.3: Handling Regional Failure
Use Case 2: Spread Load Over Multiple Regions
Use Case 3: Multi-Region Content Distribution
K8GB Components
Embedded custom CoreDNS to serve DNS requests
Integrated ExternalDNS to automatically configure Zone Delegation
� K8GB controller to coordinate the logic according to the GSLB strategy
Simple Way to Control Global Traffic
Multiple Integrations
K8GB is architected to run on top of any CNCF-conformant K8s cluster�and Ingress controller, Istio Virtual Service, GatewayAPI is on the roadmap
✅ Operates in any on-prem, cloud or hybrid scenarios
✅ Supported external DNS providers for full zone delegation automation:
✅ AWS Route53
✅ Azure Public DNS
✅ NS1
✅ Infoblox
✅ Cloudflare
✅ RFC2136 implementations (e.g. Bind/Windows DNS)
Global Load Balancing Strategies
✅ roundRobin�
✅ weightedRoundRobin
✅ failover
✅ geoip
50% 30% 20%
GEOIP Strategy
✅ Works with MaxMind DB format��✅ GeoLite2 Free Geolocation Data
�✅ Custom MMDB file for private networks
✅ Checks edns0 CLIENT-SUBNET option
✅ For client’s ip fetches a tag like country.iso_code or continent.code from MMDB
✅ Returns matching DNS Endpoints (with the same tag)
✅ The advanced strategy logic is handled by CoreDNS CRD Plugin
� Caveat: Cloudflare as a resolver on the client side doesn’t support this, Google does
Demo Setup
GKE cluster
in US
EKS cluster
in EU
EU’s nginx: 18.132.100.90
US’ nginx: 34.48.156.181
Project Status
✅ CNCF Sandbox��✅ Incubating proposal is planned for this year
�✅ 3 public adopters
✅ 2 times finalist of CNCF Security Slam
✅ Perfect CLOMonitor score�
✅ Maintainers from Absa, Upbound, Kedify, Open Systems
✅ Contributors from Millennium bcp, Tetrate, D2iQ
Roadmap
✅ GatewayAPI support
✅ Google Cloud DNS support for automated zone delegation
✅ Release K8GB 1.0
Learn More and Help the Project
✅ Visit us at k8gb.io
✅ ⭐ Star us on GitHub!
✅ Add your organization to ADOPTERS.md
✅ Join k8gb Contribfest in Salt Lake City!