適用対象: ✔️ Linux VM ✔️ フレキシブルなスケール セット
azure-vm-utils パッケージには、Azure Virtual Machines での Linux エクスペリエンスを最適化するための重要なユーティリティと udev ルールが用意されています。 このパッケージは、Small Computer System Interface (SCSI)、Non-Volatile Memory Express (NVMe)、Microsoft Azure Network Adapter (MANA)、Mellanox デバイス用のデバイス管理ツールを統合し、さまざまな VM 構成でディスクの識別と管理の信頼性と一貫性を高めます。
NVMe udev ルール
Azure 上の新しい仮想マシン (VM) SKU では、ディスク管理に NVMe インターフェイスが使用されます。 NVMe インターフェイスを持つ VM は、SCSI インターフェイスを使用する VM とは異なる方法でディスクを解釈および提示します。 詳細については、 SCSI から NVMe への変換を参照してください。
このパッケージの NVMe udev ルールは、重要なツールと udev ルールを統合して、Azure ディスクの安定した予測可能なシンボリック リンクを作成します。 このパッケージは、ディスクを識別するための簡単で信頼性の高い方法を提供し、自動化、トラブルシューティング、管理をより簡単にします。
Symlinks
WALinuxAgent には現在、SCSI ディスクに複数のシンボリック リンクを提供する udev ルールが含まれています。
/dev/disk/azure/resource/dev/disk/azure/root/dev/disk/azure/scsi0/lun<lun>/dev/disk/azure/scsi1/lun<lun>
WALinuxAgent で見つかった規則は、NVMe デバイスの識別サポートを追加するために、azure-vm-utils で拡張されています。
NVMe ディスクを持つすべてのインスタンスに対して、次のシンボリック リンクが提供されます。
/dev/disk/azure/data/by-lun/<lun>/dev/disk/azure/local/by-serial/<serial>/dev/disk/azure/os
名前空間識別子をサポートするローカル NVMe ディスクを使用する v6 以降の VM サイズの場合は、次のリンクも使用できます。
/dev/disk/azure/local/by-index/<index>/dev/disk/azure/local/by-name/<name>
SCSI の互換性
SCSI コントローラーを使用するディスクの下位互換性を確保するために、azure-vm-utils では次のリンクがサポートされています。
/dev/disk/azure/os/dev/disk/azure/resource
注
一部の VM サイズには、SCSI 一時ディスクに加えて、NVMe 一時ディスクの両方が付属しています。
Linux ディストリビューションのサポート
現在、次のディストリビューションとバージョンには、公式の Azure Marketplace イメージに az-vm-utils が含まれています。
| 流通 | Version |
|---|---|
| Fedora | 42 |
| キンボルク/フラットカー | 4152.2.3 |
| Azure Linux | 2.0 |
| Canonical /Ubuntu | 22.04, 24.04, 25.04 |
Installation
パッケージが既定のプラットフォーム イメージに存在しない場合は、パッケージ マネージャーまたは GitHub リポジトリからパッケージをインストールします。
手動インストール
azure-vm-utils がプレインストールされていないディストリビューションの場合は、手動でビルドしてインストールします。
# Clone the repository
git clone https://github.com/Azure/azure-vm-utils.git
cd azure-vm-utils
# Build the package
cmake .
make
# Install (requires root privileges)
sudo make install
公共サービス
azure-nvme-id
azure-nvme-id ユーティリティは、Azure NVMe デバイスとそのプロパティを識別するのに役立ちます。 このユーティリティは、トラブルシューティングとスクリプト作成に役立ちます。
ユーティリティを実行するには:
sudo azure-nvme-id
udev モードで実行するには (通常、udev ルールで使用されます)。
DEVNAME=/dev/nvme0n1 azure-nvme-id --udev
シンボリックリンクの使用
azure-vm-utils がインストールされたら、再起動の間に変更される可能性のあるデバイス名に依存するのではなく、ディスク操作に予測可能なシンボリック リンクを使用できます。
例示
すべての Azure ディスクのシンボリックリンクを一覧表示します。
find /dev/disk/azure/ -type l
OS ディスクにアクセスします。
ls -la /dev/disk/azure/os
LUN でデータ ディスクにアクセスする:
ls -la /dev/disk/azure/data/by-lun/
シリアル番号でローカル NVMe ディスクにアクセスします。
ls -la /dev/disk/azure/local/by-serial/
検証
azure-vm-utils が VM で正しく動作していることを確認するには、次の手順を実行します。
パッケージがインストールされているかどうかを確認します。
# For RPM-based systems rpm -qa azure-vm-utils # For DEB-based systems dpkg -l azure-vm-utilsudev ルールが設定されていることを確認します。
ls -al /usr/lib/udev/rules.d/10-azure-unmanaged-sriov.rules ls -al /usr/lib/udev/rules.d/80-azure-disk.rulesAzure ディスクのシンボリックリンクを確認する。
find /dev/disk/azure -type l