Erkennen, ob ein Linux-Ausführungshost Cloud-basiert ist oder nicht

Erkennen, ob ein Linux-Ausführungshost Cloud-basiert ist oder nicht

Zurzeit führe ich die Überprüfung durch, indem ich „dmidecode -s bios-version“ ausführe und die wichtigsten Cloud-Anbieter durchsuche. Beispiel: # From an amazon ec2 VM $ sudo dmidecode -s bios-version 4.2.amazon

Gibt es einen allgemeinen und zuverlässigeren Ansatz, um dies herauszufinden?

Antwort1

Es gibt keinen Standardmechanismus, mit dem Cloud-Anbieter Identifikationen in laufende virtuelle Maschinen einspeisen. Wenn Ihr Ziel darin besteht, festzustellen, ob Sie in einer virtuellen Umgebung arbeiten oder nicht, können Sie denvirt-wasBefehl, aber es gibt keine gute Möglichkeit, einen Cloud-Anbieter von einem anderen zu unterscheiden.

Antwort2

Hier ist ein Codeabschnitt, mit dem Sie beliebte Bare-Metal-Anbieter wie AWS, Azure, Google Cloud und Oracle erkennen können. Wenn die Cloud nicht erkannt werden kann, wird „None“ zurückgegeben. https://github.com/nithinj/cloud_what

Antwort3

Auch wenn ein Nicht-Root
lsmodauf Azure viele Hyperv/Hv_-Referenzen anzeigt, gehe ich davon aus, dass AWS etwas anzeigt, das als KVM oder Xen interpretiert werden kann.

(poste es als Antwort, weil ich nicht genug Ruf habe)

verwandte Informationen