
Hướng dẫn cài đặt Apache Kafka trên Ubuntu 26.04 LTS: Chuyển sang chế độ KRaft không cần ZooKeeper
Khám phá cách triển khai Apache Kafka hiện đại trên Ubuntu 26.04 LTS bằng chế độ KRaft, loại bỏ hoàn toàn sự phụ thuộc vào ZooKeeper để tối ưu hóa hiệu năng và đơn giản hóa kiến trúc hệ thống.
Bài viết được dịch và tổng hợp từ tin tức gốc. Bạn có thể đọc bài viết gốc bằng tiếng Anh tại đây.
Điểm tin nhanh:
- Apache Kafka hiện nay đã chuyển dịch sang kiến trúc KRaft, loại bỏ hoàn toàn sự phụ thuộc vào ZooKeeper.
- Hướng dẫn chi tiết triển khai Kafka trên Ubuntu 26.04 LTS với quy trình cài đặt Java, cấu hình cluster và khởi tạo metadata.
- KRaft giúp giảm độ phức tạp vận hành, tăng tốc độ khôi phục và cải thiện khả năng mở rộng cho các hệ thống phân tán.
Việc quản lý các hệ thống phân tán chưa bao giờ là một bài toán dễ dàng, đặc biệt là khi bạn phải đối mặt với sự cồng kềnh của các thành phần trung gian. Trong nhiều năm, ZooKeeper là một mắt xích không thể thiếu trong kiến trúc Kafka, nhưng cũng chính nó là nguồn cơn của những cơn đau đầu về cấu hình và bảo trì. Với sự ra đời của KRaft, kỷ nguyên của ZooKeeper đã chính thức khép lại, mở ra một tương lai tinh gọn và hiệu năng cao hơn cho các kỹ sư Backend.

Tại sao nên chuyển sang KRaft?
KRaft (Kafka Raft) là giao thức đồng thuận được tích hợp trực tiếp vào Kafka, cho phép lưu trữ metadata ngay trong chính các node của Kafka. Nếu bạn đang xây dựng các hệ thống yêu cầu độ trễ thấp như trong hành trình xây dựng CoreFoundry, việc loại bỏ ZooKeeper sẽ giúp đơn giản hóa đáng kể kiến trúc hạ tầng.
So sánh kiến trúc Kafka
| Đặc điểm | Kiến trúc cũ (ZooKeeper) | Kiến trúc mới (KRaft) |
|---|---|---|
| Quản lý Metadata | Lưu trữ ngoài (ZooKeeper) | Lưu trữ nội bộ (Kafka Raft) |
| Độ phức tạp | Cao (2 hệ thống cần quản lý) | Thấp (Chỉ 1 hệ thống) |
| Thời gian khôi phục | Chậm hơn | Rất nhanh |
| Khả năng mở rộng | Giới hạn bởi ZooKeeper | Vượt trội |
Các bước triển khai trên Ubuntu 26.04 LTS
Để bắt đầu, hãy đảm bảo hệ thống của bạn đã được cập nhật. Kafka yêu cầu Java Runtime, vì vậy hãy cài đặt OpenJDK trước khi tiến hành các bước tiếp theo.
Bước 1: Cài đặt Java
Sử dụng lệnh sau để cài đặt môi trường thực thi Java:
sudo apt update
sudo apt install openjdk-17-jdk -y
Bước 2: Tải và giải nén Kafka
Truy cập trang chủ Apache Kafka để lấy phiên bản mới nhất, sau đó tải về và giải nén vào thư mục /opt/kafka.

Bước 3: Cấu hình KRaft
Thay vì cấu hình zookeeper.properties, bạn sẽ làm việc với kraft/server.properties. Bạn cần tạo một Cluster ID duy nhất bằng công cụ kafka-storage.sh:
KAFKA_CLUSTER_ID=$(./bin/kafka-storage.sh random-uuid)
./bin/kafka-storage.sh format -t $KAFKA_CLUSTER_ID -c config/kraft/server.properties
Mẹo hay: Việc quản lý cấu hình tập trung là chìa khóa để tránh các lỗi không đáng có. Nếu bạn đang tối ưu hóa hệ thống, hãy tham khảo thêm về chiến lược chọn kiến trúc AI API để có cái nhìn tổng quan hơn về thiết kế hệ thống.
Đánh giá & Lời khuyên Thực tiễn
Từ góc độ của một Tech Lead, việc chuyển sang KRaft là bước đi tất yếu.
- Ưu điểm: Giảm thiểu đáng kể tài nguyên hệ thống, đơn giản hóa quy trình deploy và quản lý. Phù hợp cho các hệ thống cần triển khai nhanh như AI Pipeline.
- Nhược điểm: KRaft vẫn đang trong quá trình hoàn thiện các tính năng nâng cao so với sự ổn định lâu đời của ZooKeeper.
- Lưu ý Production: Luôn đảm bảo bạn có chiến lược backup metadata định kỳ. Nếu bạn gặp vấn đề về hiệu năng, hãy kiểm tra kỹ các cấu hình tối ưu hóa danh mục dữ liệu để đảm bảo Kafka hoạt động trơn tru.
Câu hỏi thường gặp (FAQ)
KRaft có thay thế hoàn toàn ZooKeeper không?
Có, trong các phiên bản Kafka mới nhất, KRaft đã trở thành tiêu chuẩn và ZooKeeper đang dần bị loại bỏ.
Tôi có thể nâng cấp từ ZooKeeper lên KRaft không?
Có, Kafka cung cấp các công cụ migration, tuy nhiên bạn cần thực hiện trong môi trường staging trước khi áp dụng cho Production.
KRaft có yêu cầu phần cứng cao hơn không?
Không, thực tế KRaft giúp giảm tải cho CPU và RAM vì không cần duy trì kết nối với một cluster ZooKeeper riêng biệt.
Kết luận
Việc triển khai Apache Kafka ở chế độ KRaft trên Ubuntu 26.04 LTS không chỉ giúp hệ thống của bạn hiện đại hơn mà còn giảm bớt gánh nặng vận hành. Hãy bắt đầu thử nghiệm ngay hôm nay để cảm nhận sự khác biệt. Nếu bạn có bất kỳ thắc mắc nào trong quá trình cài đặt, đừng ngần ngại để lại bình luận phía dưới hoặc theo dõi hi_dev để cập nhật những kiến thức công nghệ mới nhất.
Do you like this post?
Upvote to push this post higher on the community feed





