Apache Kafka loại bỏ sự phụ thuộc vào ZooKeeper
(confluent.io)-
Do sử dụng ZooKeeper làm kho lưu trữ metadata bên ngoài nên phát sinh các vấn đề như trùng lặp, kém hiệu quả và giới hạn khả năng mở rộng
-
KIP-500: "Kafka on Kafka"
→ Quản lý metadata trực tiếp bên trong Kafka và lưu vào các partition
→ Xem metadata như một log
→ Tăng tốc độ tạo/xóa topic: khác với ZooKeeper, việc tạo topic mới trong metadata partition kết thúc bằng một thao tác O(1)
→ Một cluster đơn có thể hỗ trợ hơn một triệu partition
- Lộ trình
→ Vẫn còn các công cụ quản trị giao tiếp trực tiếp với ZooKeeper. Dự kiến sẽ cung cấp API để thay thế chúng
→ Vì sẽ phát sinh sự phụ thuộc giữa metadata partition và controller, nên trong KIP-595 dự kiến sẽ triển khai self-managed metadata quorum bằng giao thức Raft
→ Chế độ KIP-500 chạy Kafka không cần ZooKeeper: ban đầu sẽ chưa hỗ trợ đầy đủ, nên sẽ tạm thời dùng ZooKeeper cùng với legacy mode
→ KIP-500 là một "Bridge Release". Đây là bản nâng cấp trung gian để có thể chuyển đổi không downtime sang phiên bản hậu KIP-500, nơi hỗ trợ ZooKeeper sẽ bị loại bỏ hoàn toàn. Đồng thời hỗ trợ nâng cấp thêm một lần nữa lên phiên bản thực sự không còn ZooKeeper
1 bình luận
Cảm ơn. Tôi đã đọc rất hay.