Vedo Mesosphere che crea tutti i tipi di applicazioni su Mesos Framework come Hadoop, Kubernetes, ecc. Ma dal momento che ci sono le applicazioni Marathon per servizi di lunga durata, perché non usarlo? Per esempio. perché non installare i nodi Kubernetes su un gruppo di servizi Marathon? Perché implementare Kubernetes direttamente su Framework API? Perché la pianificazione è più efficiente in questo modo? La stessa domanda vale per l'implementazione di Jenkins, perché non eseguire Jenkins master/slaves in cima a Marathon ...Applicazioni di mesos, perché non usare la maratona per tutto?
risposta
Apache Mesos è un 2-level scheduler. Lo scopo di un framework è quello di fornire l'intelligenza della programmazione ad alto livello. Marathon offre la possibilità di pianificare un'attività nel cluster, accodare quell'attività per pianificare e ri-accodare attività che hanno avuto esito negativo. È ottimo per mantenere attivi i processi di lunga durata. È come lo init
del datacenter. In quanto tale, viene comunemente utilizzato per assicurarsi che altri framework siano attivi e in esecuzione come Kubernetes-Mesos o Jenkins.
Esistono molte applicazioni per le quali questo livello di pianificazione è insufficiente. Marathon può e spesso viene utilizzato per eseguire cose come Apache Kafka, tuttavia questo spesso non è sufficiente in molte modalità di errore. Inoltre, Marathon non si cura se l'attività viene eseguita più volte sullo stesso nodo, tuttavia l'esecuzione di più nodi Kafka sullo stesso slave è una cattiva idea. Usando Hadoop come un altro esempio (dato che lo hai riferito), HDFS ha diversi tipi di nodi che devono essere gestiti; NameNode, DataNode e JournalNode. La maratona non conosce l'ordine per avviarli, o se questi possono essere collocati sullo stesso nodo o meno. Non sa come ridimensionare questa applicazione. Il framework HDFS gestisce quell'intelligenza.
Per quanto riguarda l'efficienza della pianificazione, non sono sicuro che sia l'obiettivo. Apache Mesos è uno schedulatore a 2 livelli per un motivo. È uno scheduler a 2 livelli altamente efficiente. Il valore della schedulazione a 2 livelli è di astrarre il tipo di problemi che ho descritto sopra a uno schedulatore di livello superiore (che è definito da Mesos come framework). La maratona è ancora un ottimo modo per pianificare e garantire un'elevata disponibilità ad altri framework.
- 1. Come posso avviare lo scheduler di kafka usando la maratona in minimesos?
- 2. Memoria persistente per Apache Mesos
- 3. Mesos: mesos-slave offre porte aggiuntive
- 4. perché usare Akka eventhandler per la registrazione
- 5. Come utilizzare gli healthCheck della maratona?
- 6. Perché non tutto è assegnabile in JavaScript?
- 7. Perché non posso usare strerror?
- 8. Perché dovrei usare Drools?
- 9. Perché non dovrei usare atoi()?
- 10. Perché non dovrei usare Unity?
- 11. Perché non usare sempre psyco per il codice Python?
- 12. Quando devo usare i frammenti nelle applicazioni Android? Perché usare i frammenti?
- 13. Perché non posso usare scipy.io?
- 14. Endpoint di trasporto non connesso - Mesos Slave/Master
- 15. C'è qualche ragione per non usare UTF-8, 16, ecc. Per tutto?
- 16. Elimina un framework in Mesos
- 17. Perché usare Frammenti?
- 18. Vagrant non può usare la macchina richiesta perché è bloccata
- 19. Perché non smettiamo semplicemente di usare la parola JavaScript, in favore di ECMAScript?
- 20. Informazioni sull'allocazione delle risorse per i lavori spark su mesos
- 21. Perché usare scala.collection.immutable.Stack
- 22. Perché non usare a lungo per tutti i valori interi
- 23. Perché non usare sempre std :: forward?
- 24. perché usare javascript esterno?
- 25. Perché non dovrei usare System.out.println() in android
- 26. Perché non dovrei usare uguali con ereditarietà?
- 27. Perché non posso usare DynamicResource con DataGridColumn.CellStyle
- 28. Dove dovrei conservare globalmente/memorizzare i dati necessari per tutto il ciclo di vita delle applicazioni?
- 29. Perché non dovresti usare DISTINCT quando potresti usare GROUP BY?
- 30. Perché non usare semplicemente ajax per le richieste di pagina per caricare il contenuto della pagina?
Grazie! Anche se sono ancora un po 'confuso ... Quindi se volessi eseguire un server web (JBoss, Nginx, Tomcat ...) su Mesos, avrebbe senso eseguirlo su Marathon? Potrei beneficiare di tutte le funzionalità HA? – user1340582