[发明专利]一种确定虚拟机唯一标识的方法、系统、设备以及介质有效
申请号: | 202010109610.0 | 申请日: | 2020-02-22 |
公开(公告)号: | CN111355716B | 公开(公告)日: | 2022-05-13 |
发明(设计)人: | 甄鹏;唐超 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | H04L9/40 | 分类号: | H04L9/40;H04L61/3015;H04L61/45;G06F9/455;H04L101/604;H04L101/622 |
代理公司: | 北京连和连知识产权代理有限公司 11278 | 代理人: | 刘小峰 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 确定 虚拟机 唯一 标识 方法 系统 设备 以及 介质 | ||
本发明公开了一种确定虚拟机唯一标识的方法,包括以下步骤:获取所述虚拟机的操作系统类型;响应于所述操作系统类型为Windows操作系统,根据注册表获取所有网卡的GUID和相对应的网卡类型对应的数值,并根据WMI获取与所述所有网卡的GUID相对应的MAC地址;对所述网卡类型对应的数值进行位与运算确定所有网卡的GUID中物理网卡对应的GUID;根据所述物理网卡的GUID确定所述物理网卡对应的MAC地址;将确定的若干个所述MAC地址进行拼接后计算哈希值以得到所述唯一标识。本发明还公开了一种系统、计算机设备以及可读存储介质。本发明提出的方案能够快速识别云环境中虚拟主机,确定其唯一性,解决了云环境中因虚拟硬件经常发生变化导致的无法识别虚拟主机的问题。
技术领域
本发明涉及虚拟机领域,具体涉及一种确定虚拟机唯一标识的方法、系统、设备以及存储介质。
背景技术
随着计算机技术的飞速发展,越来越多的企业将业务环境从物理计算环境迁移至云环境中。一套物理服务器中,通常存在上百台异构的虚拟主机。某些业务逻辑中需要确定主机的唯一性。但是虚拟主机在每次重启时CPU、内存、硬盘等硬件信息都会发生变化,主机的唯一性不好确定。
虽然现有技术中可以通过MAC地址确定唯一性,例如利用UUID+MAC地址来确定唯一性,或者利用证书+硬件信息来确定唯一性,或者利用MAC地址与管理平台ID匹配来确定唯一性,但是当虚拟主机重启后CPU、内存、硬盘等硬件信息都会发生变化,同时虚拟网卡、网桥、容器等都会带来网络环境的变化。虚拟主机中这些存在经常变化的虚拟网卡、网桥这些都会影响MAC地址的获取,同时云环境中的虚拟主机中经常会存在各种容器,容器的添加删除均会影响MAC地址的计算。
发明内容
有鉴于此,为了克服上述问题的至少一个方面,本发明实施例提出一种确定虚拟机唯一标识的方法,包括以下步骤:
获取所述虚拟机的操作系统类型;
响应于所述操作系统类型为Windows操作系统,根据注册表获取所有网卡的GUID和相对应的网卡类型对应的数值,并根据WMI获取与所述所有网卡的GUID相对应的MAC地址;
对所述网卡类型对应的数值进行位与运算确定所有网卡的GUID中物理网卡对应的GUID;
根据所述物理网卡的GUID确定所述物理网卡对应的MAC地址;
将确定的若干个所述MAC地址进行拼接后计算哈希值以得到所述唯一标识。
在一些实施例中,对所述网卡类型对应的数值进行位与运算确定所有网卡的GUID中物理网卡对应的GUID,进一步包括:
将所述网卡类型对应的数值分别与第一预设数值和第二预设数值进行位与运算;
利用位与运算结果均为true的所述网卡类型对应的数值确定物理网卡对应的GUID。
在一些实施例中,还包括:
响应于所述操作类型为Linux操作系统,获取非物理网卡列表以及所有网卡的网络信息;
根据所述非物理网卡列表中的每一个网卡的名称排除所述所有网卡的网络信息中的非物理网卡信息以得到物理网卡的信息;
对若干个所述物理网卡的信息中的MAC地址拼接后计算哈希值以得到所述唯一标识。
在一些实施例中,获取非物理网卡列表以及所有网卡的网络信息,进一步包括:
在所述Linux操作系统下的预设位置获取所述非物理网卡列表,并通过执行预设命令获取所述所有网卡的网络信息。
基于同一发明构思,根据本发明的另一个方面,本发明的实施例还提供了一种确定虚拟机唯一标识的系统,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010109610.0/2.html,转载请声明来源钻瓜专利网。