7.8.3. 用于从客户端发起端口转发的协议
集群中的客户端资源可以通过向 Kubernetes API 服务器发出请求来启动到 pod 的端口转发。
使用以下格式的请求:
/proxy/nodes/<node_name>/portForward/<namespace>/<pod>
其中:
<node_name>- 指定节点的 FQDN。
<namespace>- 指定目标 pod 的命名空间。
<pod>- 指定目标 pod 的名称。
请求示例
/proxy/nodes/node123.openshift.com/portForward/myns/mypod
向 API 服务器发送端口转发请求后,客户端会将连接升级到支持多路复用流;当前使用 Hyptertext Transfer Protocol Version 2 (HTTP/2)。
客户端创建 port 标头中包含 pod 中目标端口的流。写入流的所有数据都通过 Kubelet 传送到目标 pod 和端口。同样,针对被转发连接从 pod 发送的所有数据都会被传回客户端上的同一流。
在完成端口转发请求后,客户端关闭所有流、升级的连接和底层连接。