Tuyển dụng
Viettel IDC

Pod Disruption Budgets là gì? Cách bảo vệ ứng dụng trong Kubernetes

09/03/2026

Pod Disruption Budgets (PDB) là cơ chế giúp kiểm soát số lượng Pod có thể bị gián đoạn trong quá trình bảo trì, autoscaling hoặc nâng cấp hệ thống. Nhờ đó, Kubernetes vẫn có thể thực hiện các thay đổi hạ tầng mà không làm ảnh hưởng đến tính ổn định của ứng dụng. Cùng Viettel IDC tìm hiểu rõ hơn Pod Disruption Budgets là gì trong ài viết sau.

Pod Disruption Budgets là gì trong Kubernetes?

Pod Disruption Budgets (PDB) là một cơ chế trong Kubernetes cho phép quản trị viên xác định bao nhiêu Pod trong một ứng dụng có thể bị gián đoạn trong quá trình vận hành hệ thống. Nói cách khác, PDB đặt ra một “ngân sách gián đoạn” nhằm đảm bảo ứng dụng vẫn duy trì số lượng Pod tối thiểu cần thiết để hoạt động ổn định.

Trong môi trường Kubernetes, việc Pod bị gián đoạn là điều khó tránh khỏi. Những sự kiện như nâng cấp cluster, bảo trì node, autoscaling hoặc lỗi hạ tầng đều có thể khiến Pod bị dừng hoặc di chuyển sang node khác. Nếu nhiều Pod của cùng một service bị gián đoạn cùng lúc, hệ thống có thể bị downtime hoặc giảm hiệu suất nghiêm trọng.

Pod Disruption Budgets được tạo ra để giải quyết vấn đề này. Khi có sự kiện cần dừng Pod, Kubernetes sẽ kiểm tra cấu hình PDB trước. Nếu việc dừng Pod khiến số Pod đang chạy thấp hơn mức quy định, hệ thống sẽ không cho phép evict Pod cho đến khi điều kiện được đáp ứng.

Pod Disruption Budgets là gì trong Kubernetes?

Vì sao Pod Disruption Budgets quan trọng trong Kubernetes?

Trong hệ thống microservices hiện đại, mỗi ứng dụng thường được triển khai dưới dạng nhiều Pod replica để đảm bảo khả năng mở rộng và chịu lỗi. Tuy nhiên, việc quản lý các Pod này cũng trở nên phức tạp hơn khi cluster cần bảo trì hoặc tối ưu tài nguyên.

Pod Disruption Budgets giúp giải quyết vấn đề này bằng cách đặt ra giới hạn rõ ràng về số Pod có thể bị gián đoạn. Nhờ vậy, Kubernetes có thể thực hiện các tác vụ quản trị mà vẫn đảm bảo hệ thống tiếp tục hoạt động bình thường.

Một số lợi ích quan trọng của Pod Disruption Budgets bao gồm:

- Giúp đảm bảo ứng dụng luôn có đủ Pod hoạt động ngay cả khi cluster đang nâng cấp hoặc bảo trì.

- Giảm nguy cơ downtime do nhiều Pod bị dừng cùng lúc trong quá trình autoscaling hoặc node drain.

- Cho phép Kubernetes tự động tối ưu hạ tầng mà không làm ảnh hưởng đến các workload quan trọng.

- Bảo vệ các service quan trọng trong hệ thống microservices hoặc hệ thống phân tán.

Cách Pod Disruption Budgets hoạt động

Pod Disruption Budgets hoạt động bằng cách thiết lập các quy tắc kiểm soát số Pod có thể bị gián đoạn tại một thời điểm. Khi một Pod chuẩn bị bị evict khỏi node, Kubernetes sẽ kiểm tra các quy tắc này trước khi thực hiện hành động. Nếu việc evict Pod khiến số lượng Pod đang hoạt động thấp hơn mức tối thiểu được cấu hình, Kubernetes sẽ tạm thời chặn hành động đó. 

Selector trong Pod Disruption Budgets

Selector là thành phần dùng để xác định những Pod nào được áp dụng Pod Disruption Budget. Kubernetes sử dụng label selector để xác định nhóm Pod cần được bảo vệ.

Ví dụ, nếu một deployment có label app=web-service, bạn có thể cấu hình PDB để áp dụng cho tất cả Pod thuộc service đó.

Điều này đặc biệt hữu ích trong các hệ thống microservices, nơi mỗi service thường chạy nhiều Pod replica. Selector giúp đảm bảo rằng PDB chỉ áp dụng đúng cho nhóm Pod cần bảo vệ, tránh ảnh hưởng đến các workload khác trong cluster.

MinAvailable trong Pod Disruption Budgets

minAvailable là tham số xác định số lượng Pod tối thiểu phải luôn hoạt động trong hệ thống. Khi cấu hình thuộc tính này, Kubernetes sẽ không cho phép số Pod đang chạy giảm xuống dưới mức quy định.

Ví dụ, nếu một ứng dụng có 5 Pod và cấu hình:

minAvailable: 3

Điều này có nghĩa là ít nhất 3 Pod phải luôn hoạt động. Nếu cluster cần bảo trì node và việc dừng Pod làm số Pod hoạt động giảm xuống dưới 3, Kubernetes sẽ từ chối hành động đó.

Cách cấu hình này thường được sử dụng trong các hệ thống yêu cầu độ ổn định cao như API gateway, hệ thống thanh toán hoặc nền tảng thương mại điện tử.

MaxUnavailable trong Pod Disruption Budgets

maxUnavailable xác định số Pod tối đa có thể bị gián đoạn cùng lúc trong một deployment.

Ví dụ:

maxUnavailable: 1

Điều này có nghĩa là Kubernetes chỉ cho phép tối đa 1 Pod bị dừng tại một thời điểm. Nếu có nhiều Pod cần di chuyển hoặc dừng, hệ thống sẽ thực hiện từng bước để đảm bảo không vượt quá giới hạn này.

So với minAvailable, cấu hình maxUnavailable thường được sử dụng trong các hệ thống có autoscaling vì nó linh hoạt hơn khi số Pod thay đổi. Tuy nhiên, trong một Pod Disruption Budget, bạn chỉ được sử dụng một trong hai thuộc tính: minAvailable hoặc maxUnavailable.

Ví dụ cấu hình Pod Disruption Budget

Dưới đây là ví dụ cấu hình Pod Disruption Budget trong Kubernetes:

apiVersion: policy/v1

kind: PodDisruptionBudget

metadata:

 name: web-service-pdb

spec:

 minAvailable: 2

 selector:

   matchLabels:

     app: web-service

Trong cấu hình này:

- PDB được áp dụng cho Pod có label app=web-service

- Kubernetes đảm bảo luôn có ít nhất 2 Pod đang hoạt động

- Nếu cluster cần bảo trì node, hệ thống chỉ cho phép evict Pod khi vẫn đảm bảo điều kiện này

Cấu hình này thường được sử dụng trong các ứng dụng web hoặc API cần đảm bảo uptime cao.

Khi nào nên sử dụng Pod Disruption Budgets?

Pod Disruption Budgets đặc biệt hữu ích trong các hệ thống yêu cầu tính ổn định cao và không thể chấp nhận downtime. Một số trường hợp nên sử dụng PDB bao gồm:

Hệ thống microservices

Trong kiến trúc microservices, mỗi service thường được triển khai dưới dạng nhiều Pod replica để đảm bảo khả năng mở rộng và chịu lỗi. Khi một số Pod gặp sự cố hoặc cần được di chuyển sang node khác, các Pod còn lại vẫn có thể tiếp tục phục vụ request từ người dùng. 

Tuy nhiên, nếu nhiều Pod của cùng một service bị dừng cùng lúc trong quá trình bảo trì hoặc autoscaling, service đó có thể bị gián đoạn hoạt động. Pod Disruption Budgets (PDB) giúp kiểm soát số lượng Pod có thể bị gián đoạn tại một thời điểm, từ đó đảm bảo service luôn duy trì đủ Pod hoạt động. Nhờ cơ chế này, hệ thống microservices có thể duy trì độ ổn định cao ngay cả khi cluster đang thay đổi hạ tầng.

Ứng dụng có nhiều replica

Các ứng dụng được triển khai với nhiều Pod replica thường nhằm mục đích tăng khả năng chịu tải và đảm bảo tính sẵn sàng của hệ thống. Khi một Pod gặp sự cố hoặc bị dừng, các Pod khác vẫn có thể tiếp tục xử lý request từ người dùng. 

Tuy nhiên, nếu quá nhiều Pod bị gián đoạn cùng lúc, hệ thống có thể bị giảm hiệu suất hoặc thậm chí mất khả năng phục vụ. Việc cấu hình Pod Disruption Budget giúp Kubernetes giới hạn số Pod có thể bị dừng trong cùng một thời điểm. Nhờ đó, ứng dụng luôn duy trì số Pod tối thiểu cần thiết để đảm bảo dịch vụ hoạt động ổn định.

Ứng dụng stateful

Các ứng dụng stateful như database cluster, Kafka hoặc Redis cluster thường yêu cầu một số lượng node tối thiểu để duy trì tính nhất quán dữ liệu và cơ chế quorum. Nếu nhiều node bị dừng cùng lúc, hệ thống có thể mất khả năng ghi dữ liệu hoặc xảy ra lỗi đồng bộ. Pod Disruption Budgets giúp kiểm soát việc gián đoạn Pod để tránh tình trạng cluster mất quorum. Nhờ PDB, các ứng dụng stateful có thể duy trì tính ổn định và an toàn dữ liệu trong quá trình vận hành.

Hệ thống production

Trong môi trường production, các ứng dụng thường phục vụ lượng người dùng lớn và yêu cầu uptime rất cao. Chỉ một vài phút downtime cũng có thể gây ảnh hưởng đáng kể đến trải nghiệm người dùng và hoạt động kinh doanh của doanh nghiệp. Vì vậy, việc đảm bảo hệ thống luôn duy trì đủ Pod hoạt động là yếu tố quan trọng. 

Pod Disruption Budgets giúp kiểm soát các hoạt động gián đoạn như node maintenance, autoscaling hoặc nâng cấp cluster. Nhờ cấu hình PDB hợp lý, doanh nghiệp có thể giảm thiểu rủi ro downtime và duy trì sự ổn định cho hệ thống production.

Khi nào nên sử dụng Pod Disruption Budgets?

Kubernetes service tại Viettel IDC

Đối với các doanh nghiệp đang triển khai Kubernetes trong môi trường production, việc sử dụng hạ tầng cloud ổn định và có khả năng quản lý cluster hiệu quả là yếu tố rất quan trọng. Viettel IDC hiện cung cấp dịch vụ Kubernetes được xây dựng trên nền tảng cloud mạnh mẽ cùng hệ thống Data Center đạt chuẩn quốc tế tại Việt Nam.

Dịch vụ Kubernetes của Viettel IDC giúp doanh nghiệp dễ dàng triển khai, quản lý và mở rộng containerized applications mà không cần tốn nhiều nguồn lực vận hành hạ tầng. Nền tảng hỗ trợ tự động hóa quá trình scale, quản lý cluster, monitoring và bảo mật hệ thống, giúp các đội DevOps tập trung vào phát triển ứng dụng thay vì quản trị hạ tầng phức tạp.

Nhờ khả năng tích hợp tốt với hệ sinh thái cloud, database và các dịch vụ hạ tầng khác, Kubernetes service của Viettel IDC đang trở thành giải pháp phù hợp cho các doanh nghiệp đang xây dựng hệ thống microservices và ứng dụng cloud-native tại Việt Nam.

Tìm hiểu thêm về dịch vụ tại: https://viettelidc.com.vn/viettel-kubernetes-service

Kết luận

Pod Disruption Budgets là một tính năng quan trọng trong Kubernetes giúp kiểm soát gián đoạn Pod và đảm bảo hệ thống luôn duy trì số lượng Pod tối thiểu cần thiết để hoạt động ổn định. Hiểu rõ Pod Disruption Budgets là gì và cách cấu hình PDB đúng cách sẽ giúp DevOps và Kubernetes engineers xây dựng hệ thống có độ ổn định cao, giảm thiểu downtime và nâng cao khả năng vận hành trong môi trường production.

Để được hỗ trợ tư vấn và tìm hiểu các dịch vụ của Viettel, bạn có thể liên hệ trực tiếp tới Viettel IDC qua các kênh:

- Hotline: 1800 8088 (miễn phí cước gọi)

- Fanpage: https://www.facebook.com/viettelidc  

Bình luận ()

Đăng nhập | Đăng ký
để gửi bình luận
Ý kiến của bạn sẽ được xét duyệt trước khi đăng.
Ý kiến của bạn sẽ được xét duyệt trước khi đăng.
Ý kiến của bạn sẽ được xét duyệt trước khi đăng.
Xem thêm bình luận

Tin liên quan

16/10/2026

vMaaS cập nhật thêm mô hình AI mới - Một API, nhiều mô hình lựa chọn linh hoạt, chi phí không đổi

Viettel Model as a Service (vMaaS) cập nhật thêm Gemma 3, Qwen3-VL và Llama Nemotron, đồng thời hỗ trợ thêm hơn 40 mô hình AI theo nhu cầu. Tìm hiểu cách chọn mô hình phù hợp qua một API.

15/10/2026

Thông báo về việc tổ chức đấu giá tài sản thanh lý tháng 10/2026

Công ty Cổ phần Viettel – CHT thông báo về việc đấu giá đối với danh mục tài sản: Tài sản thanh lý bao gồm: Lô 1 - Bình ắc quy + Lô 2 - Tủ Rack và thiết bị cơ điện.

14/10/2026

So sánh IDS và IPS: Sự khác biệt và cách lựa chọn phù hợp

So sánh IDS và IPS giúp doanh nghiệp hiểu rõ cách hai giải pháp phát hiện, ngăn chặn xâm nhập và lựa chọn phương án bảo vệ hệ thống mạng phù hợp.

14/10/2026

NVMe Hosting là gì? Ưu điểm, so sánh và cách lựa chọn

NVMe Hosting là gì? Tìm hiểu ưu điểm, so sánh với SSD SATA và HDD, cùng cách lựa chọn hosting phù hợp để tối ưu hiệu năng website.

14/10/2026

Sự khác biệt giữa các dịch vụ hosting của Việt Nam với quốc tế

Tìm hiểu sự khác biệt giữa các dịch vụ hosting của Việt Nam với quốc tế về tốc độ, chi phí, công nghệ và hỗ trợ kỹ thuật để chọn giải pháp phù hợp.

14/10/2026

So sánh dịch vụ hosting tại Viettel IDC với những nhà cung cấp khác: Nên chọn bên nào?

So sánh dịch vụ hosting tại Viettel IDC với những nhà cung cấp khác về giá, cấu hình, hiệu năng và bảo mật để chọn giải pháp phù hợp cho doanh nghiệp.

14/10/2026

Những nền tảng điện toán đám mây nào phù hợp nhất cho doanh nghiệp nhỏ? Cách lựa chọn hiệu quả

Những nền tảng điện toán đám mây nào phù hợp cho doanh nghiệp nhỏ? Tìm hiểu các lựa chọn phổ biến và tiêu chí chọn nền tảng phù hợp.

14/10/2026

Cách chọn máy chủ phù hợp cho website nhỏ tại Việt Nam: Từ cấu hình đến chi phí

Cách chọn máy chủ phù hợp cho website nhỏ tại Việt Nam dựa trên cấu hình, nhu cầu sử dụng, chi phí và khả năng mở rộng.

14/10/2026

Những yếu tố quan trọng khi lựa chọn dịch vụ Cloud Database để đảm bảo khả năng mở rộng và độ tin cậy

Những yếu tố quan trọng khi lựa chọn dịch vụ Cloud Database giúp doanh nghiệp đảm bảo khả năng mở rộng, hiệu năng và độ tin cậy cho hệ thống.

14/10/2026

Lỗi SQL Server Setup failed: Nguyên nhân và cách khắc phục

Lỗi SQL Server Setup failed do đâu? Tìm hiểu nguyên nhân, cách kiểm tra và khắc phục lỗi để cài đặt SQL Server thành công.