You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Dask Kubernetes Operator启动失败:无法访问external.metrics.k8s.io/v1beta1 API

Dask Kubernetes Operator启动失败求助

报错信息

[2022-12-04 12:17:28,456] kopf._core.reactor.o [ERROR   ] Request attempt #9/9 failed; escalating: GET https://10.64.0.1:443/apis/external.metrics.k8s.io/v1beta1 -> APIServerError(None, None)

执行命令及结果

  1. 查询custom metrics API:
kubectl get --raw /apis/custom.metrics.k8s.io/v1beta1

返回:

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

返回:

Error from server (ServiceUnavailable): the server is currently unable to handle the request

排查及解决步骤

  • 检查外部metrics组件运行状态
    确认集群中提供external metrics的组件(如prometheus-adapter、custom-metrics-apiserver等)是否正常运行:

    # 替换为组件所在的实际命名空间,如monitoring或kube-system
    kubectl get pods -n <namespace> | grep metrics-adapter
    

    若pod异常,查看日志定位问题:

    kubectl logs <adapter-pod-name> -n <namespace>
    
  • 验证APIService注册状态
    检查external.metrics.k8s.io的APIService可用性:

    kubectl get apiservices v1beta1.external.metrics.k8s.io
    

    若状态不为Available=True,查看详细事件:

    kubectl describe apiservices v1beta1.external.metrics.k8s.io
    

    常见问题包括端点不可达、证书错误或权限不足。

  • 确认服务与Endpoint关联
    检查external metrics adapter对应的Service及后端Endpoint:

    # 替换为实际服务名和命名空间
    kubectl get svc <metrics-adapter-service> -n <namespace>
    kubectl get endpoints <metrics-adapter-service> -n <namespace>
    

    确保Service的标签选择器与adapter pod标签匹配,且Endpoint列表包含正常的pod IP。

  • 检查组件配置正确性
    若使用prometheus-adapter,确认配置文件中正确定义了metrics暴露规则,且能正常连接到Prometheus:

    kubectl get configmap <adapter-configmap> -n <namespace> -o yaml
    

    配置错误会导致adapter无法正常提供metrics数据,进而引发APIService不可用。


内容的提问来源于stack exchange,提问作者Michael Doron

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 19:10:17