Azure CycleCloud 提供導出簡單網路文件系統的內建支援。
建立 NFS 匯出
若要將目錄從節點匯出為共用 NFS 檔案系統,請提供具有 type=nfs 的掛接組態區段和匯出路徑:
[[[configuration cyclecloud.exports.nfs_data]]]
type = nfs
export_path = /mnt/exports/nfs_data
上述組態 cyclecloud.exports.nfs_data 會指定要將目錄 /mnt/exports/nfs_data 匯出為名為 nfs_data的 NFS 檔案系統。 組態區段中的屬性描述導出的檔案系統屬性。
每個叢集只能有一部檔案伺服器。 否則,探索機制會干擾。
建立匯出
您也可以在叢集範本中設定 NFS 匯出。 節點可以有任意數目的導出,但叢集中只有一個節點可以是文件伺服器。 下列範例顯示新增至節點的組態,以停用預設的 NFS 匯出,並新增名為 backup的新匯出。 其他節點可以透過本文中所述的掛接組態來存取此導出。
[[[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。
下列範例會將這些主題放在單一節點檔案共用中。
[[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組態。
此範例會定義兩個 SSD 磁碟區或 Azure 進階磁碟,您可以在 RAID 0 組態中掛接至裝入點 /data。
這兩個 volume 區段會定義磁碟區,而 cyclecloud.mounts 區段會定義如何掛接磁碟區。
區 exports 段會指定要匯出的目錄。 export_path因為位於RAID磁碟區底下,因此RAID磁碟區會處理寫入此匯出的數據。
備註
您無法將本機磁碟用於檔案共用。 本節 volume 指的是 Azure 磁碟記憶體。
匯出組態選項
| 選項 | 定義 |
|---|---|
| 型別 | 必填 將所有 NFS 導出的類型屬性 nfs 設定為 ,以區別於其他共用檔案系統類型。 |
| export_path | 將本機路徑設定為匯出NFS檔案系統之用。 如果目錄不存在,程式就會建立它。 |
| 擁有者 | 設定擁有匯出目錄的用戶帳戶。 |
| 組成群組 | 設定擁有匯出目錄的使用者群組。 |
| mode | 在匯出的目錄上設定預設檔案系統許可權。 |
| 網路 | 設定匯出目錄所在的網路介面。 預設值為 all: *。 |
| 同步 | 設定同步/異步匯出選項。 預設為 true。 |
| 可寫入 | 設定文件系統的 ro/rw 匯出選項。 預設為 true。 |
| 選項 | 匯出檔案系統時使用的任何非預設選項。 |