
目前,我正在透過運行 dmidecode -s bios-version 並對主要雲端供應商進行 grep 進行檢查。前任:
# From an amazon ec2 VM $ sudo dmidecode -s bios-version 4.2.amazon
是否有一個通用且更可靠的方法來找到這個?
答案1
雲端供應商沒有將標識注入到正在運行的虛擬機器中的標準機制。如果您的目標是偵測您是否在虛擬環境中運行,您可以使用虛擬什麼命令,但沒有很好的方法來區分一個雲端供應商和另一個雲端供應商。
答案2
以下是一段程式碼,您可以使用它來偵測流行的裸機供應商,例如 AWS、Azure、Google Cloud 和 Oracle。如果無法偵測到雲,這將傳回 None。 https://github.com/nithinj/cloud_what
答案3
即使
lsmod
azure 上的非 root 顯示大量 hyperv/hv_ 引用,我假設 aws 將顯示可以解釋為 kvm 或 xen 的內容
(作為答案發布,因為我沒有足夠的代表)