实现Kubernetes和OpenStack通信的方法、装置、设备及存储介质与流程
- 国知局
- 2024-08-02 14:31:37
本发明涉及云计算,尤其涉及一种实现kubernetes和openstack通信的方法、装置、设备及存储介质。
背景技术:
1、随着云计算和容器技术的迅速发展,企业和组织越来越多地依赖这些平台来管理和部署应用程序和网络服务。kubernetes作为一种流行的容器编排工具,提供了强大的容器编排和管理功能,同时openstack作为云基础设施管理平台,为虚拟化资源的管理和分配提供了支持。
2、目前openstack的部署已实现采用kubernetes作为底座平台,openstack和kubernetes虽处于同一物理环境中,但它们通常在各自独立的环境中操作,导致了两者之间存在网络隔离的问题。为解决网络隔离,现有技术需要复杂的配置和管理,以实现这两个平台之间的网络互通,但这不仅增加了管理复杂性,还可能导致性能瓶颈和安全性问题。
技术实现思路
1、本发明提供一种实现kubernetes和openstack通信的方法、装置、设备及存储介质,用以解决现有技术中kubernetes和openstack存在网络隔离的缺陷,实现现openstack和kubernetes之间的互联互通的技术效果。
2、本发明提供一种实现kubernetes和openstack通信的方法,包括:
3、创建kubernetes集群,并在所述kubernetes集群中配置针对开放虚拟网络的服务端口;
4、在所述kubernetes集群中部署openstack集群,并关闭所述openstack集群中的open vswitch服务;其中,所述openstack集群包括第一控制节点和第一计算节点;
5、获取所述kubernetes集群的所述开放虚拟网络的网络服务信息;
6、根据所述网络服务信息修改所述第一控制节点中的网络组件neutron的配置文件,以及修改所述第一计算节点中针对所述开放虚拟网络的网络参数;
7、检测所述openstack集群中是否接收到关于所述kubernetes集群的第一资源信息,以及检测所述kubernetes集群中是否接收到关于所述openstack集群的第二资源信息;
8、若均接收到,根据所述第二资源信息在所述kubernetes集群中创建资源子网subnet,以使得所述openstack集群和所述kubernetes集群之间实现通信。
9、根据本发明提供的一种实现kubernetes和openstack通信的方法,所述根据所述网络服务信息修改所述第一控制节点中的网络组件neutron的配置文件,包括:
10、将所述配置文件中针对所述开放虚拟网络的端口信息修改为所述网络服务信息中记录的端口信息;其中,所述网络服务信息中记录的端口信息包括ovn-controller、ovn-nb和ovn-sb的nodeport端口的端口信息;
11、重启所述网络组件neutron的neutron-server服务。
12、根据本发明提供的一种实现kubernetes和openstack通信的方法,所述修改所述第一计算节点中针对所述开放虚拟网络的网络参数,包括:
13、通过ovs-vsctl命令,将所述第一计算节点中的ovn-remote参数修改为所述kubernetes集群中的ovn-central节点的地址和端口号;以及
14、将所述第一计算节点中的ovn-encap-type参数修改为所述kubernetes集群的ovn网络协议;以及
15、将所述第一计算节点中的ovn-encap-ip参数修改为所述kubernetes集群的ovn-central节点ip。
16、根据本发明提供的一种实现kubernetes和openstack通信的方法,所述检测所述openstack集群中是否接收到关于所述kubernetes集群的第一资源信息,包括:
17、在所述openstack集群中,通过ovs-vsctl show命令查询是否接到所述kubernetes集群使用的ovn0网卡资源信息。
18、根据本发明提供的一种实现kubernetes和openstack通信的方法,所述检测所述kubernetes集群中是否接收到关于所述openstack集群的第二资源信息,包括:
19、在所述kubernetes集群中,检测是否接收到以vpc资源的形式上报的以neutron命名的openstack网络信息。
20、根据本发明提供的一种实现kubernetes和openstack通信的方法,在所述根据所述第二资源信息在所述kubernetes集群中创建资源子网subnet之后,所述方法还包括:
21、创建测试pod和测试虚拟机;
22、通过所述测试pod和所述测试虚拟机检测所述kubernetes集群和所述openstack集群的网络连通性。
23、根据本发明提供的一种实现kubernetes和openstack通信的方法,在所述检测所述kubernetes集群中是否接收到关于所述openstack集群的第二资源信息之后,所述方法,还包括:
24、若在所述openstack集群中未接收到所述第一资源信息和在所述kubernetes集群中未接收到所述第二资源信息任一项成立,跳转执行步骤创建kubernetes集群。
25、本发明还提供一种实现kubernetes和openstack通信的装置,包括:
26、第一创建模块,配置为创建kubernetes集群,并在所述kubernetes集群中配置针对开放虚拟网络的服务端口;
27、部署模块,配置为在所述kubernetes集群中部署openstack集群,并关闭所述openstack集群中的open vswitch服务;其中,所述openstack集群包括第一控制节点和第一计算节点;
28、获取模块,配置为获取所述kubernetes集群的所述开放虚拟网络的网络服务信息;
29、修改模块,配置为根据所述网络服务信息修改所述第一控制节点中的网络组件neutron的配置文件,以及修改所述第一计算节点中针对所述开放虚拟网络的网络参数;
30、第一检测模块,配置为检测所述openstack集群中是否接收到关于所述kubernetes集群的第一资源信息,以及检测所述kubernetes集群中是否接收到关于所述openstack集群的第二资源信息;
31、第二创建模块,配置为若均接收到,根据所述第二资源信息在所述kubernetes集群中创建资源子网subnet,以使得所述openstack集群和所述kubernetes集群之间实现通信。
32、本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述实现kubernetes和openstack通信的方法。
33、本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述实现kubernetes和openstack通信的方法。
34、本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述实现kubernetes和openstack通信的方法。
35、本发明提供的一种实现kubernetes和openstack通信的方法、装置、设备及存储介质,通过创建kubernetes集群,并在kubernetes集群中配置针对开放虚拟网络的服务端口,实现kubernetes集群通过开放虚拟网络来进行网络通信,在kubernetes集群中部署openstack集群,并关闭openstack集群中的open vswitch服务,以避免网络服务冲突。再根据kubernetes集群的开放虚拟网络的网络服务信息修改openstack集群的第一控制节点中的网络组件neutron的配置文件,以及修改openstack集群的第一计算节点中针对开放虚拟网络的网络参数,以使得openstack集群能够同时使用kubernetes集群的开发虚拟网络底座。在openstack集群中检测是否接收到关于kubernetes集群的第一资源信息,以及在kubernetes集群中检测是否接收到关于openstack集群的第二资源信息,保证对kubernetes集群和对openstack集群的配置成功,在均接收到对应的资源信息后,即可确定配置成功,最后根据第二资源信息在kubernetes集群中创建资源子网subnet,使得kubernetes集群中使用资源子网subnet的容器,将会与openstack集群的虚拟机在同一网络平面下,从而实现openstack集群和kubernetes集群之间的互联互通,克服现有技术中openstack和kubernetes之间存在的网络隔离的问题。
本文地址:https://www.jishuxx.com/zhuanli/20240801/243033.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。