CHƯƠNG 09 · Kubernetes Fundamentals•BÀI 35 / 80

Deployment, StatefulSet, PVC và dữ liệu

Chọn controller theo identity và persistence requirements.

Kubernetes◷ 4 phút đọc3/4 trong chương

Nắm bản chất

Deployment phù hợp stateless replicas. StatefulSet cung cấp Pod identities ổn định và volume claim templates cho stateful workloads. PVC yêu cầu storage; PV đại diện tài nguyên lưu trữ; StorageClass có thể hỗ trợ dynamic provisioning.

Một PostgreSQL StatefulSet một replica với PVC chỉ tăng khả năng dữ liệu tồn tại khi Pod bị thay thế; nó không tự cung cấp replication, backup hoặc high availability. Với production database, phải thiết kế HA/DR và backup phù hợp.

Luồng hoạt động

StatefulSet→PVC→storage backend

Hãy tự giải thích mỗi mũi tên: dữ liệu, quyền hoặc tín hiệu nào được truyền qua bước này?

Lệnh & cấu hình mẫu

kubectl get storageclass
kubectl -n app get statefulsets,pvcs,pods
kubectl -n app describe pvc postgres-data-postgres-0
kubectl -n app logs statefulset/postgres

Lệnh có placeholder hoặc phụ thuộc môi trường thì cần thay thông tin thực tế, kiểm tra quyền và chỉ thực hiện trên tài nguyên được phép.

Bài tập 10–20 phút

✳

Thực hành lab PostgreSQL đơn replica. Xóa Pod, xác minh StatefulSet tạo lại Pod và dữ liệu tồn tại; sau đó mô tả điều gì xảy ra nếu node/storage backend mất.

Lỗi dễ mắc

!

Không force-delete PVC/PV trong incident trước khi xác định reclaim policy, volume attachment và backup status.

Tự kiểm tra

PVC có bảo đảm dữ liệu sống sót khi cả storage backend hỏng?Xem đáp án ↗

Không. Độ bền vững phụ thuộc backend và backup/replication thiết kế ngoài PVC.

TÀI NGUYÊN ĐI KÈM

Học thêm qua lab

Có project thực hành đúng với chương này, kèm README và những giới hạn môi trường cần lưu ý.

↓ Tải mã nguồn thực hành chương 09
NGUỒN CHÍNH THỨC

Đối chiếu tài liệu gốc

Cú pháp và khả năng hỗ trợ có thể thay đổi theo phiên bản. Trước khi dùng Production, hãy kiểm tra tài liệu tương ứng.

Mở tài liệu chính thức ↗