Azure 共有ディスクの設定

スポンサーリンク

Microsoft Azureで共有ディスクを設定する方法をまとめます。なお、Azureの共有ディスクには排他制御の仕組みは備わっていませんので、別途、MSFCやPacemakerのようなミドルウェアの設計が必要になります。

参考資料

参考になる公式ドキュメントを以下に示します。

事前準備

以下、仮想ネットワーク等のリソースを作成します。

az group create --name MyResourceGroup --location japaneast

az network vnet create \
    -g MyResourceGroup \
    -n MyVnet \
    --address-prefix 172.16.0.0/16 \
    --subnet-name MySubnet \
    --subnet-prefix 172.16.0.0/24

共有ディスクの作成

共有ディスクの制約事項

共有ディスクは「Premium SSD」「Standard SSD」などディスクの種類によって制約事項が異なります。また、サポートされるオペレーティングシステムも限定的です。制約事項は公式ドキュメント「Azure マネージド ディスクの共有」にまとまっていますので、使用の前に制約事項を一読ください。

共有ディスクの作成

共有ディスクは考慮すべき事が多く設計は非常に難しいですが、オペレーションは非常に簡単です。az disk createコマンドの引数max-sharesに2以上を指定します。

az disk create \
  --resource-group MyResourceGroup \
  --name MySharedDisk \
  --size-gb 32 \
  --sku StandardSSD_LRS \
  --location japaneast \
  --max-shares 2

共有ディスクの接続(アタッチ)

共有ディスクはOSディスクとしては使用できず、データディスクとしてのみ使用できます。

仮想マシン作成と同時に接続するならば、以下のようにaz vm createの引数attach-data-disksに共有ディスクの名前またはIDを指定します。

今のところ、UbuntuやCentOSはサポート対象外である事に注意ください。

az vm create \
  --resource-group MyResourceGroup \
  --name linux010 \
  --image RedHat:RHEL:8_5:8.5.2021121501 \
  --size Standard_B2s \
  --attach-data-disks MySharedDisk \
  --admin-username azureuser \
  --authentication-type ssh \
  --ssh-key-values ~/.ssh/authorized_keys

作成済の仮想マシンに対して共有ディスクを追加するならば、az vm disk attachコマンドを使用します。起動中の仮想マシンに対しても共有ディスクの接続(アタッチ)は可能です。

az vm create \
  --resource-group MyResourceGroup \
  --name linux020 \
  --image RedHat:RHEL:8_5:8.5.2021121501 \
  --size Standard_B2s \
  --admin-username azureuser \
  --authentication-type ssh \
  --ssh-key-values ~/.ssh/authorized_keys

az vm disk attach \
  --resource-group MyResourceGroup \
  --vm-name linux020 \
  --name MySharedDisk

タイトルとURLをコピーしました