私は次のコマンドを使用してベンダーの詳細を確認できることを知っています
cat /sys/devices/virtual/dmi/id/sys_vendor
ただし、Azure VMおよびHyperV VMの場合は同じです-Microsoft Corporation。
VMがHyperV上にあるかどうかを確認するための適切で独自の方法が必要です。
Linuxゲストでハイパーバイザーのタイプを確認するには、virt-what
脚本。 Ansibleを使用している場合、ansible_facts['virtualization_type']
factも同様であり、Linux以外のホストでも機能します。
ハイパーバイザーの種類では、ホスティングプロバイダーはわかりません。ゲストでこれを行うには、利用可能な インスタンスメタデータサービス にアクセスします。それぞれがこれを異なる方法で実装し、それを使用して区別します。たとえば、Azureの応答には、Azureクラウドを示すcompute
キーを持つazEnvironment
辞書があります。