20180502_talk_1
20180502_talk_1
- Adidas journey to k8s
- 1 - Context
- 2 - GiantSwarm collaboration
- 3 - The road to production
- 4 - Cluster strategy
- 5 - Questions
Adidas journey to k8s
1 - Context
1.1 - Origin
Adidas:
* A the time, IT mainly controlled by managers
Timeline
* Late 2013
* Asked to estimate cost
* Costed a lot
+ Because a LOT of MANUAL steps
1.2 - Docker
Docker cames
* Lets use it !
* Dev: Ubuntu: OK
* Prod: RHEL: KO
Current State:
* everything running through Puppet (Orchestrated)
* Worked but … weird usage
1.3 - K8s
July 2015: k8s v1.0
* Seems cool
* Need it for IT productivity
* How to embarq the company ?
Then Organization change (New CTO)
* New era
* Was time to go fast
2 - GiantSwarm collaboration
2.1 - Introduction
First, re-explain containers vs Docker marketing
* Containers are small VMs ! (no)
* You can run it anywhere (Hum … not magically)
* Want HA and everything
How we started (Adidas):
* A new strategy for new project (Based on OpenSouce, collaboration)
-> Change comes with culture first
GianSwarm
* K8s distribution
Adidas + GiantSwarm
* Sandbox cluster
2.2 - Enterprise grade
More than sandbox ?
* Security
* Backups
* Automation
* …
Adidas managed to create a group of users:
* who wanted changes
* who also understand this is a new platform, expect things to not run withou any issues
3 - The road to production
3.1 - 1st steps
Step:
* Took a store with little traffic (Finn)
* Deployed om k8s
* Shift some users
* + LoadTesting
-> FAILED
Invstigation
* Kube-proxy
* AWS network interface configuration was saturated
* LoadTesting team did too huge loadtest (Know your tools)
Fixed everythin, go prod
3.2 - 2nd steps
Go production:
* Flash sales
-> FAILED
Investigation
-> Not enought resources allocated to handle peak traffic
4 - Cluster strategy
Namespaces, Tenant, …
4.1 - Feedbacks
You have different teams, different speads, different workload
-> You can not put all together on the same cluster …
k8s Updates
* Hard to be inplace
* Impacts users
-> Give a cluster to each team
-> Give new cluster with upgrade
5 - Questions
Storage
It all depands your usage
-> Rook seems good for block storage
-> S3 API is good from app pov
Monitoring
Prometheus
* How many containers (Spinning rate)
* Diff between pods specs
* …