首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >kubectl top节点` `error:指标尚不可用`。使用metrics-server作为Heapster Depricated

kubectl top节点` `error:指标尚不可用`。使用metrics-server作为Heapster Depricated
EN

Stack Overflow用户
提问于 2018-10-08 09:07:56
回答 6查看 25.8K关注 0票数 14

Kubernetes找不到度量服务器api.I。我在Mac上使用Kubernetes和Docker。我试着从下面的例子[https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/]中做HPA。但是,当我执行命令kubectl get hpa时,我的目标仍然未知。然后我试过了kubectl describe hpa这给了我类似如下的错误:

代码语言:javascript
复制
  Name:                                                  php-apache
  Namespace:                                             default
  Labels:                                                <none>
  Annotations:                                           <none>
  CreationTimestamp:                                     Sun, 07 Oct 2018 12:36:31 -0700
  Reference:                                             Deployment/php-apache
  Metrics:                                               ( current / target )
    resource cpu on pods  (as a percentage of request):  <unknown> / 5%
  Min replicas:                                          1
  Max replicas:                                          10
  Conditions:
    Type           Status  Reason                   Message
    ----           ------  ------                   -------
    AbleToScale    True    SucceededGetScale        the HPA controller was able to get the target's current scale
    ScalingActive  False   FailedGetResourceMetric  the HPA was unable to compute the replica count: unable to get metrics for resource cpu: no metrics returned from resource metrics API
  Events:
    Type     Reason                        Age               From                       Message
    ----     ------                        ----              ----                       -------
    Warning  FailedComputeMetricsReplicas  1h (x34 over 5h)  horizontal-pod-autoscaler  failed to get cpu utilization: unable to get metrics for resource cpu: no metrics returned from resource metrics API
    Warning  FailedGetResourceMetric       1m (x42 over 5h)  horizontal-pod-autoscaler  unable to get metrics for resource cpu: no metrics returned from resource metrics API

我按照Kubernetes文档中的建议使用[https://github.com/kubernetes-incubator/metrics-server]。我也尝试过使用Minikube来做同样的事情。但这也不起作用。

运行kubectl get --raw /apis/metrics.k8s.io/v1beta1/nodes输出:

代码语言:javascript
复制
{
  "kind": "NodeMetricsList",
  "apiVersion": "metrics.k8s.io/v1beta1",
  "metadata": {
    "selfLink": "/apis/metrics.k8s.io/v1beta1/nodes"
  },
  "items": []
}
EN

回答 6

Stack Overflow用户

发布于 2018-10-09 04:28:28

解决方案(如果使用Minikube):

将Kubernetes的上下文更改为Minikube。

启用指标- minikube中的服务器和禁用堆栈。

minikube addons disable heapster

minikube addons enable metrics-server

使用以下步骤在集群中部署metrics-server:

git clone https://github.com/kubernetes-incubator/metrics-server.git

cd metrics-server

kubectl create -f deploy/1.7/ (如果是Kubernetes版本1.7)

kubectl create -f deploy/1.8+/(如果Kubernetes版本为1.8+)

启动minikube dashboadminikube service [your service]

试试kubectl top node

我发现这个(https://kubernetes.io/docs/tasks/configure-pod-container/assign-memory-resource/)资源很有帮助。

票数 8
EN

Stack Overflow用户

发布于 2021-03-20 02:19:03

运行此命令以创建metrics-server

代码语言:javascript
复制
kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/download/v0.4.2/components.yaml

然后重试此命令

代码语言:javascript
复制
kubectl top nodes

您可以获得以下结果:

代码语言:javascript
复制
NAME          CPU(cores)   CPU%   MEMORY(bytes)   MEMORY%   
票数 3
EN

Stack Overflow用户

发布于 2019-01-17 05:06:56

我知道这是一个迟来的答案,但我自己对Docker Kubernetes和Autoscaler有一些问题,在互联网上找不到好的答案。经过几天的调试,我发现metrics-server存在一些连接问题(无法连接到pods)。

我在metrics-server中关闭了TLS,它开始工作了。如果其他人遇到同样的问题,我在这里回复了我自己的帖子:

Docker Kubernetes (Mac) - Autoscaler unable to find metrics

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52694238

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档