Cả hai dự án đều nhằm mục đích giúp dễ dàng triển khai & quản lý các ứng dụng bên trong các thùng chứa trong trung tâm dữ liệu hoặc đám mây của bạn.
Để triển khai các ứng dụng trên đỉnh Mesos, người ta có thể sử dụng Marathon hoặc Kubernetes cho Mesos.
Marathon là một hệ thống điều khiển và khởi tạo toàn cụm để chạy các dịch vụ Linux trong các nhóm và bộ chứa Docker. Marathon có một số tính năng triển khai chim hoàng yến khác nhau và là một dự án rất trưởng thành.
Marathon chạy trên đỉnh Mesos, một công cụ quản lý tài nguyên linh hoạt và có khả năng mở rộng cao. Marathon được chứng minh quy mô và chạy trong nhiều môi trường sản xuất.
Kho công nghệ Mesos và Mesosphere cung cấp một môi trường giống như đám mây để chạy các khối lượng công việc Linux hiện có, nhưng nó cũng cung cấp một môi trường riêng để xây dựng các hệ thống phân tán mới.
Mesos là một hạt nhân hệ thống phân tán, với API đầy đủ để lập trình trực tiếp với trung tâm dữ liệu. Nó trừu tượng hóa phần cứng cơ bản (ví dụ: kim loại trần hoặc VM) và chỉ để lộ tài nguyên. Nó chứa các nguyên hàm để viết các ứng dụng phân tán (ví dụ Spark ban đầu là Ứng dụng Mesos, Chronos, v.v.) như Truyền tin nhắn, Thực thi tác vụ, v.v. Do đó, các ứng dụng hoàn toàn mới được thực hiện. Apache Spark là một ví dụ cho một khung công tác mới (theo thuật ngữ Mesos được gọi là) được xây dựng ban đầu cho Mesos. Điều này cho phép phát triển rất nhanh - các nhà phát triển của Spark không phải lo lắng về việc kết nối mạng để phân phối các nhiệm vụ giữa các nút vì đây là nguyên tắc cốt lõi trong Mesos.
Theo hiểu biết của tôi, Kubernetes không được sử dụng trong Google trong các triển khai sản xuất ngày nay. Để sản xuất, Google sử dụng Omega / Borg, tương tự như mô hình Mesos / Marathon. Tuy nhiên, điều tuyệt vời khi sử dụng Mesos làm nền tảng là cả Kubernetes và Marathon đều có thể chạy trên đỉnh của nó.
Thêm tài nguyên về Marathon:
https://mesosphere.github.io/marathon/
Video:
https://www.youtube.com/watch?v=hZNGST2vIds