Ubuntu

我們如何知道 VM 是否是使用 bash 的 HyperV 實例?

  • May 12, 2020

我知道我們可以使用以下命令檢查供應商詳細資訊

cat /sys/devices/virtual/dmi/id/sys_vendor

但在 Azure VM 和 HyperV VM 的情況下,它是相同的 - 微軟公司。

我需要一種正確/獨特的方法來檢查 VM 是否在 HyperV 上。

要告訴 Linux 來賓中的管理程序類型,請使用virt-what腳本。如果使用 Ansible,ansible_facts['virtualization_type']情況類似,並且也適用於非 Linux 主機。

管理程序類型不會告訴您託管服務提供商。要在來賓中執行此操作,請訪問任何可用的實例元數據服務。每個人都以不同的方式實現這一點,用它來區分它們。例如,Azure 的響應將有一個compute帶有azEnvironment鍵的 dict,指示哪個 Azure 雲。

引用自:https://serverfault.com/questions/1016762