您的位置:首页 > 其它

实现k8s容器的终端登录

2017-09-05 11:05 218 查看
简介:

要做一个基于容器的平台,平台必须应该有的一个功能就是登录容器终端,在k8s的dashboard的v1.6.3版本中已经实现了容器终端的登录。不过目前还有很多的bug,有待修复。

实现原理:

容器终端其实就是一个websocket的服务端和客户端的交互,所以只要实现一个websocket的服务端和客户端即可。

服务端:通过k8s的api结合websocket来实现

客户端:通过xterm.js来实现

实现容器登录终端的流程:

前端发送一个http的请求至服务端获取websocket连接校验用的sessionID, 然后通过获取的sessionID创建一个websocket连接(连接的方式:前端通过sockjs)之后实现socket交互,获取客户端发送的数据(就是在恰客户端终端输入的命令),然后发送对应的k8s的api到对应的容器,获取返回数据,回传给客户端终端,客户端终端通过xteam.js做相关的显示。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息