keynote #tech - google : aperçu de la gestion des services distribués chez google, par bastien...
TRANSCRIPT
![Page 1: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/1.jpg)
Bastien LEGRAS, Google
Google : aperçu de la gestion des services distribués chez Google
![Page 2: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/2.jpg)
De Borg à Kubernetes ou l’art d’ordonnancer des tâches
Bastien Legras (@bastienlegras)Google Cloud Platform - Solution Engineering
![Page 3: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/3.jpg)
Image by
Connie Zhou
![Page 4: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/4.jpg)
job hello_world = { runtime = { cell = 'ic' } // Cell (cluster) to run in binary = '.../hello_world_webserver' // Program to run args = { port = '%port%' } // Command line parameters requirements = { // Resource requirements ram = 100M disk = 100M cpu = 0.1 } replicas = 5 // Number of tasks}
10000
User view
(optional) .
![Page 5: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/5.jpg)
User view
![Page 6: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/6.jpg)
What justhappened?
web browsers
BorgMaster
link shard
UI shardBorgMaster
link shard
UI shardBorgMaster
link shard
UI shardBorgMaster
link shard
UI shard
Cell
Scheduler
borgcfg web browsers
scheduler
Borglet Borglet Borglet Borglet
BorgMaster
link shard
read/UI
shard
Config file
persistent store (Paxos)
Binary
User view
![Page 7: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/7.jpg)
Hello world! Hello
world!Hello
world!
Hello world!
Hello world!
Hello world! Hello
world!
Hello world!
Hello world!
Hello world!
Hello world!
Hello world!
Hello world!
Hello world!
Hello world!
Hello world!
Hello world!Hello world!
Hello world!
Hello world!
Hello world!
Hello world!
Hello world! Hello
world!
Hello world!
Hello world!
Hello world!
Image by Connie Zhou
User view
Hello world!
Hello world!
Hello world! Hello
world!
Hello world!
Hello world!
Hello world!
Hello world!
Hello world!
Hello world!
Hello world! Hello
world!
Hello world!
Hello world!
Hello world!
Hello world!
Hello world!
Hello world!
Hello world! Hello
world!
Hello world!
Hello world!
Hello world!
Hello world!
![Page 8: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/8.jpg)
User view
![Page 9: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/9.jpg)
task-eviction ratesand causes
9
Failures
![Page 10: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/10.jpg)
Images by
Connie Zhou
A 2000-machine service will have >10 task exits per dayThis is not a problem: it's normal
Failures
![Page 11: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/11.jpg)
Multiple apps per machine
Sharing clusters between prod/batch
Advanced bin-packing algorithms
Efficiency
stranded resources
available resources
onemachine
![Page 12: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/12.jpg)
Multiple apps per machine
Sharing clusters between prod/batch
Advanced bin-packing algorithms
Efficiency
![Page 13: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/13.jpg)
A few other moving parts
web browsers
BorgMaster
link shard
UI shardBorgMaster
link shard
UI shardBorgMaster
link shard
UI shardBorgMaster
link shard
UI shard
Cell
Scheduler
borgcfg web browsers
scheduler
Borglet Borglet Borglet Borglet
BorgMaster
link shard
read/UI
shard
Config file
persistent store (Paxos)
Binary
![Page 14: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/14.jpg)
app
agent
masterjob config
A few other moving parts
![Page 15: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/15.jpg)
app
agent
master
system config
monitoring
security
accounting/planning
binaries + data distribution
job config
storage
Diagram from an original by Cody Smith.
A few other moving parts
![Page 16: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/16.jpg)
A few other moving parts
app
agent
master
system config
monitoring
security
accounting/planning
binaries + data distribution
job config
storage
Diagram from an original by Cody Smith.
![Page 17: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/17.jpg)
Building what’s next 17
Containers at Google
Developed as the only practical way to manage Google-scale compute
Everything at Google runs in a containerWe launch over2 Billioncontainers per week.
![Page 18: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/18.jpg)
κυβερνήτης: pilot or helmsman of a ship
http://kubernetes.io
Kubernetes
![Page 19: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/19.jpg)
Kubernetes
Direct Borg analogues:
● Borg containers => Docker containers
● alloc (task group) => pod (container group)
● Borglet => Kubelet● Paxos => persistent, declarative
specs● reconciliation loops
![Page 20: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/20.jpg)
New / improved:
● labels + label queries● service abstraction● composable microservices● IP per pod
Kubernetes
![Page 21: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/21.jpg)
Kubernetes RoadmapMilestones• 1.0 stable in June 2015• 1.1 Nov 9th 2015 (perf, pod autoscaling, http LB,
no APi change)
Cloud Native Computing Foundation• Linux Foundation• VMWare, RedHat, Joyent, Mesosphere, Docker,
IBM, CloudFoundry, CoreOS, Cisco, Google, …• cncf.io
![Page 22: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/22.jpg)
Kubernetes: zero downtime update at 1 million requests per secondScales
![Page 23: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/23.jpg)
Google Container Engine (GKE)Google Container Registry
![Page 24: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/24.jpg)
[email protected]@bastienlegras
http://kubernetes.io http://goo.gl/1C4nuo (Borg paper)
Images by Connie Zhou
![Page 25: Keynote #Tech - Google : aperçu de la gestion des services distribués chez Google, par Bastien LEGRAS](https://reader034.vdocuments.pub/reader034/viewer/2022052405/5884e42e1a28ab4b778b695d/html5/thumbnails/25.jpg)
RETROUVEZ TOUTE L’ACTUALITE DE L’EVENEMENT SUR LE
COMPTE TWITTER OFFICIEL @OSS_PARIS