一种基于固定IP的多平面云教学环境搭建方法及系统
文献发布时间:2023-06-19 19:30:30
技术领域
本发明涉及云教学技术领域,特别指一种基于固定IP的多平面云教学环境搭建方法及系统。
背景技术
随着时代的进步,涌现了大量的云教学平台,学员可以足不出户,通过云教学平台进行在线学习。
目前,云教学平台在搭建教材的教学环境时,主机名和IP地址是固定的,但云教学平台通常要求不同学员的教学环境是相互隔离的,如果为每个学员分配不同的命名空间,会带来管理上的复杂性,比如资源分配、回收、监控都难以做到统一;如果所有学员的教学环境在同一命名空间下,又不允许构建IP地址相同的教学环境,使得教学环境无法与教材镜像保持一致,一方面影响了教材镜像的制作,比如在一些需要配置IP地址的时候无法预置,需要学员在教学环境中手工进行配置;另一方面,由于教学环境的配置较多,容易引发问题,当发生问题时,由于IP地址不同,往往要做不同的处理,因此也会影响教学进度。
因此,如何提供一种基于固定IP的多平面云教学环境搭建方法及系统,实现构建相互隔离且同构的教学环境,保持教学环境与教学镜像的一致性,成为一个亟待解决的技术问题。
发明内容
本发明要解决的技术问题,在于提供一种基于固定IP的多平面云教学环境搭建方法及系统,实现构建相互隔离且同构的教学环境,保持教学环境与教学镜像的一致性。
第一方面,本发明提供了一种基于固定IP的多平面云教学环境搭建方法,包括如下步骤:
步骤S10、基于桥接方式或者MACVLAN方式创建云教学环境的若干个子网;
步骤S20、为各所述子网分别创建若干个POD;
步骤S30、对各所述子网内的POD进行功能性验证;
步骤S40、对各所述子网内的POD进行配置,使其基于固定IP调度到同一节点,进而完成云教学环境的搭建。
进一步地,所述步骤S10中,所述基于MACVLAN方式创建云教学环境的若干个子网具体为:
从云教学环境的宿主机中选取一个网卡,将选取的所述网卡虚拟成若干张子网卡,基于各所述子网卡分别创建一子网;
各所述子网的名称全局唯一。
进一步地,所述步骤S20具体为:
基于设定的主机名以及IP地址,为各所述子网分别创建若干个POD。
进一步地,所述步骤S30具体为:
对各所述子网内的POD进行至少包括文件传输、SSH的功能性验证。
进一步地,所述步骤S40具体为:
在各所述子网内的POD的templates中增加bridge.yaml配置文件,修改templates中的deployment.yaml文件,以删除反亲和调度配置,增加亲和调度配置,让同一所述子网内的一组POD调度到同一节点;
并在deployment.yaml文件中为各POD增加一固定IP,进而完成云教学环境的搭建。
第二方面,本发明提供了一种基于固定IP的多平面云教学环境搭建系统,包括如下模块:
子网创建模块,用于基于桥接方式或者MACVLAN方式创建云教学环境的若干个子网;
POD创建模块,用于为各所述子网分别创建若干个POD;
POD功能性验证模块,用于对各所述子网内的POD进行功能性验证;
POD配置模块,用于对各所述子网内的POD进行配置,使其基于固定IP调度到同一节点,进而完成云教学环境的搭建。
进一步地,所述子网创建模块中,所述基于MACVLAN方式创建云教学环境的若干个子网具体为:
从云教学环境的宿主机中选取一个网卡,将选取的所述网卡虚拟成若干张子网卡,基于各所述子网卡分别创建一子网;
各所述子网的名称全局唯一。
进一步地,所述POD创建模块具体用于:
基于设定的主机名以及IP地址,为各所述子网分别创建若干个POD。
进一步地,所述POD功能性验证模块具体用于:
对各所述子网内的POD进行至少包括文件传输、SSH的功能性验证。
进一步地,所述POD配置模块具体用于:
在各所述子网内的POD的templates中增加bridge.yaml配置文件,修改templates中的deployment.yaml文件,以删除反亲和调度配置,增加亲和调度配置,让同一所述子网内的一组POD调度到同一节点;
并在deployment.yaml文件中为各POD增加一固定IP,进而完成云教学环境的搭建。
本发明的优点在于:
1、通过桥接方式或者MACVLAN方式创建云教学环境的若干个子网,为各子网分别创建若干个POD,对各子网内的POD进行功能性验证后,对各子网内的POD进行配置,使其基于固定IP调度到同一节点,以完成云教学环境的搭建,即设计了一个双层网络结构,在原有的基于kubernetes的单一网络架构上,为各学员构建隔离、完全同构的子网平面,实现构建相互隔离且同构的教学环境,保持教学环境与教学镜像的一致性,进而极大的提升了云教学的统一性和标准化。
2、将多平面网络构建技术运用到云教学环境搭建中,有效提升云教学环境的统一性和标准化;在云教学环境的同一命名空间下,通过构建多个同构的子网,形成既统一又隔离的网络结构,既保证了每个学员的教学环境的独立性和完整性,又保证了课件镜像、教材的统一性;且通过构建同构子网,将云教学环境管理与网络管理融为一体,简化了云环境管理流程,无须构建不同的命名空间。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1是本发明一种基于固定IP的多平面云教学环境搭建方法的流程图。
图2是本发明一种基于固定IP的多平面云教学环境搭建系统的结构示意图。
图3是本发明的网络架构图。
具体实施方式
本申请实施例中的技术方案,总体思路如下:通过桥接方式或者MACVLAN方式创建云教学环境的若干个子网,为各子网分别创建若干个POD,对各子网内的POD进行配置使其调度到同一节点,即设计了一个双层网络结构,为各学员构建隔离、完全同构的子网平面,以实现构建相互隔离且同构的教学环境,保持教学环境与教学镜像的一致性。
请参照图1至图3所示,本发明一种基于固定IP的多平面云教学环境搭建方法的较佳实施例,包括如下步骤:
步骤S10、基于桥接方式或者MACVLAN方式创建云教学环境的若干个子网;采用桥接方式需要进行亲和调度配置,即将各POD聚合在同一节点(主机)上,减少跨节点的网络调用,提升教学案例的执行效率;MACVLAN方式支持将各POD分散在不同节点上,可以解决云平台资源不平衡和服务端口冲突等问题;
桥接方式充当同一节点上多个POD之间的网络交换机,其创建了一个不链接任何物理主机接口的桥接接口,因此不会与任何外部网络建立连接,包括其他节点上的其他POD,即子网不能跨节点;MACVLAN方式与传统的网络连接一致,能跨节点,其连接使用每个具有MAC地址的子接口直接与底层网络绑定,即必须链接到具体的网卡。
步骤S20、为各所述子网分别创建若干个POD;
步骤S30、对各所述子网内的POD进行功能性验证;
步骤S40、对各所述子网内的POD进行配置,使其基于固定IP调度到同一节点,进而完成云教学环境的搭建。
所述步骤S10中,所述基于MACVLAN方式创建云教学环境的若干个子网具体为:
从云教学环境的宿主机中选取一个网卡,将选取的所述网卡虚拟成若干张子网卡,基于各所述子网卡分别创建一子网;
各所述子网的名称全局唯一。
所述步骤S20具体为:
基于设定的主机名以及IP地址,为各所述子网分别创建若干个POD。
所述步骤S30具体为:
对各所述子网内的POD进行至少包括文件传输、SSH的功能性验证。
所述步骤S40具体为:
由于云教学环境在实际应用时采用Helm方式部署,因此需要修改原有Chart以支持固定IP的多环境同构,即在各所述子网内的POD的templates中增加bridge.yaml配置文件,修改templates中的deployment.yaml文件,以删除反亲和调度配置,增加亲和调度配置,让同一所述子网内的一组POD调度到同一节点;
并在deployment.yaml文件的annotations中为各POD增加一固定IP,进而完成云教学环境的搭建。
本发明一种基于固定IP的多平面云教学环境搭建系统的较佳实施例,包括如下模块:
子网创建模块,用于基于桥接方式或者MACVLAN方式创建云教学环境的若干个子网;采用桥接方式需要进行亲和调度配置,即将各POD聚合在同一节点(主机)上,减少跨节点的网络调用,提升教学案例的执行效率;MACVLAN方式支持将各POD分散在不同节点上,可以解决云平台资源不平衡和服务端口冲突等问题;
桥接方式充当同一节点上多个POD之间的网络交换机,其创建了一个不链接任何物理主机接口的桥接接口,因此不会与任何外部网络建立连接,包括其他节点上的其他POD,即子网不能跨节点;MACVLAN方式与传统的网络连接一致,能跨节点,其连接使用每个具有MAC地址的子接口直接与底层网络绑定,即必须链接到具体的网卡。
POD创建模块,用于为各所述子网分别创建若干个POD;
POD功能性验证模块,用于对各所述子网内的POD进行功能性验证;
POD配置模块,用于对各所述子网内的POD进行配置,使其基于固定IP调度到同一节点,进而完成云教学环境的搭建。
所述子网创建模块中,所述基于MACVLAN方式创建云教学环境的若干个子网具体为:
从云教学环境的宿主机中选取一个网卡,将选取的所述网卡虚拟成若干张子网卡,基于各所述子网卡分别创建一子网;
各所述子网的名称全局唯一。
所述POD创建模块具体用于:
基于设定的主机名以及IP地址,为各所述子网分别创建若干个POD。
所述POD功能性验证模块具体用于:
对各所述子网内的POD进行至少包括文件传输、SSH的功能性验证。
所述POD配置模块具体用于:
由于云教学环境在实际应用时采用Helm方式部署,因此需要修改原有Chart以支持固定IP的多环境同构,即在各所述子网内的POD的templates中增加bridge.yaml配置文件,修改templates中的deployment.yaml文件,以删除反亲和调度配置,增加亲和调度配置,让同一所述子网内的一组POD调度到同一节点;
并在deployment.yaml文件的annotations中为各POD增加一固定IP,进而完成云教学环境的搭建。
为了便于理解本发明,以下通过实例和代码进行进一步说明:
1.桥接方式:
(1)为每个实训案例创建一个名称唯一的子网。
(2)创建三个POD,假设主机名分别为master、slave1、slave2,IP地址分别为192.168.1.203、192.168.1.204、192.168.1.205。(以POD为例,Deployment、StatefulSet等yaml可参照修改)。
/>
/>
(3)启动三个POD
重复以上(1)~(3)的过程,创建不同的子网和POD,验证子网内POD间的文件传输、SSH等功能。
2.MACVLAN方式:
(1)创建MACVLAN子网
①将宿主机(物理机或虚拟机)上的某个网卡(如eh0)虚拟成多张子网卡
安装vconfig
在所有节点上执行:
#确认内核是否载入了802.1q模组
lsmod|grep 8021q
#如果没载入使用这个命令载入模组
modprobe-a 8021q
#配置epel源
yum install epel-release-y
#安装vconfig
yum install vconfig-y
#通过ip-a或者ifconfig-a查看是否生效
(vconfig在各主机上只需要安装一次)
创建并启动子网卡
#使用vconfig命令在eth0配置一个VLAN
vconfig add eth0 100(注:每次创建一个子网卡,编号唯一)
#设置VLAN的REORDER_HDR参数,默认就行了
vconfig set_flag eth0.100 1 1
#启用接口
ifconfig eth0.100 up
②创建子网
/>
(2)创建三个POD,假设主机名分别为master、slave1、slave2,IP地址分别为192.168.1.203、192.168.1.204、192.168.1.205。(以POD为例,Deployment、StatefulSet等yaml可参照修改)。
/>
/>
(3)启动三个POD
重复以上(1)~(3)的过程,创建不同的子网和POD,验证子网内POD间的文件传输、SSH等功能。
3.由于云教学环境在实际应用时采用Helm方式部署,因此需要修改原有Chart以支持固定IP的多环境同构:
(1)在各子网内的POD的templates中增加bridge.yaml配置文件,直接拷贝无需修改,POD第二块网卡定义的网段范围为
(2)修改templates中的deployment.yaml文件。
删除反亲和调度配置,增加亲和调度配置,让同一子网内的一组POD调度到同一节点,3个deployment配置一样:
/>
(3)在deployment.yaml文件的annotations中为各POD增加一固定IP,定义3个POD的IP分别是:192.170.1.201,192.170.1.202,192.170.1.203。
k8s.v1.cni.cncf.io/networks:'[{"name":"{{.Values.nameStep1}}","ips":["192.170.1.201"]}]'
k8s.v1.cni.cncf.io/networks:'[{"name":"{{.Values.nameStep1}}","ips":["192.170.1.202"]}]'
k8s.v1.cni.cncf.io/networks:'[{"name":"{{.Values.nameStep1}}","ips":["192.170.1.203"]}]'。
综上所述,本发明的优点在于:
1、通过桥接方式或者MACVLAN方式创建云教学环境的若干个子网,为各子网分别创建若干个POD,对各子网内的POD进行功能性验证后,对各子网内的POD进行配置,使其基于固定IP调度到同一节点,以完成云教学环境的搭建,即设计了一个双层网络结构,在原有的基于kubernetes的单一网络架构上,为各学员构建隔离、完全同构的子网平面,实现构建相互隔离且同构的教学环境,保持教学环境与教学镜像的一致性,进而极大的提升了云教学的统一性和标准化。
2、将多平面网络构建技术运用到云教学环境搭建中,有效提升云教学环境的统一性和标准化;在云教学环境的同一命名空间下,通过构建多个同构的子网,形成既统一又隔离的网络结构,既保证了每个学员的教学环境的独立性和完整性,又保证了课件镜像、教材的统一性;且通过构建同构子网,将云教学环境管理与网络管理融为一体,简化了云环境管理流程,无须构建不同的命名空间。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
- 一种基于云日志分析的云上用户行为审计系统及方法
- 一种基于Contiki系统的智能云锁通信方法、通信系统
- 一种基于云架构的BIM模型存储及浏览环境搭建方法
- 一种基于云桌面的医院手术云会诊云教学系统及方法