Yêu cầu cấu hình phần cứng tối thiểu cho RisingWave
Trước khi bắt đầu cài đặt, server Ubuntu 24.04 cần đáp ứng các thông số tối thiểu để đảm bảo RisingWave hoạt động ổn định với các tác vụ Stream Processing cơ bản.
- CPU: Tối thiểu 4 nhân (vCPU). RisingWave cần nhiều nhân cho các toán tử tính toán song song.
- RAM: Tối thiểu 8GB. RisingWave sử dụng bộ nhớ lớn cho State Storage và Computation Cache.
- Disk: Tối thiểu 50GB SSD. Sử dụng HDD sẽ gây nghẽn cổ chai nghiêm trọng do I/O của RocksDB (State Store).
- Mạng: Băng thông ổn định, ít delay giữa các node (nếu triển khai cụm).
Để kiểm tra cấu hình hiện tại của server, hãy chạy lệnh sau:
lscpu | grep "Model name" && free -h && df -h
Kết quả mong đợi: Bạn thấy số nhân CPU >= 4, tổng RAM >= 8G, và dung lượng trống trên phân vùng root >= 50G.
Cài đặt trình quản lý package và thư viện hệ thống
Ubuntu 24.04 mặc định sử dụng Snap, nhưng để cài đặt Docker Engine và các công cụ hệ thống ổn định, ta cần cập nhật repository và cài đặt các thư viện phụ thuộc cần thiết.
Đầu tiên, cập nhật bảng package index để đảm bảo cài đặt các phiên bản mới nhất:
sudo apt-get update
Kết quả mong đợi: Hệ thống liệt kê các repository và cập nhật danh sách package mà không báo lỗi.
Tiếp theo, cài đặt các thư viện hỗ trợ kết nối mạng và xử lý file cần thiết cho Docker:
sudo apt-get install -y ca-certificates curl gnupg lsb-release
Kết quả mong đợi: Các package được cài đặt thành công, không có cảnh báo về thiếu dependency.
Cài đặt Docker Engine trên Ubuntu 24.04
Chúng ta sẽ cài đặt Docker Engine chính chủ từ repository của Docker để đảm bảo tính tương thích cao nhất với RisingWave, thay vì dùng bản Docker trong repository mặc định của Ubuntu (thường là bản cũ).
Thiết lập repository chính thức của Docker bằng cách thêm key GPG:
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
Kết quả mong đợi: File key GPG được tạo tại `/etc/apt/keyrings/docker.gpg` và quyền đọc được cấp cho tất cả user.
Thêm repository Docker vào nguồn cài đặt package của hệ thống:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Kết quả mong đợi: File cấu hình repository được ghi vào `/etc/apt/sources.list.d/docker.list`.
Cập nhật lại package index sau khi thêm source mới và cài đặt Docker Engine, CLI và Containerd:
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Kết quả mong đợi: Docker Engine phiên bản mới nhất được cài đặt, không báo lỗi xung đột.
Khởi động dịch vụ Docker và đảm bảo nó tự động chạy khi khởi động lại máy:
sudo systemctl enable --now docker
Kết quả mong đợi: Dịch vụ Docker chuyển sang trạng thái `active (running)`.
Verify Docker Engine
Để đảm bảo Docker đã chạy đúng và có thể build container, kiểm tra phiên bản và chạy một container test:
docker --version
docker run hello-world
Kết quả mong đợi: Lệnh đầu tiên hiển thị phiên bản Docker (ví dụ: Docker version 24.x.x). Lệnh thứ hai hiển thị thông báo thành công từ container `hello-world` và thông tin về các bước cài đặt.
Cài đặt Docker Compose Plugin
Từ phiên bản Docker 24.0 trở đi, Docker Compose được tích hợp trực tiếp dưới dạng plugin (`docker compose`) thay vì là một binary riêng biệt (`docker-compose`). Tuy nhiên, để tương thích với các tài liệu cũ hoặc script automation, ta cần đảm bảo plugin này hoạt động tốt.
Trong bước cài đặt Docker Engine ở trên, ta đã cài `docker-compose-plugin`. Bây giờ kiểm tra xem plugin đã được nhận diện chưa:
docker compose version
Kết quả mong đợi: Hiển thị phiên bản Docker Compose Plugin (ví dụ: Docker Compose version v2.24.x).
Để người dùng hiện tại (không phải root) có thể chạy lệnh docker mà không cần `sudo`, hãy thêm user vào nhóm `docker`:
sudo usermod -aG docker $USER
Kết quả mong đợi: Lệnh chạy xong, không có đầu ra (biểu thị thành công). Lưu ý: Bạn cần đăng xuất và đăng nhập lại (hoặc chạy `newgrp docker`) để quyền này có hiệu lực.
Cài đặt công cụ hỗ trợ quản lý hệ thống
Để theo dõi hiệu năng và quản lý file trong quá trình triển khai RisingWave, ta cần cài đặt thêm một số công cụ tiện ích.
Cài đặt `jq` để parse JSON từ các lệnh Docker/API và `htop` để giám sát tài nguyên thời gian thực:
sudo apt-get install -y jq htop
Kết quả mong đợi: Các công cụ được cài đặt thành công.
Tạo thư mục làm việc dự án để chứa các file cấu hình RisingWave (docker-compose.yml, logs, etc.):
mkdir -p ~/risingwave-deployment
cd ~/risingwave-deployment
Kết quả mong đợi: Thư mục được tạo và prompt dòng lệnh chuyển vào thư mục mới.
Verify toàn bộ môi trường
Chạy một lệnh tổng hợp để xác nhận môi trường đã sẵn sàng cho Phần 2 (Cấu hình Docker Compose):
echo "=== System Info ===" && lscpu | grep "Model name" | head -1 && free -h | grep "Mem" && echo "=== Docker Status ===" && systemctl is-active docker && docker --version && docker compose version && echo "=== Working Directory ===" && pwd && ls -la
Kết quả mong đợi:
- CPU và RAM hiển thị đúng yêu cầu tối thiểu.
- Docker status trả về `active`.
- Phiên bản Docker và Compose được hiển thị.
- Đường dẫn hiện tại là `~/risingwave-deployment` và thư mục rỗng hoặc chứa file cấu hình nếu bạn đã tạo.
Điều hướng series:
Mục lục: Series: Triển khai Database Serverless với RisingWave trên Ubuntu 24.04
Phần 2: Cấu hình Docker Compose để triển khai RisingWave »