Tuyển dụng
Viettel IDC

Metrics Server là gì? Cách hoạt động và cài đặt trong Kubernetes

03/08/2026

Khi workload tăng giảm liên tục, doanh nghiệp cần nắm được mức sử dụng CPU, bộ nhớ để tránh thiếu tài nguyên hoặc cấp phát dư thừa. Metrics Server hỗ trợ Kubernetes thu thập các chỉ số cần thiết cho hoạt động kiểm tra và autoscaling trong cluster. Cùng Viettel IDC tìm hiểu Metrics Server là gì, cách hoạt động, trường hợp sử dụng và quy trình cài đặt chi tiết.

Metrics Server là gì?

Metrics Server là công cụ thu thập các chỉ số sử dụng tài nguyên trong Kubernetes, chủ yếu gồm CPU và bộ nhớ của node, Pod và container. Các số liệu được lấy từ kubelet trên từng node, sau đó tổng hợp và cung cấp thông qua Metrics API Kubernetes.

Khác với nền tảng giám sát chuyên sâu, Metrics Server trong Kubernetes chỉ phản ánh mức tiêu thụ tài nguyên gần thời điểm hiện tại, không lưu trữ lịch sử dài hạn. Phạm vi của công cụ tập trung vào resource metrics Kubernetes, thay vì các chỉ số ứng dụng như lưu lượng truy cập, độ trễ hay tỷ lệ lỗi.

Metrics Server là gì?

Đặc điểm chính của Kubernetes Metrics Server

- Triển khai đơn giản: Chỉ cần một Deployment và có thể hoạt động trên phần lớn cluster đáp ứng yêu cầu cấu hình.

- Thu thập nhanh: Hỗ trợ autoscaling với chu kỳ cập nhật metrics khoảng 15 giây.

- Tiết kiệm tài nguyên: Tiêu thụ khoảng 1 millicore CPU và 2 MB bộ nhớ cho mỗi node trong cluster.

- Khả năng mở rộng cao: Có thể hỗ trợ các cluster quy mô lên đến khoảng 5.000 node.

Metrics Server dùng để làm gì trong Kubernetes?

Metrics Server k8s cung cấp các chỉ số CPU và bộ nhớ gần thời điểm hiện tại để Kubernetes theo dõi mức tiêu thụ tài nguyên của node, Pod và container. Những số liệu này được khai thác trong quá trình kiểm tra trạng thái cluster và tự động điều chỉnh workload theo nhu cầu thực tế.

Các chức năng của Metrics Server gồm:

- Cung cấp dữ liệu cho kubectl top nodes và kubectl top pods, giúp quản trị viên kiểm tra nhanh lượng CPU, memory đang được sử dụng.

- Hỗ trợ Horizontal Pod Autoscaler tính toán số lượng Pod cần tăng hoặc giảm dựa trên mức sử dụng tài nguyên.

- Bổ sung nguồn metrics cho Vertical Pod Autoscaler khi phân tích và đề xuất CPU, memory phù hợp cho container.

- Đưa resource metrics vào Kubernetes API thông qua nhóm metrics.k8s.io để các controller và công cụ khác có thể truy vấn.

Metrics Server dùng để làm gì trong Kubernetes?

Metrics Server hoạt động như thế nào?

Metrics Server hoạt động bằng cách định kỳ kết nối đến kubelet trên từng node để lấy số liệu sử dụng CPU và bộ nhớ của node, Pod cùng container. Các chỉ số sau đó được tổng hợp, lưu tạm trong bộ nhớ và cung cấp qua nhóm API metrics.k8s.io, giúp Kubernetes truy vấn dữ liệu tài nguyên gần thời điểm hiện tại mà không cần xây dựng kho lưu trữ dài hạn.

Cách hoạt động của Metrics Server diễn ra theo quy trình:

- Thu thập dữ liệu: Metrics Server truy vấn kubelet trên từng node theo chu kỳ khoảng 15 giây để lấy CPU memory metrics Kubernetes.

- Tổng hợp chỉ số: Số liệu được phân loại theo node, Pod và container trước khi chuẩn hóa về định dạng thống nhất.

- Lưu trữ tạm thời: Thông tin được giữ trong bộ nhớ RAM của Metrics Server, không ghi vào cơ sở dữ liệu dài hạn.

- Cung cấp qua API: Metrics Server đăng ký nhóm metrics.k8s.io với Kubernetes API Server.

- Phản hồi yêu cầu: Khi kubectl top, HPA hoặc VPA cần dữ liệu, API Server sẽ truy vấn Metrics Server và trả về kết quả tương ứng.

Metrics Server hoạt động như thế nào?

Khi nào nên sử dụng và không nên sử dụng Metrics Server K8s?

Metrics Server k8s phù hợp khi cluster cần theo dõi nhanh mức sử dụng CPU, bộ nhớ hoặc triển khai autoscaling dựa trên hai nhóm tài nguyên này. Ngược lại, công cụ không đáp ứng tốt các nhu cầu ngoài Kubernetes, yêu cầu số liệu có độ chính xác cao, lưu trữ lịch sử dài hạn hay mở rộng workload theo chỉ số tùy chỉnh.

Trường hợp

Nên sử dụng Metrics Server

Không nên sử dụng Metrics Server

Môi trường triển khai

Cluster Kubernetes cần Resource Metrics API

Hệ thống hoặc cluster không sử dụng Kubernetes

Horizontal Autoscaling

Mở rộng Pod dựa trên mức sử dụng CPU hoặc bộ nhớ

Mở rộng theo lưu lượng truy cập, độ trễ, số request hoặc chỉ số tùy chỉnh

Vertical Autoscaling

Hỗ trợ VPA phân tích, đề xuất hoặc điều chỉnh CPU và memory cho container

Cần quản lý tài nguyên dựa trên dữ liệu lịch sử dài hạn và phân tích chuyên sâu

Theo dõi tài nguyên

Kiểm tra nhanh mức tiêu thụ CPU, memory của node và Pod

Cần nguồn số liệu có độ chính xác cao để tính chi phí, lập báo cáo hoặc đối soát

Monitoring

Quan sát nhanh trạng thái tài nguyên gần thời điểm hiện tại

Cần dashboard, cảnh báo, truy vấn nâng cao và lưu trữ metrics lâu dài

Phạm vi chỉ số

CPU memory metrics Kubernetes

Network, disk I/O, application metrics, business metrics hoặc custom metrics

Khi nào nên sử dụng và không nên sử dụng Metrics Server k8s?

Hướng dẫn cài đặt Metrics Server trong Kubernetes

Cài đặt Metrics Server trong Kubernetes khá đơn giản, nhưng cluster cần bật API Aggregation Layer và cho phép Metrics Server kết nối đến kubelet trên các node. Trước khi triển khai, quản trị viên cũng nên kiểm tra phiên bản Kubernetes để lựa chọn bản Metrics Server tương thích, tránh lỗi API hoặc chứng chỉ trong quá trình vận hành. 

Bước 1: Kiểm tra cài đặt Metrics Server 

Một số nền tảng Kubernetes được quản lý có thể tích hợp sẵn Metrics Server. Trước tiên, hãy kiểm tra Deployment trong namespace kube-system:

kubectl get deployment metrics-server -n kube-system

Có thể thử thêm lệnh sau:

kubectl top nodes

Nếu hệ thống trả về danh sách node cùng mức sử dụng CPU và memory, Metrics Server đã hoạt động. Ngược lại, thông báo như Metrics API not available thường cho thấy thành phần này chưa được cài đặt hoặc chưa sẵn sàng.

Bước 2: Triển khai manifest chính thức

Chạy lệnh sau để tải và áp dụng manifest của phiên bản Metrics Server mới nhất:

kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml

Manifest sẽ tạo các tài nguyên cần thiết như ServiceAccount, ClusterRole, Deployment, Service và APIService trong cluster. Metrics Server hiện có thể được triển khai trực tiếp bằng YAML manifest hoặc thông qua Helm chart chính thức.

Bước 3: Kiểm tra Pod và Deployment

Sau khi áp dụng manifest, kiểm tra trạng thái triển khai:

kubectl get deployment metrics-server -n kube-system

Tiếp tục kiểm tra Pod:

kubectl get pods -n kube-system -l k8s-app=metrics-server

Pod cần chuyển sang trạng thái Running và cột READY hiển thị đầy đủ container sẵn sàng. Có thể theo dõi quá trình rollout bằng lệnh:

kubectl rollout status deployment metrics-server -n kube-system

 

Bước 4: Kiểm tra Metrics API Kubernetes

Metrics Server đăng ký APIService thuộc nhóm metrics.k8s.io. Dùng lệnh sau để kiểm tra:

kubectl get apiservice v1beta1.metrics.k8s.io

Nếu quá trình cài đặt thành công, cột AVAILABLE sẽ hiển thị True. Khi trạng thái vẫn là False, hãy xem thông tin chi tiết:

kubectl describe apiservice v1beta1.metrics.k8s.io

Ngoài ra, có thể truy vấn trực tiếp resource metrics Kubernetes qua API:

kubectl get --raw "/apis/metrics.k8s.io/v1beta1/nodes"

kubectl get --raw "/apis/metrics.k8s.io/v1beta1/pods"

Bước 5: Xác nhận bằng lệnh kubectl top

Khi Pod và APIService đã sẵn sàng, kiểm tra tài nguyên của các node:

kubectl top nodes

Để xem CPU và bộ nhớ của Pod trong namespace hiện tại, chạy:

kubectl top pods

Hoặc kiểm tra toàn bộ Pod trong cluster:

kubectl top pods -A

Metrics Server có thể cần một khoảng thời gian ngắn để thu thập số liệu sau khi vừa được triển khai. Vì vậy, nếu lệnh kubectl top chưa trả về kết quả ngay, hãy chờ một vài chu kỳ cập nhật rồi kiểm tra lại.

Bước 6: Kiểm tra log khi cài đặt gặp lỗi

Nếu Pod không chuyển sang trạng thái Running hoặc Metrics API chưa khả dụng, hãy xem log bằng lệnh:

kubectl logs -n kube-system deployment/metrics-server

Các lỗi thường liên quan đến kết nối giữa Metrics Server và kubelet, chứng chỉ TLS, địa chỉ node hoặc cấu hình API Aggregation Layer. Trong môi trường thử nghiệm sử dụng chứng chỉ kubelet tự ký, tùy chọn --kubelet-insecure-tls có thể giúp bỏ qua bước xác minh TLS, nhưng không nên xem đây là cấu hình mặc định cho môi trường production.

Kết luận

Hiểu rõ Metrics Server là gì giúp doanh nghiệp khai thác hiệu quả các chỉ số CPU, bộ nhớ và xây dựng cơ chế autoscaling phù hợp cho cụm Kubernetes. Khi được triển khai đúng cách, Metrics Server hỗ trợ đội ngũ vận hành theo dõi tài nguyên nhanh hơn, tối ưu workload và duy trì khả năng đáp ứng trước những biến động về tải.

Với những hệ thống cần khai thác Metrics Server, HPA và các cơ chế quản lý tài nguyên ngay từ đầu, Viettel Dedicated Kubernetes Service (vDKS) cung cấp một môi trường Kubernetes sẵn sàng cho nhu cầu vận hành thực tế. Doanh nghiệp có thể tập trung vào cấu hình workload, autoscaling và hiệu suất ứng dụng thay vì phải xử lý toàn bộ lớp hạ tầng nền, từ khởi tạo cluster đến quản trị tập trung.

Thông tin chi tiết: https://viettelidc.com.vn/viettel-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

05/11/2026

Lỗi msvcr100.dll là gì? Hướng dẫn cách sửa lỗi msvcr100 dll nhanh chóng

Lỗi msvcr100.dll khiến phần mềm không khởi chạy trên Windows. Xem hướng dẫn khắc phục từng bước để bổ sung thư viện còn thiếu và sửa chữa chương trình bị lỗi.

05/11/2026

Top 20 các extension visual studio code hữu ích cho lập trình viên

Các extension Visual Studio Code hữu ích mở rộng khả năng của trình soạn thảo, giúp lập trình viên tối ưu môi trường làm việc và nâng cao hiệu quả viết mã.

05/11/2026

Bridge là gì? Cách hoạt động và ứng dụng trong mạng LAN

Bridge là gì? Cầu nối mạng hoạt động dựa trên địa chỉ MAC để kết nối các phân đoạn LAN, kiểm soát luồng dữ liệu và hỗ trợ triển khai mạng vật lý lẫn mạng ảo.

05/11/2026

Lỗi Blocked due to other 4xx issue là gì? Nguyên nhân và cách fix lỗi

Lỗi Blocked due to other 4xx issue khiến Google không lập chỉ mục URL, cần xác định đúng mã HTTP và nguyên nhân để khắc phục hiệu quả trong Search Console.

05/11/2026

Test case là gì? Cách viết test case và mẫu minh họa cho người mới

Test case là gì và làm sao để viết rõ ràng, đúng yêu cầu? Nắm vững cách xây dựng trường hợp kiểm thử qua ví dụ cụ thể để phát hiện sai lệch trong hoạt động phần mềm.

05/11/2026

AI Inference là gì? Cơ chế và vai trò trong vận hành AI

AI inference là gì? Cách mô hình AI tạo kết quả sau huấn luyện, phân biệt với AI training, các hình thức triển khai và ứng dụng thực tế trong doanh nghiệp.

05/11/2026

DBeaver là gì? Hướng dẫn cài đặt và kết nối cơ sở dữ liệu với DBeaver

DBeaver là gì? Khám phá tính năng quản lý cơ sở dữ liệu, các phiên bản miễn phí và trả phí cùng hướng dẫn cài đặt, kết nối, chạy truy vấn SQL cho người mới.

05/11/2026

Cách thay đổi mật khẩu máy tính trên Windows 10, 11 đơn giản

Cách thay đổi mật khẩu máy tính trên Windows 10, 11 qua Settings, Control Panel, CMD và các công cụ quản trị được hướng dẫn chi tiết theo từng bước dễ thực hiện.

05/11/2026

Microsoft Management Console là gì? Cách sử dụng MMC cho người mới

Microsoft Management Console là gì? Đây là nền tảng tập hợp các công cụ quản trị Windows, hỗ trợ quản lý hệ thống, thêm snap-in và lưu console theo nhu cầu sử dụng.

05/11/2026

Rủi ro khi sử dụng giả lập online và cách phòng tránh

Rủi ro khi sử dụng giả lập online có thể gây lộ dữ liệu, mất quyền kiểm soát tài khoản, lừa đảo trực tuyến, vi phạm chính sách game, gián đoạn thao tác và phát sinh chi phí.