Configuración de exportaciones NFS
Azure CycleCloud proporciona compatibilidad integrada para exportar un sistema de archivos de red simple.
Creación de una exportación de NFS
Para exportar un directorio desde un nodo como un sistema de archivos NFS compartido, proporcione una sección de configuración de montaje con type=nfs
y una ruta de acceso de exportación:
[[[configuration cyclecloud.exports.nfs_data]]]
type = nfs
export_path = /mnt/exports/nfs_data
La configuración cyclecloud.exports.nfs_data
anterior especifica que está configurando el directorio /mnt/exports/nfs_data
que se va a exportar como un sistema de archivos NFS denominado nfs_data
. Los atributos de la sección de configuración describen las propiedades exportadas del sistema de archivos.
Tenga en cuenta que solo puede tener un servidor de archivos por clúster; de lo contrario, los mecanismos de detección interferirán.
Creación de exportaciones
Las exportaciones NFS también se pueden configurar en una plantilla de clúster. Un nodo puede tener un número arbitrario de exportaciones, pero solo un nodo de un clúster puede ser un servidor de archivos. En el ejemplo siguiente se muestran las configuraciones para agregar a un nodo para deshabilitar las exportaciones nfs predeterminadas y agregar una nueva exportación denominada copia de seguridad. Esta exportación estará disponible para otros nodos a través de las configuraciones de montaje de esta página.
[[[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
Configuración de un servidor NFS y un recurso compartido de archivos
La mayoría de los flujos de trabajo de HPC montarán un sistema de archivos de red (NFS) en nodos que se pueden usar para los datos de aplicación compartidos y los resultados del trabajo. Un nodo de servidor de archivos se puede definir en una plantilla de clúster de CycleCloud. Las configuraciones de plantilla proporcionan un control muy fino sobre las propiedades del sistema de archivos. El sistema de archivos local se define mediante volumes
y mounts
el servicio NFS se define mediante exports
.
En el ejemplo siguiente se extraen estos temas en un único recurso compartido de archivos de nodo.
[[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
La configuration
sección contiene parámetros de automatización interpretados por el nodo cuando se inicia. Estas instrucciones son necesarias para invocar la configuración de NFS.
En este ejemplo se definen dos volúmenes SSD o discos Premium de Azure, que se montarán en una configuración RAID 0 en el punto de montaje /data.
Las dos volume
secciones definen los volúmenes mientras la cyclecloud.mounts
sección define cómo se montan los volúmenes.
A continuación, exports
la sección especifica el directorio que se va a exportar. Dado que export_path
se encuentra bajo el volumen RAID, el volumen RAID controlará los datos escritos en esta exportación.
Nota:
No se admite el uso de discos locales para un recurso compartido de archivos. La volume
sección hace referencia a Azure Disk Storage.
Opciones de configuración de exportación
Opción | Definición |
---|---|
type |
OBLIGATORIO El atributo type debe establecerse nfs en para que todas las exportaciones NFS se diferencien de otros tipos de sistema de archivos compartidos. |
export_path | Ruta de acceso local que se va a exportar como un sistema de archivos NFS. Si el directorio aún no existe, se creará. |
owner | La cuenta de usuario que debe poseer el directorio exportado. |
group | Grupo del usuario que debe poseer el directorio exportado. |
mode | Permisos predeterminados del sistema de archivos en el directorio exportado. |
red | Interfaz de red en la que se exporta el directorio. El valor predeterminado es all: * . |
sync | Opción de exportación sincrónica o asincrónica. Tiene como valor predeterminado true . |
writable | La opción de exportación ro/rw para el sistema de archivos. Tiene como valor predeterminado true . |
opciones | Cualquier opción no predeterminada que se va a usar al exportar el sistema de archivos. |