Konfigurieren von NFS-Exporten
Azure CycleCloud bietet integrierte Unterstützung für den Export eines einfachen Netzwerkdateisystems.
Erstellen eines NFS-Exports
Um ein Verzeichnis aus einem Knoten als freigegebenes NFS-Dateisystem zu exportieren, stellen Sie einen Bereitstellungskonfigurationsabschnitt mit type=nfs
und einen Exportpfad bereit:
[[[configuration cyclecloud.exports.nfs_data]]]
type = nfs
export_path = /mnt/exports/nfs_data
Die obige Konfiguration cyclecloud.exports.nfs_data
gibt an, dass Sie das Verzeichnis /mnt/exports/nfs_data
konfigurieren, das als NFS-Dateisystem mit dem Namen " nfs_data
NFS" exportiert werden soll. Die Attribute im Konfigurationsabschnitt beschreiben die exportierten Dateisystemeigenschaften.
Beachten Sie, dass nur ein Dateiserver pro Cluster vorhanden sein kann, andernfalls stören sich die Ermittlungsmechanismen.
Erstellen von Exporten
NFS-Exporte können auch in einer Clustervorlage konfiguriert werden. Ein Knoten kann eine beliebige Anzahl von Exporten aufweisen, aber nur ein Knoten in einem Cluster kann ein Dateiserver sein. Im folgenden Beispiel zeigen wir Konfigurationen an, die einem Knoten hinzugefügt werden sollen, um die standardmäßigen nfs-Exporte zu deaktivieren und eine neue benannte Sicherung hinzuzufügen. Dieser Export wird dann über die Bereitstellungskonfigurationen auf dieser Seite für andere Knoten verfügbar sein.
[[[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
Konfigurieren eines NFS-Servers und einer Dateifreigabe
Die meisten HPC-Workflows stellen ein Netzwerkdateisystem (NFS) auf Knoten bereit, die für freigegebene Anwendungsdaten und Auftragsergebnisse verwendet werden können. Ein Dateiserverknoten kann in einer CycleCloud-Clustervorlage definiert werden. Die Vorlagenkonfigurationen bieten eine sehr feine Kontrolle über die Dateisystemeigenschaften. Das lokale Dateisystem wird definiert volumes
und mounts
der NFS-Dienst wird durch exports
definiert.
Im folgenden Beispiel werden diese Themen in einer einzelnen Knotendateifreigabe zusammengezogen.
[[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
Der configuration
Abschnitt enthält Automatisierungsparameter, die vom Knoten interpretiert werden, wenn er gestartet wird. Diese Anweisungen sind erforderlich, um die NFS-Konfiguration aufzurufen.
In diesem Beispiel werden zwei SSD-Volumes oder Azure Premium-Datenträger definiert, die in einer RAID 0-Konfiguration an den Bereitstellungspunkt /data bereitgestellt werden.
Die beiden volume
Abschnitte definieren die Volumes, während der cyclecloud.mounts
Abschnitt definiert, wie die Volumes bereitgestellt werden.
Der exports
Abschnitt gibt dann an, welches Verzeichnis exportiert werden soll. Da der export_path
Fall unter das RAID-Volume fällt, werden daten, die in diesen Export geschrieben wurden, vom RAID-Volume verarbeitet.
Hinweis
Die Verwendung lokaler Datenträger für eine Dateifreigabe wird nicht unterstützt. Der volume
Abschnitt bezieht sich auf Azure Disk Storage.
Exportkonfigurationsoptionen
Option | Definition |
---|---|
Typ |
ERFORDERLICH Das Typattribut muss für alle NFS-Exporte festgelegt nfs werden, um von anderen freigegebenen Dateisystemtypen zu unterscheiden. |
export_path | Der lokale Pfad zum Exportieren als NFS-Dateisystem. Wenn das Verzeichnis noch nicht vorhanden ist, wird es erstellt. |
owner | Das Benutzerkonto, das das exportierte Verzeichnis besitzen soll. |
group | Die Gruppe des Benutzers, der das exportierte Verzeichnis besitzen soll. |
Modus | Die Standardmäßigen Dateisystemberechtigungen für das exportierte Verzeichnis. |
Netzwerk | Die Netzwerkschnittstelle, auf der das Verzeichnis exportiert wird. Standardwert für alle: * . |
sync | Synchrone/asynchrone Exportoption. Wird standardmäßig auf true festgelegt. |
beschreibbar | Die Ro/rw-Exportoption für das Dateisystem. Wird standardmäßig auf true festgelegt. |
Optionen | Alle nicht standardmäßigen Optionen, die beim Exportieren des Dateisystems verwendet werden sollen. |