仮想マシンの内部から仮想マシンを一意に識別できるようにしたい。問題は、私のセットアップではそのためにMACアドレスを使用できないことです。別のハードウェアパラメーター(CPU名、BIOSフラグ、マザーボードIDなど)を構成して、VM内からアクセスできるVM)の一意の値を設定することはできますか? Xen、KVM、VMWare ESX、またはせいぜいそれらすべてで機能するソリューションに最も興味があります。
VMが作成されたときに、ホストからUUIDを生成し、カーネルコマンドラインを介して渡すことができます。マシンをあるハードウェアノードから次のハードウェアノードに転送すると、UUIDはただし、新しいマシンを作成すると、新しいUUIDが生成されます。
他の回答で述べたように、VM(その構成を含む)を複製した場合、これは機能しませんが、その場合、コマンドラインからuuidgenを実行することは難しくありません。ドメインの作成に使用される構成ファイルのUUIDを置き換えます。
実際問題として、とにかくその方法でVMを複製しないことがおそらく最善です。新しいVMを作成し、環境に最適な方法でVMを構成するスクリプトを実行する必要があります。
VM UUID/GUIDを生成して保存する:
http://www.ietf.org/rfc/rfc4122.txt
This specification defines a Uniform Resource Name namespace for
UUIDs (Universally Unique IDentifier), also known as GUIDs (Globally
Unique IDentifier). A UUID is 128 bits long, and can guarantee
uniqueness across space and time. UUIDs were originally used in the
Apollo Network Computing System and later in the Open Software
Foundation's (OSF) Distributed Computing Environment (DCE), and then
in Microsoft Windows platforms.
Microsoftは、uuidgen
というユーティリティを提供しています
Pythonには2.5から組み込まれています。
http://docs.python.org/library/uuid.html
これで、WindowsとLinuxについて説明します。