kubectl exec命令失败:需要升级请求

问题描述 投票:0回答:1

我在AWS上设置了Rancher k8s环境。

Rancher服务器位于带有ssl终端的经典ELB后面,可以通过例如https://my.rancher.server访问。

我通过运行命令行部署了一个简单的pod

kubectl create -f <podfilename.yml>

我然后能够getdescribe豆荚。

但是,以下命令失败:

$ kubectl exec my.pod.name -- ls /app
W1219 12:13:12.053543   16174 http.go:363] Error reading backend response: unexpected EOF
error: error sending request: Post https://my.rancher.server/r/projects/1a1043/kubernetes:6443/api/v1/namespaces/default/pods/my.pod.name/exec?command=ls&command=%2Fapp&container=k8s-demo&container=k8s-demo&stderr=true&stdout=true: unexpected EOF

编辑:这是json返回的:

{
  "kind": "Status",
  "apiVersion": "v1",
  "metadata": {

  },
  "status": "Failure",
  "message": "Upgrade request required",
  "reason": "BadRequest",
  "code": 400
}

我已经将我的elb配置为使用ssl侦听器,并且还配置了代理协议。

enter image description here

amazon-web-services kubernetes kubectl rancher
1个回答
0
投票

ELB的HTTP不支持websockets;您需要使用SSL侦听器 - > TCP后端并配置代理协议支持。 http://rancher.com/docs/rancher/v1.6/en/installing-rancher/installing-server/basic-ssl-config/#elb

© www.soinside.com 2019 - 2024. All rights reserved.