2015-01-11 17 views
5

Tôi đã xem xét kết hợp Mesos, Marathon và Chronos để lưu trữ một số lượng lớn các trang web. Trong đầu của tôi, tôi có thể gõ một vài lệnh vào máy tính xách tay của mình, và chờ khoảng 30 phút cho thứ để xây dựng và triển khai.Mesos, Marathon, đám mây và 10 trung tâm dữ liệu - Cách nói chuyện với nhau?

Vấn đề duy nhất của tôi, là tài nguyên của tôi nằm rải rác trên nhiều trung tâm dữ liệu, nhiều tài khoản đám mây và khoảng 6 địa điểm tại cơ sở. Tôi không hiểu tại sao tôi không thể kiểm soát tất cả chúng từ máy tính xách tay của tôi - (Tôi có vấn đề về quyền lực và kiểm soát nghiêm trọng khi nói đến phần cứng của mình!)

Tôi nghĩ rằng cách tiếp cận tốt nhất của tôi là xây dựng bộ não trong đám mây, (sở thú và ít nhất một chủ), và sau đó thêm vào các trung tâm dữ liệu riêng biệt, nhưng tôi chưa thấy bất kỳ ví dụ nào về cụm phân tán, nơi không phải tất cả các nút đều có thể nói chuyện với nhau.

Có ai có thể giới thiệu cách thực hiện việc này không?

+2

Bạn đã thấy máy Docker chưa? https://github.com/docker/machine Không hoàn toàn những gì bạn đang yêu cầu, nhưng nó cho phép bạn kiểm soát nhiều máy chủ Docker từ máy tính xách tay của bạn. –

+0

Tôi đã thấy Docker Machine, nó không thực sự cho tôi quyền tự chủ mà tôi đang tìm kiếm, nhưng tôi tin rằng tôi có thể phải có nhiều cụm ... –

Trả lời

0

Tôi đã có một thiết lập như thế này, mà tôi muốn giới thiệu: Mã

  • Nguồn, các kịch bản triển khai và dockerfiles trong GIT
  • Mỗi webservice có thư mục riêng của mình và đi kèm cùng với một dockerfile để container hóa nó
  • Một kịch bản xây dựng (shell script chạy docker builds) xây dựng tất cả các vùng chứa docker, trong đó tất cả các hình ảnh được đẩy vào kho lưu trữ hình ảnh docker
  • Triển khai ansible triển khai tất cả các thùng chứa từ xa đến một bộ VPS . (Bạn sử dụng quy trình triển khai của riêng bạn, phù hợp với mesos/marathon)
  • Là một phần của quy trình, một môi giới activeMQ được triển khai lên đám mây (yep, trong vùng chứa). Trong khi triển khai, nó cung cấp mỗi nút với URL của nhà môi giới mà họ cần kết nối. Trong thiết lập của bạn, bạn thay vào đó có thể sử dụng ZooKeeper hoặc etcd chẳng hạn.

Tôi cũng đang sử dụng jenkins để tự động xây dựng lại và chạy triển khai bất cứ khi nào có GIT cam kết, nhưng chúng cũng có thể được thực hiện thủ công.

Việc xây dựng lại nhanh như chớp và triển khai không mất nhiều thời gian. Tôi có thể sao chép tất cả mọi thứ tôi có trong kho của mình vô tận và có cấu hình không.

Để có thể thực hiện triển khai mới, tất cả những gì tôi cần là một tập hợp các VPS với các trình tiện ích docker và một số kho dữ liệu để lưu giữ lâu bền. Im không chắc chắn nếu đây là một cái gì đó mà bạn có thể thay thế bằng mesos, nhưng ansible chắc chắn sẽ có thể cài đặt một đám mây mesos cho bạn vào phần cứng của bạn.

Tất cả ghi nhật ký đang được thực hiện với nhật ký, đến máy chủ ghi nhật ký trung tâm.

0

tôi đã thiết lập 3 tổng thể, 5 nô lệ, 1 mesos cửa ngõ/marathon/thiết lập Docker và tài liệu ở đây https://github.com/debianmaster/Notes/wiki/Mesos-marathon-Docker-cluster-setup-on-RHEL-7-with-three-master

này có thể giúp bạn trong việc tìm hiểu cân bằng tải/nhân rộng trên các máy khác nhau trong trung tâm dữ liệu của bạn

1) thạc sỹ cũng có thể được sử dụng như nô lệ 2) mesos HAProxy cầu kịch bản có thể được sử dụng để phát hiện dịch vụ của các dịch vụ mới được tạo ra trong cụm 3) cửa ngõ haproxy được cập nhật mỗi phút với dịch vụ mới được tạo ra

tài liệu này có 1) master/slave thiết lập 2) thiết lập haproxy tự động tải lại 3) thiết lập dockers 4) Ví dụ chương trình dịch vụ

0

Bạn nên sử dụng Terraform để dàn xếp cơ sở hạ tầng của bạn như mã.

Terraform có rất nhiều nhà cung cấp cho phép bạn quản lý các tài nguyên khác nhau trên nhiều dịch vụ đám mây và/hoặc tài nguyên trần như vSphere.

Bạn có thể bắt đầu với Getting Started Guide.

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