Chúng tôi đang xem xét sử dụng OSGi được phân phối trong môi trường doanh nghiệp của chúng tôi.
Chúng tôi sẽ có các thiết lập sau:OSGi được phân phối - cách thích hợp để quản lý nhóm trên tất cả các vùng chứa là gì?
- 10 đến 100 Thùng chứa OSGi trên nhiều máy chủ cung cấp các dịch vụ khác nhau.
- Nhiều dịch vụ trong số này được cung cấp bởi nhiều hơn một vùng chứa.
- Một số dịch vụ này có thể yêu cầu nhất quán trên tất cả các vùng chứa (cùng một phiên bản được triển khai).
Cách thích hợp để quản lý vòng đời của gói (cài đặt, bắt đầu, cập nhật, dừng, gỡ cài đặt) trên tất cả các vùng chứa là gì?
Một số yêu cầu:
- Như có thể có rất nhiều container, tất cả trong số họ cần được xử lý với nhau; tức là khi tôi sắp cập nhật một gói, một lệnh sẽ cập nhật tất cả các vùng chứa nơi gói đó đã có.
- Lệnh phải lặp lại: đầu tiên thực hiện lệnh trên hệ thống kiểm tra và sau đó lặp lại cùng một lệnh trên hệ thống sản xuất khi kiểm tra hoàn tất.
Tôi đánh giá cao bất kỳ đề xuất nào về câu hỏi trên.
Trân trọng, Marton
Làm tất cả các thùng chứa OSGi này xây dựng một thùng chứa OSGi phân phối lớn nơi dịch vụ A trên máy chủ X có thể sử dụng dịch vụ B trên máy chủ Y giống như trên cùng một máy chủ X không? hoặc chúng được tách ra với nhau và bạn chỉ có 10-100 container OSGi bạn muốn duy trì? và tất cả chúng đều giống như 10-100 container OSGi có tất cả các gói giống nhau và bạn muốn gửi một lệnh (như "cài đặt") cho tất cả các thùng chứa OSGi này cùng một lúc? Hoặc là họ khác nhau rằng máy chủ X có một container OSGi với N bó và container OSGi trên máy chủ Y có một bộ khác nhau của bó? – Progman
Đây là một môi trường OSGi phân phối lớn: dịch vụ A trên máy chủ X có thể sử dụng dịch vụ B trên máy chủ Y. Mỗi vùng chứa có thể có một bộ gói khác nhau. Cảm ơn! –
Tôi sẽ cố gắng xây dựng hệ thống như vậy bằng cách sử dụng Apache Karaf (vì nó cung cấp cách dễ dàng để tự động hóa các lệnh và quản lý dễ dàng các gói). Tôi sẽ thiết lập nó với một kho lưu trữ được chia sẻ, vì vậy bất cứ khi nào tôi cập nhật một gói, tất cả các thời gian chạy sẽ nhận nó. Karaf được thiết kế để hỗ trợ thực hiện các lệnh từ các kịch bản lệnh, do đó không khó để viết các kịch bản lệnh cần thiết, điều này sẽ quản lý hệ thống. Tuy nhiên, bạn sẽ không nhận được giao dịch phân phối. Tại một số thời điểm, sẽ có các phiên bản không phù hợp và tôi không nghĩ rằng có một giải pháp cho điều này hiện tại. –