k8s kubectl top pod報錯error Metrics API not available

misakivv發表於2024-07-04

目錄
  • 1、場景
  • 2、解決方法
    • 1、確認Metrics Server是否已經在叢集中安裝
    • 2、安裝metric-server元件
      • 2.1、元件地址
      • 2.2、元件與K8S叢集版本對應關係
      • 2.3、apply資源清單檔案
      • 2.4、驗證Metrics Server正常工作

1、場景

在使用kubectl top pod 命令時遇到了error: Metrics API not available

image-20240704111006843

這通常意味著你的叢集中沒有安裝或者正確配置Metrics Server

Metrics Server是一個叢集範圍的資源指標資料聚合器,它是Kubernetes的Horizontal Pod Autoscaler和kubectl top命令所依賴的服務。

2、解決方法

1、確認Metrics Server是否已經在叢集中安裝

kubectl get deployment metrics-server -n kube-system

image-20240704111239813

返回"metrics-server" not found說明沒有安裝Metrics Server

2、安裝metric-server元件

2.1、元件地址

Github上Metrics-Server元件地址

2.2、元件與K8S叢集版本對應關係

image-20240704111623575

2.3、apply資源清單檔案

image-20240704111744582

2.4、驗證Metrics Server正常工作

kubectl get deployment metrics-server -n kube-system

image-20240704185553933

或者看到對應的pod正常執行

kubectl get pods --namespace=kube-system | grep metrics-server 

image-20240704190255123

可以魔法上網的情況下,可以拉取到對應的映象

再次嘗試執行 kubectl top pod 命令檢視是否解決問題。

相關文章