Skip to content

20170901_srecon17_1.1

20170901_srecon17_1.1

On premise K8s Cluster

0 - Agenda

  • What is k8s ?
  • Why run / Not run k8s
  • Why own cluster
  • Building what public cloud provide

1 - What is k8s ?

  • Node
  • Pod
  • Service
  • Ingress (Bridge to access the service)

2 - Why run k8s ?

Shopify:
- Already using containers
- OWN containers mgmt, but lot of glue …

-> OK

BUT
- Long running Jobs
- “Fixed” scheduling assomption workflow
- Stateful services

-> Maybe NOT

3 - Own cluster ?

Shopify:
- 2 DCs
- Cloud might NOT be competitive at scale
- Allow is to migrate stuff, 1 at a time, in a “cloud” way, without latency
- Lack of full automation and security

4 - Build what cloud offers

Components
- HA (masters)
- Ingress
- Storage

HA for K8s masters
  • ECMP Anycast for requests to API server
  • etcd is already clustered and provide the consistency
Ingress

ClusterIP / NodePort
-> Not really efficient

Implemented IngressController for Haproxy Outside of the Cluster

Storage

Complicated