Khác ở định danh, thứ tự và vòng đời storage — ba thứ quyết định cách bạn vận hành nó.
Định danh ổn định. Pod tên theo ordinal cố định (db-0, db-1), kèm bản ghi DNS riêng qua headless Service (db-0.db.default.svc.cluster.local). Pod chết và tạo lại vẫn giữ nguyên tên và DNS — điều kiện cần để cluster DB nhận ra thành viên cũ.
Thứ tự có kiểm soát. Mặc định podManagementPolicy: OrderedReady: tạo tuần tự 0 → 1 → 2, mỗi Pod chờ Pod trước READY; xóa thì ngược lại từ ordinal cao xuống. Rolling update cũng đi ngược ordinal, và có partition để rollout từng phần (canary cho stateful).
Storage theo Pod. volumeClaimTemplates tạo cho mỗi Pod một PVC riêng, gắn theo ordinal.
Trả lời phần dữ liệu: scale down không xóa PVC — mặc định PVC được giữ lại, nên scale lên trở lại thì db-2 gắn đúng volume cũ. Xóa cả StatefulSet cũng không xóa PVC (trừ khi cấu hình persistentVolumeClaimRetentionPolicy là Delete). Đây vừa là bảo vệ dữ liệu, vừa là chi phí storage bị bỏ quên — phải dọn PVC thủ công khi thực sự không cần.
Lưu ý vận hành: PVC thường gắn với zone của PV, nên Pod bị ràng buộc phải quay lại đúng zone. Và StatefulSet không tự lo backup hay bầu leader — nó chỉ cung cấp định danh ổn định, phần còn lại là việc của ứng dụng hoặc Operator.