NFS エクスポートの構成
Azure CycleCloud には、単純なネットワーク ファイル システムをエクスポートするための組み込みのサポートが用意されています。
NFS エクスポートを作成する
ノードから共有 NFS ファイルシステムとしてディレクトリをエクスポートするには、マウント構成セクションと type=nfs
エクスポート パスを指定します。
[[[configuration cyclecloud.exports.nfs_data]]]
type = nfs
export_path = /mnt/exports/nfs_data
上記の構成cyclecloud.exports.nfs_data
では、名前付きの nfs_data
NFS ファイルシステムとしてエクスポートするディレクトリ/mnt/exports/nfs_data
を構成することを指定します。 構成セクション内の属性では、エクスポートされたファイルシステムのプロパティについて説明します。
クラスターごとに 1 つのファイル サーバーのみを使用できることに注意してください。それ以外の場合、検出メカニズムは干渉します。
エクスポートの作成
NFS エクスポートは、クラスター テンプレートで構成することもできます。 ノードは任意の数のエクスポートを持つことができますが、1 つのクラスター内の 1 つのノードのみがファイル サーバーである可能性があります。 次の例では、既定の nfs エクスポートを無効にし、 バックアップという名前の新しいエクスポートを追加するノードに追加する構成を示します。 このエクスポートは、このページのマウント構成を介して他のノードで使用できるようになります。
[[[configuration]]]
run_list = recipe[cshared::directories],recipe[cshared::server]
cyclecloud.discoverable = true
cshared.server.shared_dir = /shared
cyclecloud.mounts.sched.disabled = true
cyclecloud.mounts.shared.disabled = true
cshared.server.legacy_links_disabled = true
[[[configuration cyclecloud.exports.backup]]]
type = nfs
export_path = /mnt/raid/backup
options = no_root_squash
samba.enabled = false
NFS サーバーとファイル共有の構成
ほとんどの HPC ワークフローでは、共有アプリケーション データとジョブ結果に使用できるノードにネットワーク ファイル システム (NFS) がマウントされます。 ファイル サーバー ノードは、CycleCloud クラスター テンプレートで定義できます。 テンプレートの構成では、ファイル システムのプロパティを非常に細かく制御できます。 ローカル ファイルシステムはによって定義 volumes
され、 mounts
NFS サービスは exports
.
次の例では、これらのトピックを 1 つのノード ファイル共有にまとめることができます。
[[node fileserver]]
Credentials = my-creds
Region = northeurope
MachineType = Standard_D16s_v3
KeypairLocation = ~/.ssh/cyclecloud.pem
SubnetId = /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1
[[[configuration]]]
run_list = recipe[cshared::server]
cyclecloud.discoverable = true
cyclecloud.mounts.sched.disabled = true
cyclecloud.mounts.shared.disabled = true
cshared.server.legacy_links_disabled = true
[[[volume v00]]]
SSD = true
Size = $VolumeSize
Mount = all
[[[volume v01]]]
SSD = true
Size = $VolumeSize
Mount = all
[[[configuration cyclecloud.mounts.all]]]
fs_type = ext4
raid_level = 0
options = noatime,nodiratime,nobarrier,nofail
mointpoint = /data
[[[configuration cyclecloud.exports.nfs_data]]]
type = nfs
export_path = /data/export
[parameters NFS]
[[parameter VolumeSize]]
DefaultValue = 1024
この configuration
セクションには、開始時にノードによって解釈されるオートメーション パラメーターが含まれています。 NFS 構成を呼び出すには、次の手順が必要です。
この例では、RAID 0 構成でマウント ポイント /data にマウントされる 2 つの SSD ボリュームまたは Azure Premium Disks を定義します。
2 つの volume
セクションではボリュームを定義し、 cyclecloud.mounts
セクションではボリュームのマウント方法を定義します。
次に exports
、セクションでエクスポートするディレクトリを指定します。 RAID ボリュームに export_path
該当するため、このエクスポートに書き込まれるデータは RAID ボリュームによって処理されます。
注意
ファイル共有にローカル ディスクを使用することはサポートされていません。 このセクションでは volume
、Azure Disk Storage を参照します。
エクスポート構成オプション
オプション | 定義 |
---|---|
type | 必須 他の共有ファイルシステムの種類と区別するために、すべての NFS エクスポートに対して type 属性を設定 nfs する必要があります。 |
export_path | NFS ファイルシステムとしてエクスポートするローカル パス。 ディレクトリがまだ存在しない場合は、作成されます。 |
owner | エクスポートされたディレクトリを所有する必要があるユーザー アカウント。 |
group | エクスポートされたディレクトリを所有する必要があるユーザーのグループ。 |
mode | エクスポートされたディレクトリに対する既定のファイル システムのアクセス許可。 |
ネットワーク | ディレクトリがエクスポートされるネットワーク インターフェイス。 既定値はすべて: * . |
sync | 同期/非同期エクスポート オプション。 既定値は true です。 |
writable | ファイルシステムの ro/rw エクスポート オプション。 既定値は true です。 |
options | ファイル システムをエクスポートするときに使用する既定以外のオプション。 |