Azure VM 固有 ID のアクセスと使用
このポストは、10 月 13 日に投稿した Accessing and Using Azure VM Unique ID の翻訳です。
マイクロソフトは先日、Azure VM 固有 ID のサポートを開始しました。Azure VM 固有 ID は 128 ビットの識別子で、エンコードされすべての Azure IaaS VM の SMBIOS に保存されており、プラットフォームの BIOS コマンドを使用して読み取ることができます。
この識別子は、VM が Azure で実行されている場合とオンプレミスで実行されている場合のどちらでも使用可能で、Azure IaaS 環境で必要となるライセンス認証、レポート生成、一般的な追跡の実施を支援します。多くの独立系ソフトウェア ベンダーおよびパートナーは、アプリケーションを構築したり Azure での認定を受けたりするうえで、そのライフサイクル全体で Azure VM を識別し、VM が Azure、オンプレミスまたはその他のクラウド プロバイダーのうちどの環境で実行されているかを把握することが必要な場合があります。このプラットフォーム識別子は、たとえば、ソフトウェアのライセンスが適切に認証されているかを検出したり、任意の VM データをそのソースに関連付けて各メトリックを正しいプラットフォームに設定したり、それらのメトリックを追跡して他のユーザーとの間で関連付けたりする場合などに役立ちます。
この固有 ID は変更することはできず、クエリの発行先としてのみ使用可能です。2014 年 9 月 18 日以降に作成された新しい VM では、作成時にこの機能が有効になります。それ以前に作成された VM では、次回再起動したときに自動的にこの機能が有効になります。Azure VM 固有 ID は、再起動、シャットダウン (計画されていたものと予期しないもののいずれも)、起動/終了、割り当て解除、サービスの復旧や内部的な復元によって変更されることはありません。ただし、VM がスナップショットで、それをコピーして新しいインスタンスが作成された場合には、Azure VM 固有 ID は変更されます。
この機能がリリースされた 2014 年 9 月 18 日以前に作成された古い VM を実行中のお客様は、再起動すると自動的に固有 ID が取得され、すぐにお使いいただけるようになります。
VM 内部から Azure VM 固有 ID にアクセスする手順は次のとおりです。
手順 1 : VM を作成する (2014 年 9 月 18 日以降に作成した VM では既定でこの機能が有効になります)
手順の詳細については「カスタム仮想マシンの作成方法」を参照してください。
手順 2 : VM に接続する
手順の詳細については「Windows Server が実行されている仮想マシンにログオンする方法」または「Linux を実行する仮想マシンにログオンする方法」を参照してください。
手順 3 : VM 固有 ID にクエリを発行する
Linux VM の場合
コマンド (Ubuntu)
sudo dmidecode | grep UUID
結果の例
UUID: 090556DA-D4FA-764F-A9F1-63614EDA019A
ビット配列順はビッグ エンディアン方式であるため、この例での実際の VM 固有 ID は次のようになります。
DA 56 05 09 – FA D4 – 4f 76 - A9F1-63614EDA019A
Windows VM の場合
コマンド
$systemEnclosure = Get-WmiObject -class Win32_SystemEnclosure -namespace root\CIMV2
$computerSystemProduct = Get-WmiObject -class Win32_ComputerSystemProduct -namespace root\CIMV2
'BIOS GUID: "{0}"' -f $computerSystemProduct.UUID
結果の例 : BIOS GUID
"BC5BCA47-A882-4096-BB2D-D76E6C170534"
これで、Azure VM のプラットフォームやアプリケーションの要件にかかわらず、Azure VM 固有 ID にアクセスできるようになりました。
この機能のリリース以前に作成された古い VM を実行中のお客様は、再起動すると自動的に固有 ID が取得され、すぐにお使いいただけるようになります。