【问题标题】:error while set up Prometheus metrics for kubernetes Horizontal Pod Auto-scaling为 kubernetes Horizo​​ntal Pod Auto-scaling 设置 Prometheus 指标时出错
【发布时间】:2019-05-20 02:54:13
【问题描述】:

我正在尝试设置指标以激活 HPA(Horizo​​ntal Pod Auto-scaling) 我只关注this tutorial Custom Metrics (Prometheus)

不幸的是,当我执行以下命令时:

  kubectl get --raw /apis/custom.metrics.k8s.io/v1beta1
{"kind":"APIResourceList","apiVersion":"v1","groupVersion":"custom.metrics.k8s.io/v1beta1","resources":[]}  

我必须在 resources 上看到很多东西,但是什么都没有。

【问题讨论】:

    标签: kubernetes kubernetes-helm kubernetes-ingress


    【解决方案1】:

    这可能是您设置 metrics-server 的问题,而 metrics-server 无法在 InternalIP 上找到您的资源。

    解决方法是将metrics-server/deploy/1.8+中的metrics-server-deployment.yaml文件替换为如下yaml文件:

    apiVersion: v1
     kind: ServiceAccount
     metadata:
       name: metrics-server
       namespace: kube-system
     ---
     apiVersion: extensions/v1beta1
     kind: Deployment
     metadata:
       name: metrics-server
       namespace: kube-system
       labels:
         k8s-app: metrics-server
     spec:
       selector:
         matchLabels:
           k8s-app: metrics-server
       template:
         metadata:
           name: metrics-server
           labels:
             k8s-app: metrics-server
         spec:
           serviceAccountName: metrics-server
           volumes:
           # mount in tmp so we can safely use from-scratch images and/or read-only containers
           - name: tmp-dir
             emptyDir: {}
           containers:
           - command:
             - /metrics-server
             - --metric-resolution=30s
             - --kubelet-insecure-tls
             - --kubelet-preferred-address-types=InternalIP
             name: metrics-server
             image: k8s.gcr.io/metrics-server-amd64:v0.3.1
             imagePullPolicy: Always
             volumeMounts:
             - name: tmp-dir
               mountPath: /tmp
    

    另外,启用kubelet.conf中的--authentication-token-webhook,然后您将能够获取指标。

    另外,请查看我的答案,了解使用 metrics-server 设置 HPA 的分步说明。

    How to Enable KubeAPI server for HPA Autoscaling Metrics

    希望这会有所帮助。如果您遇到任何问题,请恢复。

    【讨论】:

    • 感谢您的回复。我将修改应用于 metrics-server-deployment.yaml。但知道我想知道如何生成 kubelet.conf 来设置值
    • kubelet conf 应该已经存在于/var/lib/kubelet/config.yaml。请检查该文件。
    • 我在/var/lib/kubelet sniff 上看不到文件
    • 您是如何设置集群的?你用过kubeadm吗?您使用的是哪个版本的 Kubernetes?
    • 我找到了!在/etc/kubernetes/kubelet.conf
    猜你喜欢
    • 1970-01-01
    • 2019-06-12
    • 2019-03-31
    • 1970-01-01
    • 2020-02-05
    • 2018-10-09
    • 1970-01-01
    • 2020-09-08
    • 2019-12-10
    相关资源
    最近更新 更多