2014-10-27 18 views
16

Các nút chính của Apache Mesos có thể được đặt trên cùng một máy với các nút 'nô lệ' của Mesos không? Tương tự (đối với sự sẵn sàng cao (HA) triển khai), các nút Apache Zookeeper có được sử dụng trong cuộc bầu cử tổng thể của Mesos được triển khai trên cùng một máy như các nút nô lệ của Mesos không?Nút Mesos 'master' và 'slave' có thể được triển khai trên cùng một máy không?

Mesos khuyến cáo 3 'thạc sĩ' được sử dụng cho các triển khai HA và Zookeeper đề xuất 5 nút được sử dụng cho hệ thống bầu cử đại biểu của họ. Nó sẽ được tốt đẹp để có các dịch vụ này chạy dọc theo các quy trình 'nô lệ' Mesos bên thay vì cam kết 8 máy để có hiệu quả 'phi sản xuất' nhiệm vụ.

Nếu thiết lập như vậy khả thi, ưu điểm/khuyết điểm của thiết lập đó là gì?

Cảm ơn!

Trả lời

30

Bạn chắc chắn có thể chạy quy trình chính, phụ và zk trên cùng một nút. Bạn thậm chí có thể chạy nhiều quy trình chủ và nô lệ trên cùng một nút, miễn là bạn cung cấp cho chúng mỗi cổng duy nhất, nhưng điều đó chỉ hữu ích cho một cụm thử nghiệm. Thông thường chúng tôi khuyên bạn nên chạy ZK trên các nút giống như các bậc thầy của bạn, nhưng nếu bạn có thêm ZK, bạn chắc chắn có thể chạy chúng trên nô lệ, hoặc trộn và khớp như bạn thấy phù hợp, miễn là tất cả chủ/nô lệ/các nút khung có thể tiếp cận các nút ZK, và tất cả các nô lệ có thể đạt tới các bậc thầy.

Đối với cụm nhỏ hơn (< 10 nút) có thể có ý nghĩa khi chạy một quy trình nô lệ trên mỗi máy chủ, đặc biệt là vì các chế độ chờ sẽ không hoạt động nhiều. Ngay cả một chủ hoạt động cho một cụm nhỏ chỉ sử dụng một lượng nhỏ cpu, bộ nhớ và tài nguyên mạng. Chỉ cần đảm bảo rằng bạn điều chỉnh --resources trên slave đó để tính đến việc sử dụng tài nguyên của master.

Khi cụm của bạn phát triển lớn hơn (đặc biệt là> 100 nút) lưu lượng mạng đến/từ trình chủ cũng như việc sử dụng CPU/bộ nhớ của nó trở nên đủ quan trọng khiến bạn không muốn chạy một trình mô phỏng mesos trên cùng một nút bậc thầy. Sẽ tốt hơn nếu bạn định vị ZK với chủ của mình ngay cả ở quy mô lớn.

Bạn đã không yêu cầu cụ thể, nhưng tôi cũng sẽ thảo luận vị trí để chạy lịch trình khung của bạn (ví dụ: Spark, Marathon hoặc Chronos). Chúng có thể được đặt cùng với bất kỳ thành phần nào khác, nhưng chúng chỉ thực sự cần có khả năng tiếp cận các nút chủ và zk, vì mọi giao tiếp với nô lệ đều đi qua chủ. Một số khách hàng chạy lịch trình trên các nút chính, một số chạy chúng trên các nút cạnh (vì vậy người dùng không có quyền truy cập vào nô lệ) và một số khác sử dụng các khung công tác như Marathon để chạy các trình lập lịch khác trên nô lệ làm nhiệm vụ Mesos.

Các vấn đề liên quan