kubectl exec 命令失败:需要升级请求
kubectl exec command failing with: Upgrade request required
我在AWS上搭建了Rancher k8s环境。
Rancher 服务器位于带有 ssl 终端的经典 ELB 之后,可以通过 https://my.rancher.server
.
等方式访问
我通过 运行
通过命令行部署了一个简单的 pod
kubectl create -f <podfilename.yml>
然后我可以 get
和 describe
吊舱。
但是,以下命令失败:
$ 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 listener,也配置了代理协议。
ELB的HTTP不支持websockets;您需要使用 SSL 侦听器 -> TCP 后端并配置代理协议支持。 http://rancher.com/docs/rancher/v1.6/en/installing-rancher/installing-server/basic-ssl-config/#elb
我在AWS上搭建了Rancher k8s环境。
Rancher 服务器位于带有 ssl 终端的经典 ELB 之后,可以通过 https://my.rancher.server
.
我通过 运行
通过命令行部署了一个简单的 podkubectl create -f <podfilename.yml>
然后我可以 get
和 describe
吊舱。
但是,以下命令失败:
$ 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 listener,也配置了代理协议。
ELB的HTTP不支持websockets;您需要使用 SSL 侦听器 -> TCP 后端并配置代理协议支持。 http://rancher.com/docs/rancher/v1.6/en/installing-rancher/installing-server/basic-ssl-config/#elb