[发明专利]一种基于传输层路由访问k8s容器环境的方法及装置有效
申请号: | 202211140330.1 | 申请日: | 2022-09-20 |
公开(公告)号: | CN115242882B | 公开(公告)日: | 2023-01-10 |
发明(设计)人: | 里哲;叶玥;潘淑 | 申请(专利权)人: | 之江实验室 |
主分类号: | H04L67/63 | 分类号: | H04L67/63;H04L61/4511;H04L67/56;H04L67/141;H04L9/40 |
代理公司: | 杭州浙科专利事务所(普通合伙) 33213 | 代理人: | 孙孟辉;杨小凡 |
地址: | 311100 浙江省杭*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 传输 路由 访问 k8s 容器 环境 方法 装置 | ||
1.一种基于传输层路由访问k8s容器环境的方法,应用于容器云平台,其特征在于包括如下步骤:
步骤S1:获取客户端的基于域名和固定端口号的连接请求,固定端口号是代理服务器上暴露的固定端口号;
步骤S2:通过域名解析服务器,将连接请求解析并根据固定端口号,转发到相应的代理服务器上;
步骤S3:代理服务器根据预设的域名和容器集群目标节点的映射关系,将连接请求转发到目标节点;
步骤S4:根据预设的认证方式,建立网络连接。
2.根据权利要求1所述的一种基于传输层路由访问k8s容器环境的方法,其特征在于:所述步骤S1中,获取客户端发起的基于安全外壳协议ssh的连接请求,使用的域名后缀及端口号是固定的,域名前缀在容器组创建时由容器云平台动态分配。
3.根据权利要求1所述的一种基于传输层路由访问k8s容器环境的方法,其特征在于:所述步骤S2中,域名解析服务器解析结果是一组作用相同的代理服务器列表时,根据预设的负载均衡策略分配到相应的代理服务器上。
4.根据权利要求1所述的一种基于传输层路由访问k8s容器环境的方法,其特征在于:所述步骤S3中,映射关系是通过预设地址映射表,构建域名和目标节点NodePort类型的Service对象的映射关系,Service对象对应目标节点IP和端口。
5.根据权利要求4所述的一种基于传输层路由访问k8s容器环境的方法,其特征在于:一组代理服务器查询的地址映射表数据是相同的,地址映射表数据是键值对的形式,查询的索引是步骤S1中所述的域名,查询得到的值是k8s容器集群目标节点中创建的NodePort类型的Service对象,数据形式为IP:Port。
6.根据权利要求4所述的一种基于传输层路由访问k8s容器环境的方法,其特征在于:地址映射表数据在目标节点创建容器环境时上报,具体地包括:
步骤S3.1:前端或者API发起创建容器环境的请求,接收创建请求,解析成k8s API能够理解的参数并下发到k8s容器集群,在目标节点上创建容器组,同时创建NodePort类型的Service对象用于访问,并为Service对象打上容器组资源名称的标签;
步骤S3.2:基于域名后缀为当前容器组创建一个全局唯一的子域名,与容器组名称相关联并持久化存储;
步骤S3.3:查询该容器组的状态以及对应标签的Service对象,在容器组正常运行后,将容器组相关信息写入地址映射表;所述地址映射表包括:资源名称、访问域名、NodePort类型Service地址信息。
7.根据权利要求6所述的一种基于传输层路由访问k8s容器环境的方法,其特征在于:所述步骤S3.1中,容器环境通过创建deployment类型的资源提供,以提供稳定的可访问容器环境。
8.根据权利要求6所述的一种基于传输层路由访问k8s容器环境的方法,其特征在于:所述步骤S3.2中,为容器组创建全局唯一的域名后,即时同步到域名解析服务器,域名解析服务器根据预设的负载均衡策略,增加代理服务器列表中的IP和该域名映射的配置。
9.一种基于传输层路由访问k8s容器环境的装置,包括连接请求获取模块、域名解析服务器、代理服务器和认证连接模块,其特征在于:
所述连接请求获取模块,用于获取客户端的基于域名和固定端口号的连接请求,固定端口号是代理服务器上暴露的固定端口号;
所述域名解析服务器,将连接请求解析并根据固定端口号,转发到相应的代理服务器上;
所述代理服务器,根据预设的域名和容器集群目标节点的映射关系,将连接请求转发到目标节点;
所述认证连接模块,根据预设的认证方式,建立网络连接。
10.根据权利要求9所述的一种基于传输层路由访问k8s容器环境的装置,其特征在于:所述映射关系是通过预设地址映射表,构建域名和目标节点NodePort类型的Service对象的映射关系,Service对象对应目标节点IP和端口;具体通过应用层模块实现:
应用层模块接收创建容器环境的请求,将其解析成k8s API能够理解的参数并下发到k8s容器集群,在目标节点上创建容器组,同时创建NodePort类型的Service对象用于访问,并为Service对象打上容器组资源名称的标签;
应用层模块基于域名后缀为当前容器组创建一个全局唯一的子域名,与容器组名称相关联并持久化存储;
应用层模块查询该容器组的状态以及对应标签的Service对象,在容器组正常运行后,将容器组相关信息写入地址映射表;所述地址映射表包括:资源名称、访问域名、NodePort类型Service地址信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于之江实验室,未经之江实验室许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211140330.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:自动铺膜割膜系统及播种机
- 下一篇:一种土方回填压实度检测装置