Quỹ tốt nhất để triển khai Mesos


9

Chúng tôi hiện đang trong quá trình thiết kế kiến ​​trúc của thiết lập đám mây Apache Mesos mới của chúng tôi. Mục tiêu là để thống nhất các hệ thống của chúng tôi bằng cách di chuyển các ngăn xếp khác nhau trên cùng một kiến ​​trúc. Khối lượng công việc chính là các phân tích dữ liệu lớn bằng Apache Spark và cơ sở hạ tầng công ty của chúng tôi bao gồm máy chủ web, máy chủ thư, v.v.

Ý tưởng là để chạy các dịch vụ web của chúng tôi trong các container Docker chạy trên một trong những lịch trình có sẵn cho Mesos (Marathon / Chronos, Aurora hoặc Singularity). Do đó, đây sẽ là nhóm khung Mesos đầu tiên. Bên cạnh nó, chúng ta sẽ có khung công tác Spark Spark và một số khung cơ sở dữ liệu để lưu trữ dữ liệu. Đây sẽ là nhóm thứ hai của khung Mesos. Chúng tôi sẽ chọn các chi tiết cụ thể sau khi chạy tất cả chúng song song để thử nghiệm.

Chúng tôi gặp khó khăn khi quyết định, tuy nhiên, trên cơ sở nào để điều hành Mesos. Lý tưởng nhất, chúng tôi muốn chạy nó càng gần kim loại càng tốt. Chúng tôi cũng muốn sử dụng giải pháp phối hợp để đảm bảo rằng các trình nền của Mesos & framework luôn chạy / khởi động lại khi không thành công. Các tùy chọn chúng tôi đang xem xét như sau:

1) Chạy Mesos & các khung làm bộ chứa docker trong một hệ điều hành tối thiểu. Về mặt này, chúng tôi hiện đang nghiêng về CoreOS và Hạm đội.

2) Chạy Mesos & các khung trực tiếp trên các máy chủ Ubuntu / Debian. Đối với tùy chọn này, chúng tôi đang nghiêng về Foreman và Puppet.

Đối với câu hỏi, chúng tôi đang tìm cách xác định giải pháp theo thứ tự quan trọng:

  • là ít phức tạp nhất để cấu hình
  • là cách dễ nhất để duy trì và cập nhật
  • có ít chi phí nhất

Chúng tôi chưa từng làm việc với CoreOS trước đây, nhưng đó là tùy chọn mà chúng tôi dường như đang hướng tới. Một vấn đề lớn (chủ quan) tôi gặp phải đó là chúng tôi chạy Mesos trên các container Docker và sau đó chúng tôi chạy các container Docker trên Mesos. Điều này có vẻ "ô uế" và sai đối với tôi. Là sự cân nhắc này mà không có công đức?

Một suy nghĩ tương tự liên quan đến sự dư thừa giữa các lớp. Để giải thích tôi đến từ đâu, tôi thích hơn nếu Mesos là một hệ điều hành thực sự chỉ chạy đúng trên kim loại. Dường như cho dù bạn sử dụng cơ sở nào, cuối cùng bạn cũng có chức năng dự định tương tự trên nhiều lớp kiến ​​trúc (ví dụ CoreOS & Fleet & SystemD == Mesos & Marathon & Chronos). Đây có phải là điều không thể tránh khỏi?

Có những lựa chọn tốt khác để chạy lớp bên dưới Mesos mà chúng tôi không xem xét, ghi nhớ các tiêu chí của chúng tôi?


Điều này nghe có vẻ phức tạp. Sự hấp dẫn của Mesos trong bối cảnh này là gì?
ewwhite

Mesos bổ sung tốt dữ liệu lớn / công cụ HPC, như Spark hoặc thậm chí Hadoop, nhưng tôi không thấy giá trị của việc đặt mọi thứ theo nó, đặc biệt là các dịch vụ web hoặc thư.
Michael Hampton

@ewwhite Sự hấp dẫn trong bối cảnh này là chúng tôi có thể phân phối các tài nguyên phần cứng có sẵn giữa tất cả các ứng dụng mà không phải tách biệt cụm của chúng tôi. Nếu chúng ta chạy hai cấu hình, chúng ta sẽ phải phân chia tài nguyên giữa chúng theo cách thủ công.
awishformore

@MichaelHampton Chúng tôi tin rằng kiến ​​trúc Mesos là con đường phía trước cho điện toán đám mây, nhưng tôi không khẳng định bằng bất kỳ phương tiện nào đó là câu trả lời duy nhất. Tuy nhiên, rõ ràng là việc quản lý theo cụm dễ dàng hơn so với việc quản lý cùng một cụm cộng với một số nội dung bổ sung ở bên cạnh.
awishformore

1
Điều này có thể đáng xem: mesosphere.com/product - phiên bản doanh nghiệp rõ ràng sẽ có khả năng cung cấp trên kim loại trần.
Mary

Câu trả lời:


2

Cấu hình và chạy các dịch vụ trong Mesos có thể là một hoạt động phức tạp hoặc dễ dàng và trước tiên bạn nên xác định một lược đồ các dịch vụ bạn muốn chạy theo nó, tùy thuộc vào nhu cầu và mục tiêu của bạn, để có được linh hồn bạn muốn.

Tôi chạy một thiết lập của> 70 máy và nhiều dịch vụ khác nhau trong HAProxy để cân bằng tải động với Mesos-DNS và Marathon, cổng Api, Chronos, Jenkins, Docker, Sưu tầm và Graphite, ...

Bây giờ để trả lời câu hỏi trực tiếp của bạn:

  • Mesos ít phức tạp nhất để định cấu hình bằng bản phân phối Linux "yêu thích" mà bạn quen thuộc nhất.
  • Dễ nhất để duy trì là một lần nữa, bản phân phối mà bạn quen thuộc nhất.
  • Về chi phí hoạt động, Mesos là một hệ thống phần mềm sử dụng các thư viện hệ điều hành cơ bản và các chức năng phần mềm khác bên cạnh nó và có Mesos là một hệ điều hành (hoạt động cả với phần cứng và phần mềm ...) là một hình ảnh hoàn toàn sai.

Vì vậy, câu trả lời tốt nhất của tôi dành cho bạn là sử dụng bản phân phối Linux yêu thích của bạn và đặt Mesos hoặc nếu bạn muốn tìm hiểu một cái gì đó mới và có thể nhanh chóng và dễ dàng, hãy sử dụng DCOSCoreOS (nguồn mở) .

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.