- Published on
Storage Cloud Native CEPH
- Authors
- Name
- Bạch Đăng Tuấn
- Occupation
- Kỹ sư công nghệ thông tin
- Zalo: 0934.01.07.04
CEPH - The Future of Storage
Ceph là một nền tảng lưu trữ phân tán (distributed storage platform) mã nguồn mở, được thiết kế để cung cấp khả năng mở rộng linh hoạt, không điểm lỗi đơn (no single point of failure) và hỗ trợ nhiều kiểu lưu trữ trên cùng một nền tảng.
Thành phần chính của CEPH như sau:
RADOS: Lõi lưu trữ phân tán. Tất cả dữ liệu trong Ceph đều lưu trữ trên RADOS.
OSD (Object Storage Daemon): Đây là dịch vụ chịu trách nhiệm lưu trữ dữ liệu trên các node vật lý. Mỗi ổ đĩa trong cluster sẽ chạy một OSD daemon.
MON (Monitor Daemon): Duy trì trạng thái cluster, quản lý thông tin cấu hình, theo dõi trạng thái của các OSD.
MGR(Ceph Manager): Ceph Manager (MGR) là một daemon bổ sung trong Ceph, chịu trách nhiệm thu thập số liệu thống kê, cung cấp API quản lý, giám sát cluster và hỗ trợ các module mở rộng.
MDS (Metadata Server - Chỉ dùng cho CephFS) : Xử lý metadata của hệ thống file, giúp tăng tốc truy vấn và quản lý cây thư mục.
RGW (RADOS Gateway) : Cung cấp API tương thích với S3/Swift để truy cập object storage.
CSI (Container Storage Interface) : Interface để kết nối giữa cluster vào hệ thống ceph.
📑 Mục Lục
Các loại Storage CEPH
🧰 Các loại Storage CEPH
Loại Storage | Cách lưu trữ | Cách truy cập | Ứng dụng phổ biến |
---|---|---|---|
CephFS (File System) | Lưu file dưới dạng object trong RADOS, metadata bởi MDS | Mount qua kernel hoặc FUSE (giống NFS) | - Shared File System cho Kubernetes (RWX),Lưu trữ Home Directory, Big Data, AI/ML, HPC, Lưu trữ tài liệu, dữ liệu logs, hình ảnh |
RBD (Block Storage) | Lưu block device dưới dạng object trong RADOS | Gắn như một ổ cứng (iSCSI, Kernel, QEMU) | - Lưu trữ ổ đĩa ảo cho VM (KVM, OpenStack, Proxmox),Persistent Volume cho Kubernetes (RWO), Database (MySQL, PostgreSQL, MongoDB) |
RGW (Object Storage - S3) | Lưu object dưới dạng key-value trong RADOS | API S3, HTTP, REST | - Backup & Disaster Recovery, Lưu trữ Logs, AI/ML, Big Data, Static Website Hosting, Streaming Video & Media Storage |
Phân biệt nhanh 3 loại
Loại Storage | Tương tự như | Giao thức | Dùng vào việc |
---|---|---|---|
Ceph Block (RBD) | Ổ đĩa block | CSI / librbd | VM, Cơ sở dữ liệu, Stateful Apps |
Ceph Object (RGW) | Amazon S3 | REST API (S3, Swift) | Web, Backup, Logs |
Ceph File (CephFS) | File system | POSIX | HPC, Shared Storage |
So sánh loại Storage CEPH
Loại Storage | File system trên OSD | Hiệu suất | Ưu điểm | Nhược điểm | Khi nào nên dùng? |
---|---|---|---|---|---|
CephFS (File System) | XFS, Ext4 | Trung bình (phụ thuộc vào MDS) | - Hỗ trợ POSIX, Cho phép nhiều client truy cập cùng lúc, Tự phục hồi dữ liệu | - Hiệu suất phụ thuộc vào MDS, Không tối ưu cho file nhỏ | Khi cần một hệ thống file chia sẻ giữa nhiều máy chủ. |
RBD (Block Storage) | XFS, Ext4 | Cao (nếu dùng SSD/NVMe) | - Hiệu suất cao, phù hợp database, Tích hợp tốt với OpenStack/Kubernetes,Tự phục hồi dữ liệu | - Không chia sẻ giữa nhiều máy chủ cùng lúc (RWO) | Khi cần block storage cho VM, Kubernetes, Database. |
RGW (Object Storage - S3) | XFS, Ext4 | Tốt cho object lớn | - Mở rộng vô hạn, Hỗ trợ S3 API, Chi phí thấp hơn so với CephFS/RBD | - Không thể chỉnh sửa object, Không hỗ trợ POSIX | Khi cần lưu trữ dữ liệu lớn, backup, CDN, streaming. |
Lựa chọn loại Storage Ceph phù hợp theo nhu cầu
Cần lưu trữ... | Nên chọn... | Giải thích thêm |
---|---|---|
File theo chuẩn POSIX, dùng chung giữa nhiều server | ✅ CephFS | CephFS cung cấp hệ thống file chia sẻ tuân thủ POSIX, cho phép nhiều máy chủ mount và truy cập đồng thời. |
Ổ cứng ảo cho VM, database, Kubernetes Persistent Volume | ✅ RBD (Block Storage) | RBD cung cấp các block device hiệu suất cao, phù hợp làm ổ đĩa ảo cho máy ảo, persistent volume cho Kubernetes và backend cho database. |
Dữ liệu kiểu Amazon S3 (Backup, Logs, Streaming, AI/ML) | ✅ RGW (Object Storage) | RGW cung cấp giao diện tương thích S3, lý tưởng cho lưu trữ dữ liệu phi cấu trúc, backup, logs, streaming và dữ liệu cho AI/ML. |
Hiệu suất cao cho database, cần tốc độ đọc/ghi nhanh | ✅ RBD với SSD/NVMe | Sử dụng RBD kết hợp với lớp lưu trữ SSD hoặc NVMe trên các OSD sẽ mang lại hiệu suất đọc/ghi cao, đáp ứng yêu cầu của database. |
Lưu trữ ảnh, video, logs với khả năng mở rộng vô hạn | ✅ RGW | RGW có khả năng mở rộng gần như vô hạn, phù hợp cho việc lưu trữ lượng lớn dữ liệu như ảnh, video và logs. |
Hệ thống file lớn, cần chia sẻ nhiều user | ✅ CephFS với nhiều MDS | Để xử lý lượng lớn metadata và tăng khả năng đồng thời của nhiều user, việc triển khai CephFS với nhiều máy chủ MDS (Metadata Server) là cần thiết. |
🧰 Rook - CloudNative Storage Orchestrator
🏗️ Rook Ceph Operator vs. Rook Ceph Cluster: Khác biệt & Cách Hoạt ĐộngTrong hệ thống Rook Ceph, có hai thành phần quan trọng khi triển khai bằng Helm Chart:
Thành phần | Vai trò |
---|---|
Rook Ceph Operator | Triển khai Ceph Operator để giám sát và quản lý cluster |
Rook Ceph Cluster | Tạo các Custom Resources (CRs) để Ceph Operator cấu hình cluster |
Architecture ROOK quản lý CEPH trên Kubernetes
