Tuyển dụng
Viettel IDC

Lease trong Kubernetes là gì? Phân tích cơ chế hoạt động từ A-Z

09/06/2026

Lease là một cơ chế quan trọng giúp Kubernetes theo dõi trạng thái hoạt động của Node và các thành phần trong Control Plane một cách hiệu quả. Nhờ Lease, hệ thống có thể quản lý Heartbeat, thực hiện Leader Election và nhanh chóng phát hiện sự cố trong cluster. Vậy Lease trong Kubernetes là gì và cơ chế này hoạt động như thế nào? Hãy cùng Viettel IDC tìm hiểu chi tiết trong bài viết dưới đây nhé.

Lease trong Kubernetes là gì? Phân tích cơ chế hoạt động từ A-Z

Lease trong Kubernetes là gì?

Lease là một loại tài nguyên thuộc nhóm API coordination.k8s.io được Kubernetes sử dụng để lưu trữ thông tin tạm thời liên quan đến trạng thái hoạt động của các thành phần trong cluster. Nói một cách đơn giản, Lease hoạt động giống như một giấy xác nhận cho biết một Node hoặc một thành phần nào đó vẫn còn hoạt động và có quyền thực hiện một nhiệm vụ nhất định.

 

Tài nguyên Lease được giới thiệu nhằm giảm tải cho Kubernetes API Server và etcd trong quá trình xử lý Heartbeat của Node. Trước đây, Kubernetes phải liên tục cập nhật Node Status để xác nhận Node còn hoạt động. Tuy nhiên, trong các cluster lớn với hàng trăm hoặc hàng nghìn Node, việc cập nhật trạng thái liên tục có thể tạo ra lượng lớn request đến API Server và làm tăng tải cho etcd.

 

Để giải quyết vấn đề này, Kubernetes chuyển sang sử dụng Lease như một cơ chế Heartbeat nhẹ hơn. Thay vì cập nhật toàn bộ Node Status, kubelet chỉ cần gia hạn Lease định kỳ để thông báo rằng Node vẫn đang hoạt động. Điều này giúp giảm đáng kể lưu lượng dữ liệu được ghi vào etcd và cải thiện hiệu năng tổng thể của cluster.

 

Ngoài Heartbeat, Lease còn được sử dụng trong nhiều cơ chế quan trọng khác như Leader Election. Các thành phần của Control Plane có thể sử dụng Lease để xác định thành phần nào đang giữ vai trò Leader và đảm bảo chỉ có một thành phần duy nhất thực hiện các tác vụ điều phối tại một thời điểm.

Lease hoạt động như thế nào trong Kubernetes?

Để hiểu cách Lease hoạt động, trước tiên cần hiểu rằng Lease là một đối tượng Kubernetes được lưu trữ trong etcd giống như các tài nguyên khác. Mỗi Lease chứa một số thông tin quan trọng như danh tính của thành phần đang sở hữu Lease, thời gian gia hạn gần nhất và thời gian Lease còn hiệu lực.

 

Khi một thành phần muốn chứng minh rằng nó vẫn đang hoạt động, thành phần đó sẽ liên tục cập nhật Lease của mình theo chu kỳ nhất định. Quá trình này được gọi là Lease Renewal. Nếu Lease được gia hạn đúng thời gian quy định, Kubernetes sẽ hiểu rằng thành phần đó vẫn hoạt động bình thường. Ngược lại, nếu Lease không được cập nhật trong khoảng thời gian cho phép, Kubernetes sẽ coi thành phần đó đã gặp sự cố hoặc mất kết nối.

 

Ví dụ phổ biến nhất là Node Heartbeat. Trên mỗi Worker Node, kubelet sẽ định kỳ cập nhật Lease của Node lên Kubernetes API Server. Khi Lease được gia hạn thành công, Control Plane biết rằng Node vẫn đang hoạt động và có thể tiếp tục nhận workload mới. Nếu Lease không được cập nhật trong một khoảng thời gian nhất định, Kubernetes sẽ đánh dấu Node ở trạng thái NotReady và bắt đầu các quy trình xử lý lỗi tương ứng.

 

Một thành phần quan trọng trong Lease là lease DurationSeconds. Đây là khoảng thời gian Lease được xem là hợp lệ kể từ lần gia hạn gần nhất. Nếu quá thời gian này mà Lease chưa được cập nhật, Kubernetes sẽ coi Lease đã hết hạn.

 

Trong quá trình vận hành, Kubernetes liên tục theo dõi các Lease để đánh giá trạng thái của Node hoặc các thành phần khác trong cluster. Điều này giúp hệ thống phản ứng nhanh với các sự cố mà không cần liên tục truy vấn những dữ liệu lớn hơn như Node Status.

Vai trò của Lease trong Kubernetes

- Node Heartbeat: Đây là vai trò phổ biến nhất của Lease trong Kubernetes. Mỗi Node trong cluster đều sở hữu một Lease riêng được kubelet cập nhật định kỳ. Lease này đóng vai trò như tín hiệu Heartbeat giúp Control Plane biết rằng Node vẫn còn hoạt động. Thông qua Lease, Kubernetes có thể nhanh chóng phát hiện Node gặp sự cố mà không cần liên tục cập nhật Node Status như trước đây. Điều này giúp giảm đáng kể lượng request gửi đến API Server và giảm áp lực lên etcd.

 

- Leader Election: Trong môi trường Kubernetes có tính sẵn sàng cao, nhiều thành phần Control Plane thường được triển khai dưới dạng nhiều bản sao. Tuy nhiên, tại một thời điểm chỉ được phép có một bản sao thực hiện các tác vụ điều phối chính. Thành phần nào đang sở hữu Lease hợp lệ sẽ được xem là Leader. Trong quá trình hoạt động, Leader phải liên tục gia hạn Lease để duy trì quyền kiểm soát.

 

- Theo dõi trạng thái Cluster: Ngoài Heartbeat và Leader Election, Lease còn hỗ trợ Kubernetes theo dõi trạng thái của nhiều thành phần khác nhau trong cluster. Các controller hoặc dịch vụ có thể sử dụng Lease để xác nhận rằng chúng vẫn đang hoạt động hoặc đang giữ quyền thực hiện một nhiệm vụ cụ thể. Nhờ đó, Kubernetes có thể đưa ra các quyết định chính xác hơn khi điều phối tài nguyên, xử lý lỗi hoặc cân bằng tải trong môi trường phân tán.

Vai trò của Lease trong Kubernetes

Lease được sử dụng ở đâu trong Kubernetes?

Kubernetes Node

Một trong những ứng dụng phổ biến nhất của Lease là quản lý Node Heartbeat. Mỗi Node trong Kubernetes đều có một Lease riêng được tạo trong namespace kube-node-lease. Kubelet trên Node sẽ định kỳ cập nhật Lease này để thông báo với Control Plane rằng Node vẫn đang hoạt động bình thường.

 

Trước khi Lease được giới thiệu, Kubernetes sử dụng Node Status để gửi tín hiệu Heartbeat. Tuy nhiên, Node Status chứa rất nhiều thông tin như tài nguyên CPU, bộ nhớ, điều kiện hoạt động và metadata của Node. Việc cập nhật thường xuyên những dữ liệu này làm tăng đáng kể số lượng request đến API Server và tạo áp lực lớn lên etcd.

 

Lease giải quyết vấn đề này bằng cách chỉ cập nhật một lượng dữ liệu rất nhỏ. Điều này giúp Kubernetes theo dõi hàng nghìn Node cùng lúc mà vẫn duy trì hiệu năng ổn định. Nếu Lease của Node không được gia hạn trong thời gian quy định, hệ thống sẽ đánh dấu Node ở trạng thái NotReady và tiến hành các bước xử lý tiếp theo.

kube-controller-manager

kube-controller-manager là thành phần chịu trách nhiệm vận hành nhiều Controller quan trọng trong Kubernetes như Deployment Controller, ReplicaSet Controller, Node Controller hay Job Controller. Trong môi trường High Availability, thường sẽ có nhiều bản sao kube-controller-manager hoạt động đồng thời để đảm bảo khả năng chịu lỗi.

 

Tuy nhiên, nếu tất cả các bản sao cùng thực hiện tác vụ điều phối tại một thời điểm, hệ thống có thể gặp xung đột hoặc tạo ra các quyết định không nhất quán. Để giải quyết vấn đề này, Kubernetes sử dụng Lease làm nền tảng cho cơ chế Leader Election.

 

Tại mỗi thời điểm, chỉ có một kube-controller-manager giữ Lease hợp lệ và đóng vai trò Leader. Thành phần này sẽ thực hiện toàn bộ tác vụ điều phối chính. Nếu Leader gặp sự cố hoặc ngừng gia hạn Lease, một bản sao khác sẽ tự động tiếp quản vai trò Leader mà không làm gián đoạn hoạt động của cluster.

kube-scheduler

kube-scheduler là thành phần chịu trách nhiệm lựa chọn Node phù hợp để triển khai Pod. Tương tự kube-controller-manager, Scheduler cũng thường được triển khai theo mô hình nhiều bản sao trong các hệ thống yêu cầu độ sẵn sàng cao. Lease giúp kube-scheduler thực hiện Leader Election nhằm đảm bảo chỉ có một Scheduler giữ quyền ra quyết định tại một thời điểm. Điều này giúp tránh trường hợp nhiều Scheduler cùng xử lý một Pod và tạo ra xung đột trong quá trình phân bổ workload.

 

Khi Scheduler Leader gặp sự cố, Lease sẽ hết hạn và một Scheduler khác sẽ được bầu chọn để tiếp tục nhiệm vụ. Nhờ đó, quá trình lập lịch Pod diễn ra liên tục mà không cần sự can thiệp từ quản trị viên.

Cloud Controller Manager

Trong các môi trường Cloud Computing, Kubernetes thường sử dụng Cloud Controller Manager để tương tác với hạ tầng của nhà cung cấp dịch vụ như AWS, Azure hoặc Google Cloud. Cloud Controller Manager chịu trách nhiệm quản lý nhiều tác vụ quan trọng như cân bằng tải, quản lý địa chỉ IP, cập nhật trạng thái Node hoặc tích hợp các dịch vụ cloud. Để đảm bảo tính nhất quán khi triển khai theo mô hình nhiều bản sao, thành phần này cũng sử dụng Lease cho cơ chế Leader Election.

 

Nhờ Lease, Kubernetes có thể đảm bảo rằng chỉ một Cloud Controller Manager thực hiện các thay đổi liên quan đến hạ tầng cloud tại một thời điểm, từ đó hạn chế lỗi và tránh xung đột trong quá trình vận hành.

Lợi ích của Lease trong Kubernetes

Lease không chỉ giúp Kubernetes vận hành hiệu quả hơn mà còn mang lại nhiều lợi ích quan trọng về hiệu năng, khả năng mở rộng và tính sẵn sàng của hệ thống. Trước hết, Lease giúp giảm tải đáng kể cho API Server và etcd. Thay vì liên tục cập nhật những đối tượng dữ liệu lớn như Node Status, Kubernetes chỉ cần cập nhật một Lease nhỏ gọn. Điều này làm giảm lượng dữ liệu ghi vào etcd và giúp hệ thống phản hồi nhanh hơn khi số lượng Node tăng lên.

 

Bên cạnh đó, Lease giúp Kubernetes phát hiện lỗi nhanh hơn. Khi Node hoặc thành phần Control Plane ngừng gia hạn Lease, hệ thống có thể nhận biết sự cố chỉ sau một khoảng thời gian ngắn. Điều này giúp Kubernetes phản ứng nhanh với các tình huống mất kết nối hoặc hỏng hóc phần cứng.

 

Lease cũng đóng vai trò quan trọng trong khả năng mở rộng của Kubernetes. Trong các cluster có hàng trăm hoặc hàng nghìn Node, việc giảm lượng request Heartbeat là yếu tố then chốt để duy trì hiệu năng. Chính vì vậy, Lease được xem là một trong những cải tiến quan trọng giúp Kubernetes vận hành hiệu quả ở quy mô lớn.

Kết luận

Lease là một thành phần nhỏ nhưng có vai trò cực kỳ quan trọng trong kiến trúc Kubernetes hiện đại. Mong rằng bài viết trên sẽ giúp bạn hiểu rõ Lease trong Kubernetes là gì, giúp ích như thế nào cho DevOps Engineer và Kubernetes Administrator nắm bắt tốt hơn cách Control Plane vận hành, đồng thời hỗ trợ hiệu quả trong quá trình giám sát, tối ưu và xử lý sự cố hệ thống. 

Bạn có thể tham khảo thêm về dịch vụ Viettel Managed Kubernetes Service (vMKS) của Viettel IDC giúp doanh nghiệp triển khai, vận hành và mở rộng các ứng dụng Container hóa một cách tự động và dễ dàng tại đây nhé: 

https://viettelidc.com.vn/managed-kubernetes-service

Để đượ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.