'kubectl get hpa' 不显示外部指标显示“<unknown type>”

'kubectl get hpa' does not show external metrics displays "<unknown type>"

我们在 GKE 中设置了集群,并通过堆栈驱动器将 pods 扩展为 'external metrics'。缩放工作正常,但是当我尝试使用命令

查看状态时

$ kubectl 获取 hpa

它在 TARGET 中显示 'unknown type' 而不是下面的实际值。

NAME                      REFERENCE                            TARGETS          MINPODS   MAXPODS   REPLICAS   AGE
accounts-service          Deployment/accounts-service          <unknown type>        1         200       1          15d

我当前的 kubectl 版本显示为

$ kubectl version
Client Version: version.Info{Major:"1", Minor:"8", GitVersion:"v1.8.6", GitCommit:"6260bb08c46c31eea6cb538b34a9ceb3e406689c", GitTreeState:"clean", BuildDate:"2017-12-21T06:34:11Z", GoVersion:"go1.8.3", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"11+", GitVersion:"v1.11.5-gke.4", GitCommit:"0c81dc1e8c26fa2c47e50072dc7f98923cb2109c", GitTreeState:"clean", BuildDate:"2018-12-07T00:22:06Z", GoVersion:"go1.10.3b4", Compiler:"gc", Platform:"linux/amd64"}

有没有人遇到过类似的问题?

在我的例子中,我必须将以下标志添加到所有主节点的 kube-controller。

horizontalPodAutoscalerUseRestClients: true

实际上在我的机器上升级 kubectl 客户端解决了这个问题。

我按照接受的答案执行了步骤,它按预期显示了 'External Metric'。

张贴它以防其他人遇到同样的问题。