Linux中是否有UUID类型的值可以唯一标识VM的实例?
作者:互联网
我有一个在Linux中运行的应用程序.每个人都会尝试从操作系统获取UUID并向中央服务器报告.我想确保所有实例都使用全局唯一的UUID运行.
如果linux是裸机的,它只能读取UUID(例如,从dmidecode命令).但是如果它在VM上,则UUID(来自dmidecode)可能相等,因为可以复制或移动VM.
有任何想法吗?
顺便说一句,对于在物理硬件上运行的Linux(不在VM上),如果用户更改内存,NIC等,UUID会改变吗?
提前致谢.
解决方法:
If the linux is on bare metal, it can just read the UUID (say, from dmidecode command). But if it’s on VM, the UUID (from dmidecode) can potentially be equal since the VM can be copied or moved.
VMware产品实际上并非如此. BIOS UUID(由dmidecode返回的)用作ESX主机和vCenter的库存UUID属性,并且在同一系统上不允许复制UUID.这意味着每个vCenter只能有一台计算机可以拥有该UUID,如果没有vCenter,则每台主机可以拥有该UUID.我过去使用过这个UUID作为标识符并取得了成功.
要多次运行程序,他们必须将其安装在单独主机上的VM中,或者安装在完全不同的vCenter中.这是运行多个程序所需的大量资源,我认为这远远超出了许可证执行的收益递减.
Workstation使用与ESX / vCenter相同的数据布局,因此我预计它具有相同的限制.
标签:bios,linux,virtual-machine,uuid,virtualization 来源: https://codeday.me/bug/20190902/1792147.html