处理虚拟机网卡配置信息的方法、装置及存储介质转让专利
申请号 : CN202011228607.7
文献号 : CN112350866B
文献日 : 2021-12-21
发明人 : 唐登科
申请人 : 北京首都在线科技股份有限公司
摘要 :
权利要求 :
1.一种处理虚拟机网卡配置信息的方法,其特征在于,包括:获取所述虚拟机的待修改网卡的期望配置信息,所述期望配置信息至少包括所述待修改网卡的期望名称配置信息和期望顺序配置信息;
基于设备管理器的网卡规则配置文件确定所述虚拟机的所有网卡的当前配置信息;
在所述所有网卡中非待修改网卡的当前配置信息不受影响的条件下,基于所述期望配置信息对所述待修改网卡的当前配置信息进行调整,得到调整后的所述待修改网卡的配置信息;其中,所述调整后的待修改网卡的配置信息中包括:所述待修改网卡的名称和顺序;
其中,所述基于所述期望配置信息对所述待修改网卡的当前配置信息进行调整包括:在预设序号区间段遍历所述待修改网卡的顺序,根据所述期望配置信息中的命名前缀信息和所述待修改网卡的顺序生成所述待修改网卡的网卡名称。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:将所述调整后的所述待修改网卡的配置信息更新到所述网卡规则配置文件中。
3.根据权利要求1所述的方法,其特征在于,所述待修改网卡至少包括下述一种网卡:新增加的网卡;
准备删除的网卡;
待变更名称的网卡。
4.根据权利要求1所述的方法,其特征在于,基于所述设备管理器的网卡规则配置文件确定所述虚拟机的所有网卡的当前配置信息之前,所述方法还包括:根据所述期望配置信息判断是否需要清理网络配置;
当判定需要清理网络配置时,根据操作系统类型执行相应的清理处理。
5.根据权利要求4所述的方法,其特征在于,所述根据所述期望配置信息判断是否需要清理网络配置,包括:
根据所述期望配置信息中是否携带有用于指示清理网络配置的标识,判断是否需要清理网络配置。
6.根据权利要求1所述的方法,其特征在于,基于所述设备管理器的网卡规则配置文件确定所述虚拟机的所有网卡的当前配置信息之前,所述方法还包括:在该期望配置信息中不包括命名前缀设置信息、并且该期望配置信息中包括期望公网网卡数量设置信息的情况下,若当前网卡规则配置文件中不存在公网网卡占位规则记录,则根据该期望配置信息中命名前缀设置信息和网卡序号信息生成公网网卡占位规则,将该公网网卡占位规则添加到该当前网卡规则配置文件。
7.根据权利要求1所述的方法,其特征在于,所述当前配置信息包括介质访问控制MAC地址和名称的临时对应关系信息;
所述基于所述设备管理器的网卡规则配置文件确定所述虚拟机的所有网卡的当前配置信息,包括:
基于所述设备管理器的网卡规则配置文件确定所述虚拟机当前已添加的所有网卡的MAC地址和名称的临时对应关系信息;
生成表征所述临时对应关系信息的键值对数据。
8.根据权利要求1所述的方法,其特征在于,在所述所有网卡中非待修改网卡的当前配置信息不受影响条件下调整所述待修改网卡的当前配置信息之前,所述方法还包括以下至少之一:
确定并删除所述网卡规则配置文件中无效网卡的脏数据,保留MAC地址对应的网卡名称是期望完整名称的网卡的记录、未指定完整名称的网卡的记录、公网网卡占位规则的记录;
确定并删除期望完整名称与当前名称不匹配的网卡的记录;
删除用于指示网卡命名需受内核限制的指令。
9.根据权利要求1所述的方法,其特征在于,当所述待修改的网卡包括公网网卡时,所述方法还包括:
若待修改公网网卡的数量超出所述期望公网网卡数量,输出提示信息,所述提示信息用于提示公网网卡的排列顺序不全都位于私网网卡前面。
10.根据权利要求1所述的方法,其特征在于,所述当前配置信息包括MAC地址和名称的临时对应关系信息;
在所述所有网卡中非待修改网卡的当前配置信息不受影响的条件下,基于所述期望配置信息对所述待修改网卡的当前配置信息进行调整,得到调整后的所述待修改网卡的配置信息,包括以下步骤:
步骤P1:从待修改网卡中确定一个当前网卡,判断当前网卡是否存在完整网卡名称,如果存在完整网卡名称,跳转步骤P5;如果不存在完整网卡名称,跳转步骤P2;
步骤P2:判断当前网卡是否是公网网卡,如果是公网网卡,跳转步骤P3;如果不是公网网卡,则先基于期望公网网卡数值确定当前网卡的允许排列起始序号值,然后进入步骤P3;
步骤P3:在预设序号区间段遍历当前网卡的序号,其中,所述预设序号区间段的左端点值为所述允许排列起始序号值,所述预设序号区间段的右端点值为预设数值;
步骤P4:根据命名前缀信息和当前序号信息生成当前网卡的网卡名称;
步骤P5:判断所述网卡名称是否包含于当前网卡规则配置文件或存在名称被占用情况,如果不是,则跳转步骤P8;如果是,则执行步骤P6;
步骤P6:从临时对应关系信息中获取当前网卡名称对应的MAC地址,判断所述MAC地址是否在待修改网卡列表中,如果不是,跳转步骤P10;如果是,进入步骤P7;
步骤P7:将已占用名称的网卡修改为临时名称,并更新临时对应关系信息数据;
步骤P8:断开当前待修改网卡的连接,建立当前网卡的MAC地址与所述完整网卡名称的对应关系,重新连接所述当前网卡;并在所述当前网卡规则配置文件增加当前网卡的对应关系记录,标记当前网卡修改结束;
步骤P9:更新序号变量值为当前序号值加1;
步骤P10:判断当前网卡的名称和顺序是否完成修改,如果完成修改,则确定得到调整后的所述当前网卡的配置信息,跳转步骤P1;如果未完成修改,则跳转步骤P3。
11.一种处理虚拟机网卡配置信息的装置,其特征在于,包括:获取模块,用于获取所述虚拟机的待修改网卡的期望配置信息,所述期望配置信息至少包括所述待修改网卡的期望名称配置信息和期望顺序配置信息;
确定模块,用于基于设备管理器的网卡规则配置文件确定所述虚拟机的所有网卡的当前配置信息;
调整模块,用于在所述所有网卡中非待修改网卡的当前配置信息不受影响的条件下,基于所述期望配置信息对所述待修改网卡的当前配置信息进行调整,得到调整后的所述待修改网卡的配置信息;其中,所述调整后的待修改网卡的配置信息中包括:所述待修改网卡的名称和顺序;
其中,所述基于所述期望配置信息对所述待修改网卡的当前配置信息进行调整包括:在预设序号区间段遍历所述待修改网卡的顺序,根据所述期望配置信息中的命名前缀信息和所述待修改网卡的顺序生成所述待修改网卡的网卡名称。
12.根据权利要求11所述的装置,其特征在于,所述装置还包括:处理模块,用于将所述调整后的所述待修改网卡的配置信息更新到所述网卡规则配置文件中。
13.根据权利要求11所述的装置,其特征在于,所述待修改网卡至少包括下述一种网卡:
新增加的网卡;
准备删除的网卡;
待变更名称的网卡。
14.根据权利要求11所述的装置,其特征在于,所述装置还包括:清理判断模块,用于根据所述期望配置信息判断是否需要清理网络配置;
清理执行模块,用于当判定需要清理网络配置时,根据操作系统类型执行相应的清理处理。
15.根据权利要求14所述的装置,其特征在于,所述清理判断模块,用于:根据所述期望配置信息中是否携带有用于指示清理网络配置的标识,判断是否需要清理网络配置。
16.根据权利要求14所述的装置,其特征在于,所述装置还包括:解析模块,用于在该期望配置信息中不包括命名前缀设置信息、并且该期望配置信息中包括期望公网网卡数量设置信息的情况下,若当前网卡规则配置文件中不存在公网网卡占位规则记录,则根据该期望配置信息中命名前缀设置信息和网卡序号信息生成公网网卡占位规则,将该公网网卡占位规则添加到该当前网卡规则配置文件。
17.根据权利要求11所述的装置,其特征在于,所述当前配置信息包括介质访问控制MAC地址和名称的临时对应关系信息;
所述确定模块,用于:
基于所述设备管理器的网卡规则配置文件确定所述虚拟机当前已添加的所有网卡的MAC地址和名称的临时对应关系信息;
生成表征所述临时对应关系信息的键值对数据。
18.根据权利要求17所述的装置,其特征在于,所述装置还包括:删除模块,用于执行以下至少之一:确定并删除所述网卡规则配置文件中无效网卡的脏数据,保留MAC地址对应的网卡名称是期望完整名称的网卡的记录、未指定完整名称的网卡的记录、公网网卡占位规则的记录;
确定并删除期望完整名称与当前名称不匹配的网卡的记录;
删除用于指示网卡命名需受内核限制的指令。
19.根据权利要求11所述的装置,其特征在于,当所述待修改的网卡包括公网网卡时,所述装置还包括:
提示模块,用于:
若待修改公网网卡的数量超出所述期望公网网卡数量,输出提示信息,所述提示信息用于提示公网网卡的排列顺序不全都位于私网网卡前面。
20.根据权利要求11所述的装置,其特征在于,所述当前配置信息包括MAC地址和名称的临时对应关系信息;
所述调整模块执行的步骤包括以下步骤:步骤P1:从待修改网卡中确定一个当前网卡,判断当前网卡是否存在完整网卡名称,如果存在完整网卡名称,跳转步骤P5;如果不存在完整网卡名称,跳转步骤P2;
步骤P2:判断当前网卡是否是公网网卡,如果是公网网卡,跳转步骤P3;如果不是公网网卡,则先基于期望公网网卡数值确定当前网卡的允许排列起始序号值,然后进入步骤P3;
步骤P3:在预设序号区间段遍历当前网卡的序号,其中,所述预设序号区间段的左端点值为所述允许排列起始序号值,所述预设序号区间段的右端点值为预设数值;
步骤P4:根据命名前缀信息和当前序号信息生成当前网卡的网卡名称;
步骤P5:判断所述网卡名称是否包含于当前网卡规则配置文件或存在名称被占用情况,如果不是,则跳转步骤P8;如果是,则执行步骤P6;
步骤P6:从临时对应关系信息中获取当前网卡名称对应的MAC地址,判断所述MAC地址是否在待修改网卡列表中,如果不是,跳转步骤P10;如果是,进入步骤P7;
步骤P7:将已占用名称的网卡修改为临时名称,并更新临时对应关系信息数据;
步骤P8:断开当前待修改网卡的连接,建立当前网卡的MAC地址与所述完整网卡名称的对应关系,重新连接所述当前网卡;并在所述当前网卡规则配置文件增加当前网卡的对应关系记录,标记当前网卡修改结束;
步骤P9:更新序号变量值为当前序号值加1;
步骤P10:判断当前网卡的名称和顺序是否完成修改,如果完成修改,则确定得到调整后的所述当前网卡的配置信息,跳转步骤P1;如果未完成修改,则跳转步骤P3。
21.一种基于设备管理器处理虚拟机网卡配置信息的装置,其特征在于,包括:处理器和存储器,所述存储器中存储指令,所述指令由处理器加载并执行,以实现如权利要求1至
10任一项所述的方法。
22.一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至10中任一项所述的方法。
说明书 :
处理虚拟机网卡配置信息的方法、装置及存储介质
技术领域
背景技术
直接设置设备管理器规则通过网卡介质访问控制(MAC,Media Access Control)地址永久
绑定网卡名称等。但异步加载模块的方式也有一个天生的缺点:无法保证每次加载模块的
顺序,继而可能会因为不同的加载顺序导致配置与设备映射关系改变,造成设备功能无法
使用、系统异常等故障。在整个云计算平台中,虚拟机对应多个网卡,且网卡驱动种类一般
比较单一,无法支持每个网卡驱动都不相同,因此采用现有的这些方法无法保证加载顺序,
进而会造成设备功能无法使用、系统异常等故障。
发明内容
配置信息;其中,所述调整后的待修改网卡的配置信息中包括:所述待修改网卡的名称和顺
序。
述待修改网卡的配置信息;其中,所述调整后的待修改网卡的配置信息中包括:所述待修改
网卡的名称和顺序。
于存储指令,该处理器用于执行该存储器存储的指令,并且当该处理器执行该存储器存储
的指令时,使得该处理器执行上述各方面任一种实施方式中的方法。
被执行。
网卡的当前配置信息;在所有网卡中非待修改网卡的当前配置信息不受影响条件下调整待
修改网卡的当前配置信息,使调整后的待修改网卡的最终配置信息满足期望配置信息,从
而能够根据用户需求灵活调整虚拟机内部网卡的展示名称和顺序,进而避免造成设备功能
无法使用、系统异常等故障。
方面、实施方式和特征将会是容易明白的。
附图说明
公开的一些实施方式,而不应将其视为是对本申请范围的限制。
具体实施方式
因此,附图和描述被认为本质上是示例性的而非限制性的。
用户设备包括但不限于固定终端和移动终端。本实施例可以适用于云环境的各种类型的虚
拟机,例如kvm虚拟机和vmware虚拟机等。参见图1,该方法包括以下步骤。
的配置信息;其中,所述调整后的待修改网卡的配置信息中包括:所述待修改网卡的名称和
顺序。
取虚拟机的待修改网卡的期望配置信息。
name;在指定网卡命名前缀条件下可以不指定,不指定则根据前缀和序号组合,如eth前缀
时第一块网卡为eth0);公网网卡在前,私网在后;
命名。
件下调整待修改网卡的当前配置信息,使调整后的待修改网卡的最终配置信息满足期望配
置信息,从而能够根据用户需求灵活调整各网卡的名称和顺序,即可以灵活调整虚拟机内
部网卡的配置信息,这样可以适配复杂多变的网卡命名顺序需求。
件展示虚拟机的各网卡的配置信息,由于展示的配置信息为期望配置信息,便于管控各网
卡,提升用户使用体验。
操作3。
占位规则记录,则根据该期望配置信息中命名前缀设置信息和网卡序号信息生成公网网卡
占位规则,将该公网网卡占位规则添加到该当前网卡规则配置文件。
添加到该当前网卡规则配置文件。
则配置文件存在公网网卡占位规则记录,执行步骤S102。
S102和步骤S103提供数据支撑。
卡占位规则的记录;
以仅使用其中任意两个,当然也可以全部使用。
率。
骤P3;
系记录,标记当前网卡修改结束;
network‑scripts/ifcfg‑*|grep‑v"ifcfg‑lo");如ubuntu,执行rm‑rf${NIC_NAME_FILE}/
etc/netplan/*/etc/network/interfaces.d/*;
name的关系,grep"00"/sys/class/net/*/address|grep‑v"00:00:00:00:00:00"|awk‑F"/
sys/class/net/|/address:"'{print$2"‑‑"$3}',并生成mac‑>name临时关系map数据;
令;比如,清理${NIC_NAME_FILE}udev规则脏数据,保留现有网卡mac是期望完整名称、未指
定完整名称的mac、公网网卡占位的规则记录,接着清理掉同时包含待修改网卡清单mac和
KERNEL==\"eth\*\"的记录,保证去掉内核命名模式带来的ethX冲突;
index}表示序号值。
eth9992&&ip link set eth9992 up,并更新临时map数据;
所述待修改网卡的配置信息;其中,所述调整后的待修改网卡的配置信息中包括:所述待修
改网卡的名称和顺序。
网网卡占位规则记录,则根据该期望配置信息中命名前缀设置信息和网卡序号信息生成公
网网卡占位规则,将该公网网卡占位规则添加到该当前网卡规则配置文件。
记录;
骤P3;
对应关系记录,标记当前网卡修改结束;
可在处理器820上运行的计算机程序。处理器820执行该计算机程序时实现上述实施例中的
基于设备管理器处理虚拟机网卡配置信息方法。存储器810和处理器820的数量可以为一个
或多个。
构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component
Interconnect,PCI)总线或扩展工业标准体系结构(Extended Industry Standard
Architecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表
示,图12中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field
Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、
分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。值得说明的是,
处理器可以是支持进阶精简指令集机器(Advanced RISC Machines,ARM)架构的处理器。
易失性和非易失性存储器两者。其中,非易失性存储器可以包括只读存储器(Read‑only
Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器
(Erasable PROM,EPROM)、电可擦除可编程只读存储器Electrically EPROM,EEPROM)或闪
存。易失性存储器可以包括随机存取存储器(Random Access Memory,RAM),其用作外部高
速缓存。通过示例性但不是限制性说明,许多形式的RAM可用。例如,静态随机存取存储器
(static RAM,SRAM)、动态随机存取存储器(Dynamic Random Access Memory,DRAM)、同步
动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器
(Double Data SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,
ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存
取存储器(Direct Rambus RAM,DR RAM)。
包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产
生按照本申请的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其
他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存
储介质向另一个计算机可读存储介质传输。
点包括于本申请的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点
可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本
领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特
征进行结合和组合。
含地包括至少一个该特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有
明确具体的限定。
分。并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺
序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能。
指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执
行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设
备而使用。
件或固件来实现。上述实施例方法的全部或部分步骤是可以通过程序来指令相关的硬件完
成,该程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步
骤之一或其组合。
块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。上述集成的模块如
果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机
可读存储介质中。该存储介质可以是只读存储器,磁盘或光盘等。
这些都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范
围为准。