Как мы можем узнать, является ли виртуальная машина экземпляром HyperV с помощью bash?

Я знаю, что мы можем проверить данные поставщика, используя следующую команду

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

Но в случае виртуальной машины Azure и виртуальной машины HyperV это то же самое - Microsoft Corporation.

Мне нужен правильный / уникальный способ чтобы проверить, подключена ли виртуальная машина к HyperV.

1
задан 12 May 2020 в 12:47
1 ответ

Чтобы указать тип гипервизора в гостевой системе Linux, используйте сценарий virt-what. При использовании Ansible факт ansible_facts['virtualization_type'] аналогичен и также работает на хостах, отличных от Linux.

Тип гипервизора не говорит вам о хостинг-провайдере. Чтобы сделать это в гостевой системе, войдите в любой доступный сервис метаданных экземпляра. Каждый реализует это по-своему, используйте это, чтобы отличить их друг от друга. Например, ответ Azure будет иметь словарь compute с ключом azEnvironment, указывающим, какое облако Azure.

4
ответ дан 12 May 2020 в 15:29

Теги

Похожие вопросы