SlideShare a Scribd company logo
Ty Morton, Google
Christopher Bradford, DataStax
1
Taking Your Database Global with
Kubernetes
Christopher Bradford, DataStax
Special Thanks - Ty Morton, Google
Who are we?
Christopher Bradford, DataStax
K8ssandra Project Lead
@bradfordcp
2
Who am I?
What are we trying to do?
Expand a single-region Apache
Cassandra cluster from one
Kubernetes environment to two.
Existing deployment:
● 1x region
● 3x zones
● 6x K8s workers
● 6x C* pods
Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax
3
What are we trying to do?
Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax
4
What are we trying to do?
Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax
5
Seems simple...
6
Right?
7
Wait a minute...
Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax
8
Networking
What are we trying to do?
Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax
9
What are we trying to do?
Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax
10
Address Collisions
Flatten It Out
Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax
11
Flatten It Out
Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax
12
It depends...
13
Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax
Overlay Networks
14
Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax
Service Discovery
Kubernetes has support for DNS stubs
us-west4.cluster.local:53 {
errors
cache 30
forward . 10.150.0.1
}
Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax
15
DNS Stubs
Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax
16
Replicated / Managed DNS
Cilium Istio
Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax
17
Strong Alternatives
18
Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax
Bring Added Benefits
Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax
19
Deployment
20
So what you're saying is...
CIDR Wikipedia
Istio Multicluster Guide
LinkerD Multicluster Guide
Google GKE Cloud DNS
Cilium Cluster Mesh
Cassandra on Anthos
Cilium Cassandra Secure Access
Kubernetes Docs - Customize DNS
Yahoo! Japan Blog Post - Discusses
BGP and K8s for easy routing
DataStax Overlay Network Blog Post
K8ssandra Multicluster Operator
Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax
21
References
Demo
22
Questions?
23

More Related Content

Taking Your Database Global with Kubernetes

  • 1. Ty Morton, Google Christopher Bradford, DataStax 1 Taking Your Database Global with Kubernetes Christopher Bradford, DataStax Special Thanks - Ty Morton, Google
  • 2. Who are we? Christopher Bradford, DataStax K8ssandra Project Lead @bradfordcp 2 Who am I?
  • 3. What are we trying to do? Expand a single-region Apache Cassandra cluster from one Kubernetes environment to two. Existing deployment: ● 1x region ● 3x zones ● 6x K8s workers ● 6x C* pods Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax 3 What are we trying to do?
  • 4. Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax 4 What are we trying to do?
  • 5. Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax 5 Seems simple...
  • 8. Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax 8 Networking
  • 9. What are we trying to do? Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax 9 What are we trying to do?
  • 10. Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax 10 Address Collisions
  • 11. Flatten It Out Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax 11 Flatten It Out
  • 12. Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax 12 It depends...
  • 13. 13 Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax Overlay Networks
  • 14. 14 Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax Service Discovery
  • 15. Kubernetes has support for DNS stubs us-west4.cluster.local:53 { errors cache 30 forward . 10.150.0.1 } Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax 15 DNS Stubs
  • 16. Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax 16 Replicated / Managed DNS
  • 17. Cilium Istio Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax 17 Strong Alternatives
  • 18. 18 Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax Bring Added Benefits
  • 19. Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax 19 Deployment
  • 20. 20 So what you're saying is...
  • 21. CIDR Wikipedia Istio Multicluster Guide LinkerD Multicluster Guide Google GKE Cloud DNS Cilium Cluster Mesh Cassandra on Anthos Cilium Cassandra Secure Access Kubernetes Docs - Customize DNS Yahoo! Japan Blog Post - Discusses BGP and K8s for easy routing DataStax Overlay Network Blog Post K8ssandra Multicluster Operator Taking Your Database Global with Kubernetes • Christopher Bradford, DataStax 21 References