Email Doanh NghiệpSSLFirewall Anti DDoS

NỘI DUNG

Banner blog lễ 30.4 và 1.5

Ceph Kubernetes là gì? Cách triển khai Ceph cluster trên Kubernetes chi tiết

Hưng Nguyễn

Đã kiểm duyệt nội dung

Ngày đăng:22/04/2026
Lượt xem

Quy trình sản xuất nội dung

Đánh giá

[esi kkstarratings cache="private" ttl="3"]

Khi triển khai storage cho Kubernetes, mình từng gặp nhiều vấn đề về tính ổn định và khả năng mở rộng khi dữ liệu tăng nhanh. Sau khi áp dụng Ceph vào Kubernetes, mình nhận ra việc quản lý storage trở nên linh hoạt hơn, đặc biệt là với các workload cần tính sẵn sàng cao. Trong bài viết này, mình sẽ chia sẻ lại cách Ceph hoạt động trong Kubernetes và hướng dẫn triển khai cluster chi tiết để bạn có thể áp dụng vào thực tế.

Những điểm chính

Xét từ góc độ kiến trúc hạ tầng, Ceph Kubernetes đóng vai trò là nền tảng cốt lõi giúp duy trì trạng thái dữ liệu cho toàn bộ hệ thống container hóa. Để giúp bạn hiểu thêm về hệ thống này, bài viết sẽ cung cấp các thông tin trực quan gồm:

  • Khái niệm: Hiểu rõ Ceph Kubernetes là sự kết hợp giữa Ceph và Kubernetes, mang đến giải pháp lưu trữ bền vững siêu hiệu suất, đảm bảo dữ liệu luôn sẵn sàng và mở rộng linh hoạt cho các ứng dụng container.
  • Tổng quan về Rook và Ceph: Nắm được Rook là Cloud-native Storage Orchestrator và Ceph là hệ thống Software-Defined Storage, giúp bạn hiểu rõ hai thành phần chính này trong Kubernetes.
  • Cách hoạt động: Biết được quy trình vận hành của Ceph Kubernetes, giúp bạn hiểu cách nó đảm bảo tính bền vững của dữ liệu và duy trì tính liên tục cho workload.
  • Các loại lưu trữ: Phân biệt hai hình thức lưu trữ chính trong Ceph Kubernetes là Ceph RBD và CephFS, qua đó hỗ trợ bạn lựa chọn giải pháp phù hợp với nhu cầu của ứng dụng container.
  • Cách triển khai: Nắm vững quy trình từng bước từ điều kiện triển khai đến tạo và cấu hình CephCluster, giúp bạn tự tin thiết lập một cụm Ceph trên Kubernetes.
  • Biết thêm Vietnix là nhà cung cấp dịch vụ hosting, VPS và Enterprise Cloud tốc độ cao dành cho doanh nghiệp.
  • Câu hỏi thường gặp: Giải đáp các thắc mắc liên quan đến Ceph Kubernetes. 
những điểm chính

Ceph Kubernetes là gì?

Ceph Kubernetes là đại diện kết hợp giữa Ceph, hệ thống lưu trữ phân tán đa năng hỗ trợ khối, tệp và đối tượng, cùng Kubernetes. Sự kết hợp này mang đến lớp lưu trữ bền vững siêu hiệu suất, đảm bảo dữ liệu luôn sẵn sàng và mở rộng linh hoạt cho các ứng dụng container. Ceph Kubernetes thường triển khai qua Rook – Một Kubernetes Operator thông minh. Sự kết hợp này giúp tự động hóa toàn bộ quy trình quản lý từ khởi tạo đến nâng cấp, hỗ trợ môi trường đám mây gốc vận hành mượt mà mà không lo gián đoạn.

Ceph Kubernetes là sự kết hợp giữa Ceph và Kubernetes, cung cấp hệ thống lưu trữ phân tán hỗ trợ khối, tệp và đối tượng
Ceph Kubernetes là sự kết hợp giữa Ceph và Kubernetes, cung cấp hệ thống lưu trữ phân tán hỗ trợ khối, tệp và đối tượng

Khi đã xây dựng được nền tảng lưu trữ phân tán bền vững với Ceph Kubernetes, bước tiếp theo là lựa chọn hạ tầng cloud đủ mạnh để vận hành ổn định ở môi trường doanh nghiệp thực tế. Với dịch vụ Public Cloud Server tại Vietnix, doanh nghiệp có thể sở hữu cụm tài nguyên riêng biệt dùng CPU AMD EPYC, 100% NVMe, kiến trúc HA với Replicas 3, khởi tạo và mở rộng cụm Kubernetes, microservices nhanh chóng, đảm bảo hiệu năng cao, dữ liệu an toàn và chi phí vận hành minh bạch. Liên hệ ngay để được tư vấn chi tiết!

Tổng quan về Rook và Ceph trong Kubernetes

Rook là một dự án mã nguồn mở (Cloud-native Storage Orchestrator) chuyên đưa các hệ thống lưu trữ trực tiếp vào Kubernetes. Thay vì quản lý thủ công, Rook đóng vai trò như một người vận hành thông minh giúp tự động hóa các tác vụ từ triển khai, cấu hình đến nâng cấp cụm lưu trữ.

Ceph là hệ thống lưu trữ phần mềm (Software-Defined Storage) mạnh mẽ, hỗ trợ đồng thời cả ba loại: file, block và object trên quy mô lớn. Khi kết hợp, Rook tận dụng các nguyên tắc cốt lõi của Kubernetes để biến Ceph thành một tài nguyên được định nghĩa bằng mã, giúp hạ tầng nội bộ vận hành linh hoạt như một đám mây công cộng.

Khái niệm Rook và Ceph trong Kubernetes
Khái niệm Rook và Ceph trong Kubernetes

Cách thực hoạt động của Ceph Kubernetes

Ceph Kubernetes đảm bảo tính bền vững của dữ liệu, giúp thông tin không bị mất đi khi các Pod bị khởi động lại hoặc di chuyển giữa các Node. Quy trình vận hành cơ bản như sau:

  1. Yêu cầu: Khi một ứng dụng cần không gian lưu trữ, nó sẽ gửi một Persistent Volume Claim.
  2. Cấp phát: Ceph thông qua CSI sẽ tự động khởi tạo các Persistent Volumes tương ứng.
  3. Kết nối: Dữ liệu được gắn trực tiếp vào Pod, cho phép các workload quan trọng duy trì tính liên tục và khả năng mở rộng động mà không gây gián đoạn dịch vụ.
Ceph Kubernetes đảm bảo tính bền vững của dữ liệu, giúp thông tin không bị mất đi
Ceph Kubernetes đảm bảo tính bền vững của dữ liệu, giúp thông tin không bị mất đi

Các loại lưu trữ trong Ceph Kubernetes

Ceph cung cấp hai hình thức lưu trữ chính để đáp ứng các nhu cầu khác nhau của ứng dụng container:

1. Ceph RBD (RADOS Block Device)

  • Đặc điểm: Cung cấp các khối lưu trữ (Block Storage) độc lập.
  • Chế độ truy cập: Thường là ReadWriteOnce – Một ổ đĩa chỉ gắn vào một Pod tại một thời điểm.
  • Ứng dụng: Lý tưởng cho các cơ sở dữ liệu (MySQL, PostgreSQL, MongoDB) yêu cầu tốc độ truy xuất cao và ổ đĩa riêng biệt.

2. CephFS (Ceph File System)

  • Đặc điểm: Hệ thống tệp chia sẻ chuẩn POSIX.
  • Chế độ truy cập: Hỗ trợ ReadWriteMany, cho phép nhiều Pod ở các Node khác nhau cùng đọc và ghi vào một thư mục chung.
  • Ứng dụng: Hoàn hảo cho các kiến trúc Microservices cần chia sẻ dữ liệu thời gian thực hoặc các hệ thống quản lý nội dung.
CephFS (Ceph File System)
CephFS (Ceph File System)

1. Điều kiện để triển khai Ceph Kubernetes

Để triển khai ceph đơn giản trên hạ tầng Vietnix Cloud, bạn cần add Volume thô vào node trên giao diện cloud:

  • Bước 1: Đăng nhập vào giao diện console.vietnix.cloud
  • Bước 2: Chọn lần lượt các node worker
ceph kubernetes 05
Bạn cần chọn lần lượt các node worker
  • Bước 3: Chọn volume
Bạn hãy chọn volume
Bạn hãy chọn volume
  • Bước 4: Add volume và Done
Bạn hãy nhấn vào Add volume
Bạn hãy nhấn vào Add volume
  • Bước 5: Sau khi thao tác, volume của node sẽ có thêm 1 dòng
Cuối cùng, volume của node sẽ có thêm 1 dòng
Cuối cùng, volume của node sẽ có thêm 1 dòng

Đây là ổ đĩa thô (Raw disk) dùng để cấu hình ceph

Bước 6: Tạo CRD và Common

kubectl create -f https://raw.githubusercontent.com/rook/rook/release-1.15/deploy/examples/crds.yaml kubectl create -f https://raw.githubusercontent.com/rook/rook/release-1.15/deploy/examples/common.yaml
Bạn cần cài đặt CEPH từ bản STABLE
Bạn cần cài đặt CEPH từ bản STABLE

Bạn cần triển khai Rook Operator và chờ pod ổn định.

Bước 7: Tạo Operator

kubectl create -f https://raw.githubusercontent.com/rook/rook/release-1.15/deploy/examples/operator.yaml
kubectl get pods -n rook-ceph

NAME                                            READY   STATUS    RESTARTS        AGE
csi-cephfsplugin-djbvl                          2/2     Running   1 (5m9s ago)    6m1s
csi-cephfsplugin-kjsxs                          2/2     Running   1 (5m23s ago)   6m1s
csi-cephfsplugin-provisioner-6fd75799db-g54d8   5/5     Running   2 (3m59s ago)   6m1s
csi-cephfsplugin-provisioner-6fd75799db-shppf   5/5     Running   1 (5m14s ago)   6m1s
csi-cephfsplugin-whn4l                          2/2     Running   1 (5m23s ago)   6m1s
csi-rbdplugin-fn4kg                             2/2     Running   1 (5m23s ago)   6m1s
csi-rbdplugin-phm4s                             2/2     Running   1 (5m8s ago)    6m1s
csi-rbdplugin-provisioner-74b4cdc79d-5g7gg      5/5     Running   2 (3m20s ago)   6m1s
csi-rbdplugin-provisioner-74b4cdc79d-hc6md      5/5     Running   1 (4m24s ago)   6m1s
csi-rbdplugin-q89qr                             2/2     Running   1 (5m24s ago)   6m1s
rook-ceph-mon-a-dc6ddcb8f-9tcgx                 1/1     Running   0               5m10s
rook-ceph-mon-b-56b6b4c956-rn8rd                1/1     Running   0               5m9s
rook-ceph-mon-c-f7966fcd7-xr85l                 1/1     Running   0               71s
rook-ceph-operator-85fdddd866-9d87w             1/1     Running   0               5m46s
Bạn cần triển khai Rook Operator và chờ pod ổn định
Bạn cần triển khai Rook Operator và chờ pod ổn định

2. Tạo và cấu hình CephCluster

Đầu tiên, bạn cần tạo file cluster.yaml với cấu hình ba Monitor, dashboard và storage settings, áp dụng để khởi tạo cluster:

apiVersion: ceph.rook.io/v1
kind: CephCluster
metadata:
  name: rook-ceph
  namespace: rook-ceph
spec:
  cephVersion:
    image: quay.io/ceph/ceph:v19.2.0
    allowUnsupported: false
  dataDirHostPath: /var/lib/rook
  mon:
    count: 3
    allowMultiplePerNode: false
  dashboard:
    enabled: true
  storage:
    useAllNodes: true
    useAllDevices: true
bạn cần tạo file cluster.yaml với cấu hình ba Monitor
bạn cần tạo file cluster.yaml với cấu hình ba Monitor
kubectl apply -f ceph-cluster.yaml
Output của lệnh kubectl apply -f ceph-cluster.yaml
Output của lệnh kubectl apply -f ceph-cluster.yaml
➜  ~ kubectl get pod -n rook-ceph
NAME                                                              READY   STATUS      RESTARTS   AGE
csi-cephfsplugin-7bvnq                                            2/2     Running     0          2m30s
csi-cephfsplugin-k2zdg                                            2/2     Running     0          2m30s
csi-cephfsplugin-n48sb                                            2/2     Running     0          2m30s
csi-cephfsplugin-provisioner-9c5f7f876-b8zdw                      5/5     Running     0          2m30s
csi-cephfsplugin-provisioner-9c5f7f876-s7gk4                      5/5     Running     0          2m30s
csi-rbdplugin-lcgcx                                               2/2     Running     0          2m31s
csi-rbdplugin-p6l6k                                               2/2     Running     0          2m31s
csi-rbdplugin-provisioner-7c8b45d6-67m6w                          5/5     Running     0          2m30s
csi-rbdplugin-provisioner-7c8b45d6-hx744                          5/5     Running     0          2m30s
csi-rbdplugin-q2mp2                                               2/2     Running     0          2m31s
rook-ceph-crashcollector-cloud-docs-gnlhbj5jyooy-node-0-7fc5nt7   1/1     Running     0          98s
rook-ceph-crashcollector-cloud-docs-gnlhbj5jyooy-node-1-5btcxbj   1/1     Running     0          77s
rook-ceph-exporter-cloud-docs-gnlhbj5jyooy-node-0-d9dc4c8fptmb2   1/1     Running     0          98s
rook-ceph-exporter-cloud-docs-gnlhbj5jyooy-node-1-5689bd9ffgfgd   1/1     Running     0          77s
rook-ceph-mgr-a-6b7c49978c-4pnrg                                  1/1     Running     0          98s
rook-ceph-mon-a-588cb8f54f-gqv48                                  1/1     Running     0          2m22s
rook-ceph-mon-b-749f95c756-qwg97                                  1/1     Running     0          119s
rook-ceph-mon-c-6d4fd85b9c-stkv5                                  1/1     Running     0          109s
rook-ceph-operator-696d68c45f-7xfpv                               1/1     Running     0          7m42s

Bạn có thể giám sát pod MON, MGR, OSD và kiểm tra sức khỏe qua toolbox thông qua lệnh:

kubectl apply -f 
https://raw.githubusercontent.com/rook/rook/release-1.15/deploy/examples/toolbox.yaml
cluster:
    id:     ce1ef04f-f266-47a7-9db7-173328510204
    health: HEALTH_OK

  services:
    mon: 3 daemons, quorum a,b,c (age 5m)
    mgr: a(active, since 2m)
    osd: 3 osds: 3 up, 3 in (since 1m)

  data:
    pools:   2 pools, 32 pgs
    objects: 0 objects, 0 B
    usage:   150 MiB used, 30 GiB / 30 GiB avail
    pgs:     32 active+clean

Vietnix – Nhà cung cấp dịch vụ hosting, VPS và cloud chất lượng cao

Vietnix là nhà cung cấp dịch vụ thuê hosting, VPS thuê và cloud chất lượng cao, mang đến nền tảng hạ tầng ổn định và hiệu suất tối ưu cho doanh nghiệp. Với khả năng đáp ứng linh hoạt nhiều nhu cầu từ website đến hệ thống ứng dụng phức tạp, Vietnix giúp đảm bảo tốc độ truy cập nhanh, vận hành mượt mà và dễ dàng mở rộng khi cần thiết. Đồng thời, dịch vụ hỗ trợ kỹ thuật 24/7 cũng giúp doanh nghiệp an tâm trong suốt quá trình triển khai và phát triển hệ thống. Liên hệ ngay để được tư vấn dịch vụ phù hợp!

Thông tin liên hệ:

  • Website: https://vietnix.vn/
  • Hotline: 1800 1093
  • Email: sales@vietnix.com.vn
  • Địa chỉ: 265 Hồng Lạc, Phường Bảy Hiền, Thành Phố Hồ Chí Minh

Câu hỏi thường gặp

Proxmox Ceph Kubernetes là gì?

Proxmox Ceph Kubernetes là sự kết hợp Proxmox VE làm hypervisor host, Ceph cung cấp lưu trữ phân tán và Kubernetes chạy container trên VM, tận dụng Ceph RBD cho persistent storage HA.

Kubernetes ceph-csi hoạt động ra sao?

Ceph CSI driver là plugin kết nối Kubernetes với Ceph cluster, hỗ trợ dynamic provisioning RBD và CephFS volumes cho pod.

Rook-ceph trong Kubernetes dùng để làm gì?

Rook là Kubernetes Operator mã nguồn mở tự động deploy, quản lý, scale và heal Ceph cluster ngay trong K8s environment.

Ceph-csi helm chart cài đặt thế nào?

Việc sử dụng Helm chart của Rook hoặc Ceph CSI để deploy operator với các tùy chọn như node affinity, tolerations và replicas cho provisioner.

Kubernetes PVC Ceph được tạo như thế nào?

Việc tạo PVC với StorageClass ceph-csi (rbd.csi.ceph.com), Kubernetes tự động provision volume từ Ceph pool và hỗ trợ expand online từ v1.15.

Ceph-csi-rbd khác gì flexvolume cũ?

Ceph-csi-rbd là CSI driver hiện đại thay thế kubernetes.io/rbd, hỗ trợ dynamic provisioning block storage RBD cho K8s v1.13+.

Ceph-csi-cephfs dùng cho trường hợp nào?

Ceph-csi-cephfs cung cấp shared filesystem POSIX (ReadWriteMany) cho multiple pod truy cập đồng thời dữ liệu.

Ceph Kubernetes mang đến một giải pháp lưu trữ phân tán mạnh mẽ, giúp hệ thống container không chỉ linh hoạt mà còn đảm bảo tính bền vững và khả năng mở rộng cao. Khi triển khai Ceph cluster trên Kubernetes đúng cách, bạn có thể tận dụng tối đa tài nguyên hạ tầng, đồng thời đảm bảo dữ liệu luôn sẵn sàng và an toàn trong mọi tình huống. Đây là nền tảng quan trọng để xây dựng các hệ thống cloud-native hiện đại, ổn định và dễ dàng mở rộng theo nhu cầu thực tế.

THEO DÕI VÀ CẬP NHẬT CHỦ ĐỀ BẠN QUAN TÂM

Đăng ký ngay để nhận những thông tin mới nhất từ blog của chúng tôi. Đừng bỏ lỡ cơ hội truy cập kiến thức và tin tức hàng ngày

Đánh giá mức độ hữu ích của bài viết

icon 1 sao

Thất vọng

icon 2 sao

Chưa hữu ích

icon 3 sao

Bình thường

icon 4 sao

Hữu ích

icon 5 sao

Rất hữu ích

Hưng Nguyễn

Co-Founder
tại

Kết nối với mình qua

Kết nối với mình qua

Theo dõi
Thông báo của
guest
0 Comments
Phản hồi nội tuyến
Xem tất cả bình luận

kien-thuc-dich-vu

kien-thuc-kubernetes

text
icon popup single post

CẢM ƠN BẠN ĐÃ ĐÁNH GIÁ BÀI VIẾT

Vietnix sẽ luôn cố gắng cải thiện chất lượng dịch vụ mỗi ngày

ĐÓNG

Đánh giá mức độ hữu ích của bài viết

icon 1 sao

Thất vọng

icon 2 sao

Chưa hữu ích

icon 3 sao

Bình thường

icon 4 sao

Hữu ích

icon 5 sao

Rất hữu ích

Icon
ĐĂNG KÝ NHẬN TÀI LIỆU THÀNH CÔNG
Cảm ơn bạn đã đăng ký nhận tài liệu mới nhất từ Vietnix!
ĐÓNG

ĐĂNG KÝ DÙNG THỬ HOSTING

Asset

7 NGÀY MIỄN PHÍ

Asset 1

ĐĂNG KÝ DÙNG THỬ HOSTING

Asset

7 NGÀY MIỄN PHÍ

Asset 1
Icon
XÁC NHẬN ĐĂNG KÝ DÙNG THỬ THÀNH CÔNG
Cảm ơn bạn đã đăng ký thông tin thành công. Đội ngũ CSKH sẽ liên hệ trực tiếp để kích hoạt dịch vụ cho bạn nhanh nhất!
ĐÓNG