Jaka jest różnica między Mezos Apache i Kubernetes Google

Jaka jest dokładnie różnica między Mezos Apache i Kubernetes Google? Rozumiem, że oba są Oprogramowaniem do zarządzania klastrami serwerów. Czy ktoś może sprecyzować, gdzie są główne różnice-kiedy które ramy byłyby preferowane?

Dlaczego chcesz używać Kubernetes na szczycie mezosfery ?

Author: Jonas, 2014-11-02

7 answers

Kubernetes to projekt open source, który wprowadza możliwości zarządzania klastrami "Google style" do świata maszyn wirtualnych lub scenariuszy "na metal". Działa bardzo dobrze w nowoczesnych środowiskach systemu operacyjnego (takich jak CoreOS lub Red Hat Atomic), które oferują lekkie "węzły" obliczeniowe, które są zarządzane za Ciebie. Jest napisany w języku Golang i jest lekki, modułowy, przenośny i rozszerzalny. My (zespół Kubernetes) współpracujemy z wieloma różnymi firmami technologicznymi (w tym Mesosphere, którzy są kuratorami projektu Mesos open source), aby ustanowić Kubernetes jako standardowy sposób interakcji z klastrami obliczeniowymi. Chodzi o to, aby odtworzyć wzorce, które widzimy, że ludzie muszą budować aplikacje klastrowe w oparciu o nasze doświadczenie w Google. Niektóre z tych pojęć obejmują:

  • pods - sposób grupowania pojemników razem
  • kontrolery replikacji - sposób na obsługę cyklu życia kontenerów
  • etykiety - sposób znajdowania i odpytywania kontenerów oraz
  • services - zbiór kontenerów pełniących wspólną funkcję.

Więc z samym Kubernetes będziesz miał coś, co jest proste, łatwe do uruchomienia, przenośne i rozszerzalne, które dodaje "klaster" jako rzeczownik do rzeczy, które zarządzasz w najlżejszy możliwy sposób. Uruchom aplikację na klastrze i przestań martwić się o pojedynczą maszynę. W tym przypadku klaster jest elastycznym zasobem, podobnie jak VM. Jest to logiczna jednostka obliczeniowa. Podkręć, użyj, Zmień rozmiar, ścisz szybko i łatwo.

W przypadku produktów Mesos istnieje spora nakładanie się na siebie pod względem podstawowej wizji, ale produkty znajdują się w zupełnie różnych punktach cyklu życia i mają różne słodkie punkty. Mesos jest rozproszonym jądrem systemów, które łączy ze sobą wiele różnych maszyn w logiczny komputer. Powstał z myślą o świecie, w którym posiadasz wiele fizycznych zasobów, aby stworzyć duży statyczny klaster komputerowy. Wspaniałą rzeczą jest to, że wiele nowoczesnych skalowalnych aplikacji do przetwarzania danych działa dobrze na Mezos (Hadoop, Kafka, Spark) i jest to miłe, ponieważ możesz je wszystkie uruchomić na tej samej podstawowej puli zasobów, wraz z aplikacjami z kontenera new age. Jest nieco cięższy niż projekt Kubernetes, ale jest coraz łatwiejszy do zarządzania dzięki pracy ludzi takich jak Mezosfera.

Teraz to, co robi się naprawdę interesujące, to to, że Mezos jest obecnie jest przystosowany do dodawania wielu koncepcji Kubernetes i obsługi interfejsu API Kubernetes. Będzie to więc brama do uzyskania większej liczby możliwości aplikacji Kubernetes (high availability master, bardziej zaawansowana semantyka planowania, możliwość skalowania do bardzo dużej liczby węzłów), jeśli ich potrzebujesz, i dobrze nadaje się do uruchamiania obciążeń produkcyjnych (Kubernetes jest nadal w stanie alfa).

Na pytanie, Zwykle mówię:

  1. Kubernetes to świetne miejsce, aby zacząć, jeśli jesteś nowy jest to najszybszy, najłatwiejszy i najlżejszy sposób, aby zacząć eksperymentować z rozwojem zorientowanym na klastry. Oferuje bardzo wysoki poziom przenośności, ponieważ jest obsługiwany przez wielu różnych dostawców (Microsoft, IBM, Red Hat, CoreOs, MesoSphere, VMWare itp.).

  2. Jeśli masz istniejące obciążenia (Hadoop, Spark, Kafka itp.), Mesos daje Ci framework, który pozwala przeplatać te obciążenia ze sobą i mieszać je w kilka nowych rzeczy, w tym aplikacji Kubernetes.

  3. Mesos oferuje zawór spustowy, jeśli potrzebujesz możliwości, które nie zostały jeszcze zaimplementowane przez społeczność w ramach usługi Kubernetes.

 537
Author: Craig Mcluckie,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-05-01 22:09:01

Oba projekty mają na celu ułatwienie wdrażania i zarządzania aplikacjami w kontenerach w centrum danych lub chmurze.

Aby wdrożyć aplikacje na Mezos, można użyć Marathon lub Kubernetes dla Mezos.

Marathon jest klastrowym systemem init i sterowania do uruchamiania usług Linuksa w cgroups i kontenerach Docker. Marathon posiada wiele różnych funkcji i jest bardzo dojrzałym projektem.

Maraton biegnie na szczycie Mezos, czyli wysoce skalowalny, przetestowany bojowo i elastyczny Menedżer zasobów. Marathon jest sprawdzony w skali i działa w wielu środowiskach produkcyjnych.

Stos technologii Mesosphere i Mesosphere zapewnia środowisko podobne do chmury do uruchamiania istniejących obciążeń Linux, ale zapewnia również natywne środowisko do budowy nowych systemów rozproszonych.

Mesos jest jądrem systemów rozproszonych, z pełnym API do programowania bezpośrednio w centrum danych. Zawiera podstawowe elementy sprzętowe (np. bare metal lub VMs) i po prostu eksponuje zasoby. Zawiera podstawowe elementy do pisania aplikacji rozproszonych (np. Spark był pierwotnie aplikacją Mesos, Chronos itp.) takie jak przekazywanie wiadomości, wykonywanie zadań itp. Dzięki temu możliwe są zupełnie nowe zastosowania. Apache Spark jest jednym z przykładów nowego (w żargonie Mesos zwanego) frameworku, który został zbudowany pierwotnie dla Mesos. Umożliwiło to naprawdę szybki rozwój-twórcy Spark nie musieli martwić się o sieć, aby dystrybuować zadania wśród węzłów, gdyż jest to rdzeń prymitywny w mezozoiku.

Według mojej wiedzy Kubernetes nie jest obecnie używany w Google we wdrożeniach produkcyjnych. Do produkcji Google używa Omega / Borg, który jest znacznie bardziej podobny do modelu Mesos / Marathon. Jednak wspaniałą rzeczą w używaniu Mezos jako podstawy jest to, że zarówno Kubernetes, jak i Marathon mogą biegać na nim.

Więcej zasobów o Maraton:

Https://mesosphere.github.io/marathon/

Video: https://www.youtube.com/watch?v=hZNGST2vIds

 70
Author: mesospherian,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-07-02 22:26:01

Kubernetes i Mezos są połączeniem stworzonym w niebie. Kubernetes umożliwia abstrakcję Pod (grupy kontenerów zlokalizowanych wspólnie) wraz z etykietami Pod do wykrywania usług, równoważenia obciążenia i kontroli replikacji. Mesos zapewnia drobnoziarniste alokacje zasobów dla pods między węzłami w klastrze i może sprawić, że Kubernetes będzie dobrze współpracować z innymi frameworkami działającymi na tych samych zasobach klastra.

From readme of kubernetes-Mezos

 37
Author: herodot,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-01-21 08:01:52

Mesos i Kubernetes mogą być używane do zarządzania klastrem maszyn i abstrakcji sprzętu.

Mesos, z założenia, nie dostarcza ci schedulera (do decydowania gdzie i kiedy uruchamiać procesy i co robić, jeśli proces się nie powiedzie), możesz użyć czegoś takiego jak Marathon lub Chronos, lub napisać swój własny.

Kubernetes zrobi dla Ciebie planowanie po wyjęciu z pudełka i może być używany jako harmonogram dla Mezos(popraw mnie, jeśli się mylę!), gdzie można użyć razem. Mesos może mieć wiele schedulerów współdzielących ten sam klaster, więc teoretycznie można uruchamiać kubernetes i chronos razem na tym samym sprzęcie.

Bardzo uproszczone: jeśli chcesz mieć kontrolę nad tym, jak zaplanowane są Twoje kontenery, przejdź do Mezos, w przeciwnym razie Kubernetes rocks.

 18
Author: user2851943,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-03-02 10:49:33

Podoba mi się ten krótki filmik tutaj materiał do nauki Mezos

Z gołymi metalowymi klastrami, będziesz musiał odradzać stosy, takie jak HDFS, SPARK, MR itp... więc jeśli uruchamiasz zadania związane z nimi, używając tylko zarządzania klastrami metali, będzie dużo zimnego czasu rozpoczęcia.

Z Mezos, można zainstalować te usługi na gołych metali i można uniknąć przywołać czas tych usług bazowych. To jest coś, co Mezos robi dobrze. i mogą być wykorzystywane przez kubernetes / align = "left" /

 5
Author: zinking,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-02-28 10:50:58

"rozumiem, że oba są Oprogramowaniem do zarządzania klastrami serwerów."

To stwierdzenie nie jest do końca prawdą. Kubernetes nie zarządza klastrami serwerów, ale organizuje kontenery, dzięki czemu współpracują ze sobą przy minimalnym wysiłku i ekspozycji. Kubernetes pozwala zdefiniować części aplikacji jako " pods "(jeden lub więcej kontenerów), które są dostarczane przez" wdrożenia "lub" zestawy demonów " (i kilka innych) i wystawione na świat zewnętrzny za pośrednictwem usług. Jednak Kubernetes nie radzi sobie z sam klaster(istnieją narzędzia, które mogą dostarczać, konfigurować i skalować klastry, ale nie są one częścią samego Kubernetes).

Mesos z drugiej strony zbliża się do "zarządzania klastrami", ponieważ może kontrolować, co działa gdzie, ale nie tylko pod względem kontenerów harmonogramowania. Mesos zarządza również samodzielnym oprogramowaniem działającym na serwerach klastrowych. Mimo że jest on najczęściej używany jako alternatywa dla Kubernetes, Mesos może z łatwością współpracować z Kubernetes, gdy funkcjonalność nakładają się na wiele obszarów, Mezos może zrobić więcej (ale na nakładających się częściach Kubernetes wydają się być lepsze).

 3
Author: Andrei Dascalu,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-01-22 10:35:21

Mesos i Kubernetes to narzędzia orkiestracji kontenerów.

Kiedy mówisz "Google Kubernetes"?

Silnik Google Kubernetes zapewnia zarządzane środowisko do wdrażania, zarządzanie i skalowanie aplikacji kontenerowych za pomocą Google Infrastruktura.

Kubernetes to otwarty system do automatyzacji wdrażania, skalowania i zarządzania aplikacjami kontenerowymi."Kubernetes został zbudowany przez Google w oparciu o ich doświadczenie w obsłudze kontenerów w produkcja w ciągu ostatniej dekady.

Główne składniki w klastrze Kubernetes to:

Pods - sposób na grupowanie kontenerów Kontrolery replikacji-sposób na obsługę cyklu życia kontenerów etykiety - sposób na wyszukiwanie i odpytywanie kontenerów oraz usługi - zbiór kontenerów spełniających wspólną funkcję

Mesos jest projektem open-source do zarządzania klastrami Apache, zaprojektowanym w celu skalowania do bardzo dużych klastrów, od setek do tysięcy hostów. Mezos wspiera różnorodne rodzaje obciążeń, takich jak zadania Hadoop, aplikacje natywne w chmurze itp. Daje możliwość uruchamiania zarówno kontenerowych, jak i nie-kontenerowych obciążeń w sposób rozproszony.

Początkowo został napisany jako projekt badawczy w Berkeley, a później został przyjęty przez Twitter jako odpowiedź na Borg Google (poprzednika Kubernetes). Aby zwalczyć jego wysoki stopień złożoności (Mezos jest super skomplikowane i trudne do zarządzania!), Mezosfera pojawiła się na zdjęciu, aby spróbować zrobić Mezosferę w coś, co zwykli ludzie mogą wykorzystać.

Mesosphere dostarczył znakomitą "wtyczkę" Marathon do Mesos, która zapewnia użytkownikom łatwy sposób zarządzania orkiestracją kontenerów nad Mezos.

W połowie 2016 roku wprowadzono DC / OS ( Data Center Operating System) - projekt open source wspierany przez Mesosphere, który jeszcze bardziej upraszcza system Mesos i pozwala wdrożyć własny Klaster Mesos z Marathon w ciągu kilku minut.

Teraz, jeśli porównamy kubernetes i Mezos (DC/OS)

Kubernetes jest menedżerem klastrów dla kontenerów, podczas gdy mesos jest rozproszonym jądrem systemu, które sprawi, że Twój klaster będzie wyglądał jak jeden gigantyczny system komputerowy dla wszystkich obsługiwanych frameworków i aplikacji, które są zbudowane do uruchamiania na mesos.

Mesos narodził się dla świata, w którym posiadasz wiele fizycznych zasobów, aby stworzyć wielki statyczny klaster obliczeniowy. Wspaniałą rzeczą jest to, że wiele nowoczesnych skalowalnych aplikacji do przetwarzania danych działa bardzo dobrze na Mezos( Hadoop, Kafka, Spark) i jest to miłe, ponieważ możesz uruchomić je wszystkie na tej samej podstawowej puli zasobów, wraz z pakietami aplikacji new age container.

Gromada Mezos biegnie również obok gromady Maraton. Marathon, stworzony przez Mesosphere, został zaprojektowany do uruchamiania, monitorowania i skalowania długotrwałych aplikacji, w tym aplikacji natywnych w chmurze. Klienci wchodzą w interakcję z Marathon poprzez REST API.

Należy również zauważyć, że można uruchamiać Kubernetes na serwerze DC / OS i planować kontenery z nim zamiast używać Maratonu. Oznacza to największą różnicę - DC / OS, jak sama nazwa wskazuje, jest bardziej podobny do systemu operacyjnego niż Framework orkiestracji. Można na nim uruchamiać niestandardowe, stanowe obciążenia. Planowanie kontenerów jest obsługiwane przez Maraton.

 2
Author: initvik,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-06-28 08:55:29