你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
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 导出并添加新的名为 备份的导出。 其他节点可以通过本文中所述的装载配置访问此导出。
[[[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 定义本地文件系统,使用 exports 定义 NFS 服务。
以下示例将这些主题组合在单个节点文件共享中。
[[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 | 对导出的目录设置默认文件系统权限。 |
| 网络 | 设置导出目录的网络接口。 默认为全部:*。 |
| 同步 | 设置同步/异步导出选项。 默认为 true。 |
| 可写 | 设置文件系统的 ro/rw 导出选项。 默认为 true。 |
| 选项 | 导出文件系统时要使用的任何非默认选项。 |