Quali sono le differenze funzionali tra kubernetes, rancher e mesos?


16

Quali sono le principali differenze di funzionalità dei popolari strumenti di orchestrazione dei container kubernetes, rancher e mesos?

Cosa ti spingerebbe a scegliere l'uno rispetto all'altro?


Hmm, potrebbe essere troppo ampio così com'è. Se rimuovi il "etc" e cambi il titolo per chiedere solo di kuber / rancher / mesos in particolare, probabilmente sarà un buon Q.
Peter G

2
Ho modificato la domanda secondo i tuoi suggerimenti per renderla un po 'più limitata.
tayworm

Anche se sarei interessato a conoscere altri strumenti di orchestrazione che cambiano il gioco.
tayworm

Risposte:


16

Prima di tutto, Rancher contiene in realtà implementazioni di Kubernetes e Mesos al suo interno. Tuttavia, hanno creato il proprio sistema chiamato Cattle che è fortemente basato su Docker's Swarm. Toccherò questo nella sezione per Rancher.

In secondo luogo, poiché ognuna offre caratteristiche di base simili (bilanciamento del carico, isolamento delle risorse, ecc.), Proverò ad approfondire ciò che le rende diverse piuttosto che concentrarmi sulle differenze tra quelle caratteristiche comuni a meno che non siano significative.

kubernetes

Altamente focalizzato sulle prestazioni, anche con l'orchestrazione di archiviazione cloud (una caratteristica mancante da Mesos, anche se probabilmente c'è un plug-in per questo). Dispone di opzioni API per consentire il ridimensionamento automatico dell'utilizzo delle risorse in base alle esigenze dei singoli contenitori (e per il contrario se un contenitore non viene colpito duramente mentre altri lo sono).

Qualcosa di importante in Kubernetes è che, diversamente da altri software di orchestrazione di container, non fornisce una configurazione completa o alcun tipo di auto-guarigione completa. Invece, si concentra sulla distribuzione continua di più app con un semplice sistema di rollback a livello di app (di conseguenza potresti voler esaminare i micro-servizi quando la usi).

Ogni app è un piccolo pezzo e può essere distribuita / configurata individualmente. Indicano i loro documenti per affermare che Kubernetes non è un sistema PaaS (piattaforma come servizio) tradizionale in quanto privo di middleware per hardware o database virtuali e non crea la tua app da sola. È progettato per (come si dice) rimuovere la necessità di orchestrazione manuale del contenitore, invece di automatizzare il processo premendo continuamente verso uno stato di destinazione dell'app.

Mesos

Monolitico rispetto a Kubernetes. Si concentra sul quadro generale più dei singoli servizi, anche se consente ancora la gestione dei singoli servizi. Fornisce middleware integrato per cose come Spark, Hadoop, ecc. Il miglior utilizzo di Mesos coinvolgerà molti plugin poiché è progettato per essere facilmente esteso.

Se hai bisogno di un controllo approfondito sulla gestione della tua applicazione (nella misura in cui è disponibile un plug-in per quello che vuoi fare o hai un membro del team disposto a costruirne uno se non lo è) ti consigliamo di usare Mesos.

Allevatore (e bovini)

Potenzialmente l'opzione migliore in quanto è essa stessa un superset dei due precedenti, avendo un'implementazione di entrambi. Questo potrebbe anche essere visto come un aspetto negativo poiché una maggiore complicazione nel software di gestione raramente è una buona cosa e potrebbe portare a problemi imprevisti.

Rancher presenta un catalogo di applicazioni che consente la distribuzione con un clic, cosa che Kubernetes non ha a causa della sua filosofia di progettazione. Tuttavia, poiché Rancher ha un'implementazione di Kubernetes, puoi utilizzare Rancher se ritieni che queste funzionalità non siano presenti in Kubernetes.

Il bestiame si basa su un sistema di stack, in cui si raggruppano i servizi correlati. Ospita anche Rancher Compose, una funzionalità simile al servizio Docker con lo stesso nome. Questa è probabilmente la parte più interessante di Cattle, il resto è abbastanza standard (anche se la gestione di Secret è ancora in beta). Se hai esperienza con Docker Compose, dovresti leggerlo qui (io no, quindi probabilmente non sono la persona migliore per scriverne).

Risorse: " Cos'è Kubernetes? ", " Panoramica di Rancher ", " mesos.apache.org: 'Cos'è Mesos?' "

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.