Điểm:0

Hàng đợi đại biểu RabbitMQ - có nút tự động tham gia lại

lá cờ ma

tôi đang khám phá Hàng đợi đại biểu RabbitMQ để cải thiện HA cho một số dịch vụ trong cụm Kubernetes. Khi tôi đang đọc, chúng được thiết kế có tính đến an toàn dữ liệu.

Tuy nhiên, các chương "Quản lý bản sao" Những trạng thái:

Bản sao của hàng đợi đại biểu được quản lý rõ ràng bởi người vận hành. Khi một nút mới được thêm vào cụm, nó sẽ lưu trữ không có hàng đợi túc số bản sao trừ khi toán tử thêm nó vào thành viên một cách rõ ràng (bản sao) danh sách một hàng đợi đại biểu hoặc một tập hợp các hàng đợi đại biểu.

Do đó, có vẻ như, trong trường hợp gián đoạn (đặc biệt là không tự nguyện), tình huống sau có thể phát sinh (đối với cụm 3 nút):

  1. sau khi gián đoạn, một nút sẽ ngừng hoạt động: hai nút còn lại vẫn chiếm đa số và sẽ "giữ cho hàng đợi tồn tại", có thể bầu ra một thủ lĩnh mới;
  2. kubernetes sẽ cung cấp một nút (pod) mới để thay thế nút bị lỗi; nút mới sẽ tự động tham gia lại cụm RabbitMQ, nhưng
  3. trừ khi người điều hành can thiệp thủ công, nút mới sẽ không phải đóng góp vào hàng đợi đại biểu hiện có;
  4. đối với cụm 3 nút, điều này có nghĩa là không còn HA nữa: nếu một lúc nào đó trong tương lai, một trong các nút khác bị lỗi, thì hàng đợi sẽ bị mất;

Có cách nào để giảm thiểu kịch bản này? Chẳng hạn, có thể có các nút tự động tham gia lại tất cả các cụm hàng đợi đại biểu hiện có không? Có thể bằng cách duy trì một danh sách "lệnh khởi động" (chạy sau khi RabbitMQ bắt đầu) mà chúng ta có thể thêm tham gia lại các lệnh?

Mikołaj Głodziak avatar
lá cờ id
Bạn đã sử dụng phiên bản Kubernetes nào và bạn đã thiết lập cụm như thế nào? Bạn đã sử dụng cài đặt kim loại trần hoặc một số nhà cung cấp đám mây? Điều quan trọng là tái tạo vấn đề của bạn.
Điểm:1
lá cờ br

Nhóm RabbitMQ đặc biệt khuyến nghị sử dụng toán tử Kubernetes chính thức - https://www.rabbitmq.com/kubernetes/operator/operator-overview.html

Bên cạnh đó, đây là những gì chuyên gia k8s địa phương nói:

Kubernetes sẽ không xóa ngẫu nhiên một ổ đĩa liên tục - nếu nút bị hỏng vì lý do nào đó, nó sẽ bắt đầu với cùng tên và cùng dữ liệu

Miễn là cùng một tên và dữ liệu được sử dụng, nút "mới" sẽ tham gia giống như nút cũ.

Có thể có những tình huống cần can thiệp thủ công nhưng chúng không thường xuyên như bạn nghĩ.


GHI CHÚ: nhóm RabbitMQ giám sát người dùng thỏmq danh sách gửi thư và đôi khi chỉ trả lời các câu hỏi trên StackOverflow.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.