国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

k8s的error: metrics not available yet問題處理

這篇具有很好參考價值的文章主要介紹了k8s的error: metrics not available yet問題處理。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

解決步驟

因項目要求,需在k8s集群中使用 kubectl top node命令,但是一直報error: metrics not available yet錯誤。為了更好的復現問題,我們將本次解決問題的步驟整理如下。

環(huán)境說明

k8s版本:v1.23.5
k8s部署方式:kubeadm

##版本說明,當前的k8s版本為v1.23.5
[root@XXXX ~]# kubectl get node
NAME                        STATUS   ROLES    AGE    VERSION
test-worker1   Ready    <none>   160d   v1.23.5

問題現象

#1 查看node出錯
[root@XXXX ~]# kubectl top node
error: metrics not available yet

#2 查看pod沒問題 
[root@XXXXX ~]# kubectl top pod
NAME               CPU(cores)   MEMORY(bytes)   
XXX-48jgq   16m          75Mi            
XXX-55g2z   12m          82Mi            
XXX-6tj6c   8m           143Mi 

初次排查

# 查看metrics.k8s.io的api情況
kubectl get --raw /apis/metrics.k8s.io/v1beta1 | python -m json.tool
{
    "apiVersion": "v1",
    "groupVersion": "metrics.k8s.io/v1beta1",
    "kind": "APIResourceList",
    "resources": [
        {
            "kind": "NodeMetrics",
            "name": "nodes",
            "namespaced": false,
            "singularName": "",
            "verbs": [
                "get",
                "list"
            ]
        },
        {
            "kind": "PodMetrics",
            "name": "pods",
            "namespaced": true,
            "singularName": "",
            "verbs": [
                "get",
                "list"
            ]
        }
    ]
}

#2 查看apiservices 服務
kubectl describe apiservices v1beta1.metrics.k8s.io
Status:
  Conditions:
    Last Transition Time:  2023-11-07T16:16:24Z
    Message:               all checks passed
    Reason:                Passed
    Status:                True
    Type:                  Available

問題解決

部署metric-server,使用yaml方式進行部署,因為git下載不下來,我提前下載下來,然后換了阿里的鏡像源,要注意metric-server和k8s版本的兼容性:

版本兼容性

metrics not available yet,kubernetes,容器,云原生
根據圖表,我們的k8s版本是1.23,因此我們使用metrics-server:v0.6.4文章來源地址http://www.zghlxwxcb.cn/news/detail-820615.html

metric-server.yaml

apiVersion: v1
kind: ServiceAccount
metadata:
  labels:
    k8s-app: metrics-server
  name: metrics-server
  namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  labels:
    k8s-app: metrics-server
    rbac.authorization.k8s.io/aggregate-to-admin: "true"
    rbac.authorization.k8s.io/aggregate-to-edit: "true"
    rbac.authorization.k8s.io/aggregate-to-view: "true"
  name: system:aggregated-metrics-reader
rules:
- apiGroups:
  - metrics.k8s.io
  resources:
  - pods
  - nodes
  verbs:
  - get
  - list
  - watch
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  labels:
    k8s-app: metrics-server
  name: system:metrics-server
rules:
- apiGroups:
  - ""
  resources:
  - nodes/metrics
  verbs:
  - get
- apiGroups:
  - ""
  resources:
  - pods
  - nodes
  verbs:
  - get
  - list
  - watch
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
  labels:
    k8s-app: metrics-server
  name: metrics-server-auth-reader
  namespace: kube-system
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: Role
  name: extension-apiserver-authentication-reader
subjects:
- kind: ServiceAccount
  name: metrics-server
  namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  labels:
    k8s-app: metrics-server
  name: metrics-server:system:auth-delegator
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: system:auth-delegator
subjects:
- kind: ServiceAccount
  name: metrics-server
  namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  labels:
    k8s-app: metrics-server
  name: system:metrics-server
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: system:metrics-server
subjects:
- kind: ServiceAccount
  name: metrics-server
  namespace: kube-system
---
apiVersion: v1
kind: Service
metadata:
  labels:
    k8s-app: metrics-server
  name: metrics-server
  namespace: kube-system
spec:
  ports:
  - name: https
    port: 443
    protocol: TCP
    targetPort: https
  selector:
    k8s-app: metrics-server
---
apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    k8s-app: metrics-server
  name: metrics-server
  namespace: kube-system
spec:
  selector:
    matchLabels:
      k8s-app: metrics-server
  strategy:
    rollingUpdate:
      maxUnavailable: 0
  template:
    metadata:
      labels:
        k8s-app: metrics-server
    spec:
      containers:
      - args:
        - --cert-dir=/tmp
        - --secure-port=4443
        - --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname
        - --kubelet-use-node-status-port
        - --metric-resolution=15s
        - --kubelet-insecure-tls 
        image: registry.cn-hangzhou.aliyuncs.com/rainux/metrics-server:v0.6.4
        imagePullPolicy: IfNotPresent
        livenessProbe:
          failureThreshold: 3
          httpGet:
            path: /livez
            port: https
            scheme: HTTPS
          periodSeconds: 10
        name: metrics-server
        ports:
        - containerPort: 4443
          name: https
          protocol: TCP
        readinessProbe:
          failureThreshold: 3
          httpGet:
            path: /readyz
            port: https
            scheme: HTTPS
          initialDelaySeconds: 20
          periodSeconds: 10
        resources:
          requests:
            cpu: 100m
            memory: 200Mi
        securityContext:
          allowPrivilegeEscalation: false
          readOnlyRootFilesystem: true
          runAsNonRoot: true
          runAsUser: 1000
        volumeMounts:
        - mountPath: /tmp
          name: tmp-dir
      nodeSelector:
        kubernetes.io/os: linux
      priorityClassName: system-cluster-critical
      serviceAccountName: metrics-server
      volumes:
      - emptyDir: {}
        name: tmp-dir
---
apiVersion: apiregistration.k8s.io/v1
kind: APIService
metadata:
  labels:
    k8s-app: metrics-server
  name: v1beta1.metrics.k8s.io
spec:
  group: metrics.k8s.io
  groupPriorityMinimum: 100
  insecureSkipTLSVerify: true
  service:
    name: metrics-server
    namespace: kube-system
  version: v1beta1
  versionPriority: 100

問題驗證

#1 運行yaml文件
[root@k8s-master][~]
$kubectl create -f metrics-server.yaml

#2 問題驗證
[root@XXXX][~]
$kubectl top node
NAME         CPU(cores)   CPU%   MEMORY(bytes)   MEMORY%   
k8s-master   194m         9%     1689Mi          35%       
     

[root@XXXX][~]
$kubectl top pod
NAME                                      CPU(cores)   MEMORY(bytes)   
cm-deploy-XXXX               0m           3Mi             
nfs-XXXXX   0m           13Mi 

到了這里,關于k8s的error: metrics not available yet問題處理的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯(lián)網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • Kubernetes遇到error: Metrics API not available

    導致這個問題原因是沒有安裝Metrics Server,接下來我會介紹Metrics Server在集群中的作用以及官方網站的解釋。如果想直接解決報錯可以看“解決“error: Metrics API not available”報錯”章節(jié)。 1.Metrics Server作用理解 Kubernetes官網鏈接 Kubernetes Metrics Server是一個Kubernetes集群組件,它收集

    2024年02月11日
    瀏覽(14)
  • K8S異常之Unable to connect to the server: x509: certificate has expired or is not yet valid

    K8S異常之Unable to connect to the server: x509: certificate has expired or is not yet valid

    2.1 處理步驟 2.2 處理步驟詳細情況 如上,發(fā)現很多證書都是 invalid 的狀態(tài),接著更新證書: 如下,更新證書后,證書過期時間已經更新為 365d 3.1 再次查看kubectl get node,發(fā)現有新的錯誤: error: You must be logged in to the server (Unauthorized) 3.2 上述錯誤解決方案 備份配置文件 cp -rp

    2024年02月03日
    瀏覽(99)
  • 【k8s】:部署、使用 metrics-server

    【k8s】:部署、使用 metrics-server

    ??The Begin??點點關注,收藏不迷路?? 基于Kubernetes 集群,并已經安裝并配置好 kubectl 工具。 Metrics Server 可以幫助我們監(jiān)控集群中節(jié)點和容器的資源使用情況。 在本篇 CSDN 博客中,我將詳細介紹如何部署 Metrics Server 到 Kubernetes 集群中。 工作流程說明: 1、用戶執(zhí)行 kubectl

    2024年04月16日
    瀏覽(21)
  • K8S之 metrics-server 組件(十八)

    K8S之 metrics-server 組件(十八)

    首先下載:K8S之 metrics-server 組件 ? ? ? ????????????????metrics-server 是一個集群范圍內的資源數據集和工具,同樣的,metrics-server 也只是顯示數據,并不提供數據存儲服務,主要關注的是資源度量 API 的實現,比如 CPU、文件描述符、內存、請求延時等指標,metric-serv

    2024年02月11日
    瀏覽(28)
  • 已解決: Error: ErrImagePull (K8s) 問題

    已解決: Error: ErrImagePull (K8s) 問題

    ???? 博主貓頭虎(????)帶您 Go to New World??? ?? 博客首頁 : ????貓頭虎的博客?? 《面試題大全專欄》 ?? 文章圖文并茂??生動形象??簡單易學!歡迎大家來踩踩~?? 《IDEA開發(fā)秘籍專欄》 ?? 學會IDEA常用操作,工作效率翻倍~?? 《100天精通Golang(基礎入門篇)》 ??

    2024年02月21日
    瀏覽(17)
  • K8S系統(tǒng)監(jiān)控:使用Metrics Server和Prometheus

    K8S系統(tǒng)監(jiān)控:使用Metrics Server和Prometheus

    Kubernetes 也提供了類似的linux top的命令,就是 kubectl top,不過默認情況下這個命令不會生效,必須要安裝一個插件 Metrics Server 才可以。 Metrics Server 是一個專門用來收集 Kubernetes 核心資源指標(metrics)的工具,它定時從所有節(jié)點的 kubelet 里采集信息,但是對集群的整體性能影

    2024年02月16日
    瀏覽(53)
  • k8s 問題處理集錦

    當使用 Kubernetes(K8s)時,可能會遇到各種問題。以下是一些常見的 K8s 問題以及相應的處理方法集錦: Pod 狀態(tài)不正?;驘o法正常啟動: 檢查 Pod 的描述文件,確保配置正確。 使用 kubectl describe pod 命令查看 Pod 的詳細信息和事件,以便定位問題。 檢查相關容器的日志,使用

    2024年02月11日
    瀏覽(19)
  • 【k8s、云原生】基于metrics-server彈性伸縮

    【k8s、云原生】基于metrics-server彈性伸縮

    第四階段 時 ?間:2023年8月18日 參加人:全班人員 內 ?容: 基于metrics-server彈性伸縮 目錄 一、Kubernetes部署方式 (一)minikube (二)二進制包 (三)Kubeadm 二、基于kubeadm部署K8S集群 (一)環(huán)境準備 (二)部署kubernetes集群 (三)安裝Dashboard UI (四)metrics-server服務部署 (

    2024年02月12日
    瀏覽(23)
  • 夜鶯(Flashcat)V6監(jiān)控(五):夜鶯監(jiān)控k8s組件(下)---使用kube-state-metrics監(jiān)控K8s對象

    夜鶯(Flashcat)V6監(jiān)控(五):夜鶯監(jiān)控k8s組件(下)---使用kube-state-metrics監(jiān)控K8s對象

    目錄 (一)前言 (二)categraf作為Daemonset的方式去運行監(jiān)控k8s組件 ?(1)1.24版本以下的k8s集群部署方法: ①創(chuàng)建autu.yaml綁定權限 ②Daemonset部署categraf采集監(jiān)控kubelet,kube-proxy ③測試數據是否采集成功 ?(2)1.24版本以上的k8s集群部署方法: ①創(chuàng)建secret token 綁定sa賬號 ③測試認證 ④Daemo

    2024年02月09日
    瀏覽(34)
  • K8S Error getting node問題的排查思路

    在安裝K8S集群或者運行過程中,大家可能會遇到 \\\"Error gettting node\\\" 的問題,例如: 排查這類問題的方法是執(zhí)行如下命令查看具體錯誤原因: 找到最初的報錯,根據不同的錯誤進行處理。 根據我遇到過的問題,主要有以下可能: 沒有禁用swap內存 pause鏡像沒有下載成功(這里尤

    2024年02月13日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包