Mesos university - Devoxx France 2015 - part 1

Post on 15-Jul-2015

184 views 3 download

Tags:

Transcript of Mesos university - Devoxx France 2015 - part 1

@XebiaFr @YesWeScale#MesosUniversity

Mesos University

@jbclaramonte @plopezFr @jpthiery @aureliemaury

@XebiaFr @YesWeScale#MesosUniversity

Plan

@XebiaFr @YesWeScale#MesosUniversity

Plan

@XebiaFr @YesWeScale#MesosUniversity

Plan

@XebiaFr @YesWeScale#MesosUniversity @XebiaFr @YesWeScale#MesosUniversity

@XebiaFr @YesWeScale#MesosUniversity

Bonjour Mesos

@XebiaFr @YesWeScale#MesosUniversity

@XebiaFr @YesWeScale#MesosUniversity

Les origines

@XebiaFr @YesWeScale#MesosUniversity

Les origines

2009

@XebiaFr @YesWeScale#MesosUniversity

Les origines

Florian Leibert

Benjamin Hindman

2009

@XebiaFr @YesWeScale#MesosUniversity

Les origines

Florian Leibert

Benjamin Hindman

2010 : incubator

2009

@XebiaFr @YesWeScale#MesosUniversity

Les origines

Florian Leibert

Benjamin Hindman

2010 : incubator

2009

@XebiaFr @YesWeScale#MesosUniversity

Les origines

Florian Leibert

Benjamin HindmanTobi Knaup

2010 : incubator

2009

@XebiaFr @YesWeScale#MesosUniversity

Les origines

Florian Leibert

Benjamin HindmanTobi Knaup

2010 : incubator

2009

2013

2013 : top-level

@XebiaFr @YesWeScale#MesosUniversity

Mesos : (n. pr.)

@XebiaFr @YesWeScale#MesosUniversity

Mesos : (n. pr.)

• Du Grec Ancien μέσος : milieu

• Clustering générique

• Interface de partage de ressources

• Support d’applications distribuées

@XebiaFr @YesWeScale#MesosUniversity

DRY

@XebiaFr @YesWeScale#MesosUniversity

DRY

• Start-Stop

• Monitor-Clean

• Multi-applications

@XebiaFr @YesWeScale#MesosUniversity

Cas d’usage

MesosAppli

distribuée

@XebiaFr @YesWeScale#MesosUniversity

Cas d’usage

• Toutes applications distribuées

• Augmenter la densité applicative MesosAppli

distribuée

@XebiaFr @YesWeScale#MesosUniversity

Chaud !

@XebiaFr @YesWeScale#MesosUniversity

Validé au front

@XebiaFr @YesWeScale#MesosUniversity

Validé au front

@XebiaFr @YesWeScale#MesosUniversity @XebiaFr @YesWeScale#MesosUniversity

@XebiaFr @YesWeScale#MesosUniversity

Fonctionnalités

@XebiaFr @YesWeScale#MesosUniversity

@XebiaFr @YesWeScale#MesosUniversity

Partage de ressources

@XebiaFr @YesWeScale#MesosUniversity

Partage de ressources

Master

Slave Slave Slave Slave

@XebiaFr @YesWeScale#MesosUniversity

Partage de ressources

Master

Slave Slave Slave Slave

cpu: 2 mem: 2048

cpu: 4 mem: 16384

cpu: 2 mem: 4096

cpu: 32 mem: 131072

@XebiaFr @YesWeScale#MesosUniversity

Frameworks

@XebiaFr @YesWeScale#MesosUniversity

Frameworks

Scheduler

Lance des tâches

@XebiaFr @YesWeScale#MesosUniversity

Frameworks

Scheduler

Lance des tâches

( )Executor

Exécute les tâches

@XebiaFr @YesWeScale#MesosUniversity

Frameworks

Scheduler

Lance des tâches

( )Executor

Exécute les tâchesMaintient le journal de ressources Relaie les tâches aux slaves

Mesos Master

@XebiaFr @YesWeScale#MesosUniversity

Place de marché

Master

Slave Slave Slave Slave

@XebiaFr @YesWeScale#MesosUniversity

Executor ExecutorExecutor

Place de marché

Master

Slave Slave Slave Slave

Scheduler

@XebiaFr @YesWeScale#MesosUniversity

Executor ExecutorExecutor

Place de marché

Master

Slave Slave Slave Slave

Scheduler

Enregistrement

@XebiaFr @YesWeScale#MesosUniversity

Executor ExecutorExecutor

Place de marché

Master

Slave Slave Slave Slave

Scheduler

Enregistrement Évènements / Offres

@XebiaFr @YesWeScale#MesosUniversity

Executor ExecutorExecutor

Place de marché

Master

Slave Slave Slave Slave

Scheduler

Évènements / Offres

@XebiaFr @YesWeScale#MesosUniversity

Executor ExecutorExecutor

Place de marché

Master

Slave Slave Slave Slave

Scheduler

Tâches Évènements / Offres

@XebiaFr @YesWeScale#MesosUniversity

Executor ExecutorExecutor

Place de marché

Master

Slave Slave Slave Slave

Scheduler

Tâches Évènements / Offres

@XebiaFr @YesWeScale#MesosUniversity

Problème

@XebiaFr @YesWeScale#MesosUniversity

Problème

La vie c’est pas ça :

@XebiaFr @YesWeScale#MesosUniversity

Life is a biche !

@XebiaFr @YesWeScale#MesosUniversity

Life is a biche !

@XebiaFr @YesWeScale#MesosUniversity

Hum hum

@XebiaFr @YesWeScale#MesosUniversity

Hum hum

La vie c’est ça :

@XebiaFr @YesWeScale#MesosUniversity

Hum hum

La vie c’est ça :

@XebiaFr @YesWeScale#MesosUniversity

Hum hum

La vie c’est ça :

@XebiaFr @YesWeScale#MesosUniversity

Hum hum

La vie c’est ça :

@XebiaFr @YesWeScale#MesosUniversity

Hum hum

La vie c’est ça :

@XebiaFr @YesWeScale#MesosUniversity

Hum hum

La vie c’est ça :

@XebiaFr @YesWeScale#MesosUniversity

Mesos lave plus blanc

@XebiaFr @YesWeScale#MesosUniversity

Mesos lave plus blanc

• Ressources arbitraires par slave

• Intégrées dans les offres

• Tags pour donner du contexte

@XebiaFr @YesWeScale#MesosUniversity

Ressources partagées

@XebiaFr @YesWeScale#MesosUniversity

Ressources partagées

Master

Slave Slave Slave Slave

@XebiaFr @YesWeScale#MesosUniversity

Ressources partagées

Master

Slave Slave Slave Slave

cpu: 2 mem: 2048

cpu: 4 mem: 16384

cpu: 2 mem: 4096 gpu: 2

cpu: 32 mem: 131072 tag:ssd

@XebiaFr @YesWeScale#MesosUniversity

Ressources partagées

Master

Slave Slave Slave Slave

cpu: 2 mem: 2048

cpu: 4 mem: 16384

cpu: 2 mem: 4096 gpu: 2

cpu: 32 mem: 131072 tag:ssd

@XebiaFr @YesWeScale#MesosUniversity

Ressources partagées

Master

Slave Slave Slave Slave

cpu: 2 mem: 2048

cpu: 4 mem: 16384

cpu: 2 mem: 4096 gpu: 2

cpu: 32 mem: 131072 tag:ssd

@XebiaFr @YesWeScale#MesosUniversity

Ressources partagées

Master

Slave Slave Slave Slave

cpu: 2 mem: 2048

cpu: 4 mem: 16384

cpu: 2 mem: 4096 gpu: 2

@XebiaFr @YesWeScale#MesosUniversity

Ressources partagées

Master

Slave Slave Slave Slave

cpu: 2 mem: 2048

cpu: 4 mem: 16384

cpu: 2 mem: 4096 gpu: 2

@XebiaFr @YesWeScale#MesosUniversity

Ressources partagées

Master

Slave Slave Slave Slave

cpu: 2 mem: 2048

cpu: 4 mem: 16384

cpu: 2 mem: 4096 gpu: 2

cpu(prod): 16 cpu(dev): 16 mem: 131072 tag:ssd

@XebiaFr @YesWeScale#MesosUniversity

Roles

@XebiaFr @YesWeScale#MesosUniversity

Roles

• Partitionnement des ressources d’un slave

• Nommage arbitraires

• Abonnement des schedulers

@XebiaFr @YesWeScale#MesosUniversity

Executor ExecutorExecutor

Monitoring

Master

Slave Slave Slave Slave

Scheduler

@XebiaFr @YesWeScale#MesosUniversity

Executor ExecutorExecutor

Monitoring

Master

Slave Slave Slave Slave

Scheduler

Tâches

@XebiaFr @YesWeScale#MesosUniversity

Executor ExecutorExecutor

Monitoring

Master

Slave Slave Slave Slave

Scheduler

Tâches

@XebiaFr @YesWeScale#MesosUniversity

Executor ExecutorExecutor

Monitoring

Master

Slave Slave Slave Slave

Scheduler

Tâches

@XebiaFr @YesWeScale#MesosUniversity

Executor ExecutorExecutor

Monitoring

Master

Slave Slave Slave Slave

Scheduler

Tâches Évènements / Offres

@XebiaFr @YesWeScale#MesosUniversity

Executor ExecutorExecutor

Monitoring

Master

Slave Slave Slave Slave

Scheduler

Évènements / Offres

@XebiaFr @YesWeScale#MesosUniversity

Executor ExecutorExecutor

Monitoring

Master

Slave Slave Slave Slave

Scheduler

Tâches Évènements / Offres

@XebiaFr @YesWeScale#MesosUniversity

Executor ExecutorExecutor

Monitoring

Master

Slave Slave Slave Slave

Scheduler

Tâches Évènements / Offres

@XebiaFr @YesWeScale#MesosUniversity @XebiaFr @YesWeScale#MesosUniversity

@XebiaFr @YesWeScale#MesosUniversity

DevOps tu seras

@XebiaFr @YesWeScale#MesosUniversity

@XebiaFr @YesWeScale#MesosUniversity

C.A.L.M.S

@XebiaFr @YesWeScale#MesosUniversity

• Partager

• Monitorer

• Maintenir

1 ou 2 challenges

@XebiaFr @YesWeScale#MesosUniversity

Il y a un dev dans ton Cloud

@XebiaFr @YesWeScale#MesosUniversity

Can’t stop the bot

@XebiaFr @YesWeScale#MesosUniversity

Can’t stop the bot

@XebiaFr @YesWeScale#MesosUniversity @XebiaFr @YesWeScale#MesosUniversity

@XebiaFr @YesWeScale#MesosUniversity

Go Prod !

@XebiaFr @YesWeScale#MesosUniversity

Toile de tente ou

parachute ?

@XebiaFr @YesWeScale#MesosUniversity

Faiblesses

@XebiaFr @YesWeScale#MesosUniversity

Faiblesses

• Mesos master

• Scheduler

@XebiaFr @YesWeScale#MesosUniversity

Single point of truth

@XebiaFr @YesWeScale#MesosUniversity

Architecture pour de vrai

Master

Slave Slave Slave Slave

@XebiaFr @YesWeScale#MesosUniversity

Master

Architecture pour de vrai

Master

Slave Slave Slave Slave

Master

@XebiaFr @YesWeScale#MesosUniversity

Master

Architecture pour de vrai

Master

Slave Slave Slave Slave

MasterZookeeper

@XebiaFr @YesWeScale#MesosUniversity

Master

Architecture pour de vrai

Master

Slave Slave Slave Slave

MasterZookeeper

@XebiaFr @YesWeScale#MesosUniversity

Architecture pour de vrai

MasterStandby

ZookeeperMaster

Slave Slave Slave Slave

MasterStandby

@XebiaFr @YesWeScale#MesosUniversity

Architecture pour de vrai

MasterStandby

ZookeeperMaster

Slave Slave Slave Slave

MasterStandby

@XebiaFr @YesWeScale#MesosUniversity

Architecture pour de vrai

MasterStandby

ZookeeperMaster

Slave Slave Slave Slave

MasterStandby

@XebiaFr @YesWeScale#MesosUniversity

Architecture pour de vrai

MasterStandby

ZookeeperMaster

Slave Slave Slave Slave

MasterStandby

@XebiaFr @YesWeScale#MesosUniversity

Architecture pour de vrai

MasterStandby

ZookeeperMaster

Slave Slave Slave Slave

MasterStandby

@XebiaFr @YesWeScale#MesosUniversity

Architecture pour de vrai

MasterStandby

ZookeeperMaster

Slave Slave Slave Slave

MasterStandby

@XebiaFr @YesWeScale#MesosUniversity

Architecture pour de vrai

MasterStandby

ZookeeperMaster

Slave Slave Slave Slave

MasterStandby

Scheduler

@XebiaFr @YesWeScale#MesosUniversity

Architecture pour de vrai

MasterStandby

ZookeeperMaster

Slave Slave Slave Slave

MasterStandby

SchedulerScheduler Scheduler

@XebiaFr @YesWeScale#MesosUniversity

Architecture pour de vrai

MasterStandby

ZookeeperMaster

Slave Slave Slave Slave

MasterStandby

SchedulerScheduler Scheduler

@XebiaFr @YesWeScale#MesosUniversity

Architecture pour de vrai

MasterStandby

ZookeeperMaster

Slave Slave Slave Slave

MasterStandby

SchedulerScheduler Scheduler

@XebiaFr @YesWeScale#MesosUniversity

Architecture pour de vrai

MasterStandby

ZookeeperMaster

Slave Slave Slave Slave

MasterStandby

SchedulerScheduler Scheduler

@XebiaFr @YesWeScale#MesosUniversity

Architecture pour de vrai

MasterStandby

ZookeeperMaster

Slave Slave Slave Slave

MasterStandby

SchedulerSchedulerStandby

SchedulerStandby

@XebiaFr @YesWeScale#MesosUniversity

C’est un GO

@XebiaFr @YesWeScale#MesosUniversity

One more thing…

@XebiaFr @YesWeScale#MesosUniversity

Système de fichier

• HDFS

• Ceph

• ZFS

@XebiaFr @YesWeScale#MesosUniversity

Découverte de service

• DNS

• Load balancing

• Convention de ports

@XebiaFr @YesWeScale#MesosUniversity

Logs centralisé

@XebiaFr @YesWeScale#MesosUniversity @XebiaFr @YesWeScale#MesosUniversity

One Cluster Manager to bring them allAND in the datacenters bind them

@YourTwitterHandle@YourTwitterHandle@XebiaFr @YesWeScale#MesosUniversity

Q & A