Configurer les exportations NFS

Azure CycleCloud prend en charge l’exportation d’un système de fichiers réseau simple.

Créer une exportation NFS

Pour exporter un répertoire à partir d’un nœud en tant que système de fichiers NFS partagé, fournissez une section de configuration de montage avec type=nfs et un chemin d’exportation :

[[[configuration cyclecloud.exports.nfs_data]]]
type = nfs
export_path = /mnt/exports/nfs_data

La configuration cyclecloud.exports.nfs_data ci-dessus spécifie que vous configurez le répertoire /mnt/exports/nfs_data à exporter en tant que système de fichiers NFS nommé nfs_data. Les attributs de la section de configuration décrivent les propriétés du système de fichiers exportés.

Notez que vous ne pouvez avoir qu’un seul serveur de fichiers par cluster sinon, les mécanismes de découverte interfèrent.

Création d’exportations

Les exportations NFS peuvent également être configurées dans un modèle de cluster. Un nœud peut avoir un nombre arbitraire d’exportations, mais un seul nœud d’un cluster peut être un serveur de fichiers. Dans l’exemple ci-dessous, nous affichons des configurations à ajouter à un nœud pour désactiver les exportations nfs par défaut et ajouter une nouvelle exportation nommée sauvegarde. Cette exportation sera ensuite disponible pour d’autres nœuds via les configurations de montage de cette page.

        [[[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

Configuration d’un serveur NFS et d’un partage de fichiers

La plupart des flux de travail HPC montent un système de fichiers réseau (NFS) sur des nœuds qui peuvent être utilisés pour les données d’application partagées et les résultats du travail. Un nœud de serveur de fichiers peut être défini dans un modèle de cluster CycleCloud. Les configurations de modèle fournissent un contrôle très précis sur les propriétés du système de fichiers. Le système de fichiers local est défini par volumes et mounts le service NFS est défini par exports.

L’exemple suivant extrait ces rubriques dans un seul partage de fichiers de nœud.

    [[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 section contient des paramètres d’automatisation interprétés par le nœud au démarrage. Ces instructions sont nécessaires pour appeler la configuration NFS.

Cet exemple définit deux volumes SSD ou Azure Premium Disks, qui seront montés dans une configuration RAID 0 sur le point de montage /data. Les deux volume sections définissent les volumes pendant que la cyclecloud.mounts section définit la façon dont les volumes sont montés.

La exports section spécifie ensuite le répertoire à exporter. Étant donné que le volume RAID tombe sous le volume RAID, les export_path données écrites dans cette exportation seront gérées par le volume RAID.

Notes

L’utilisation de disques locaux pour un partage de fichiers n’est pas prise en charge. La volume section fait référence au stockage disque Azure.

Options de configuration d’exportation

Option Définition
type OBLIGATOIRE L’attribut de type doit être défini nfs pour toutes les exportations NFS pour différencier d’autres types de système de fichiers partagés.
export_path Chemin d’accès local à exporter en tant que système de fichiers NFS. Si le répertoire n’existe pas déjà, il est créé.
propriétaire Compte d’utilisateur qui doit posséder le répertoire exporté.
group Groupe de l’utilisateur qui doit posséder le répertoire exporté.
mode Autorisations de système de fichiers par défaut sur le répertoire exporté.
réseau Interface réseau sur laquelle le répertoire est exporté. Valeur par défaut : *.
synchronisation Option d’exportation synchrone/asynchrone. La valeur par défaut est true.
accessible en écriture Option d’exportation ro/rw pour le système de fichiers. La valeur par défaut est true.
options Toutes les options non par défaut à utiliser lors de l’exportation du système de fichiers.

En savoir plus