Datenträgernamen und -bezeichnungen anpassen
Mit Trident können Sie den von Ihnen erstellten Datenträgern aussagekräftige Namen und Bezeichnungen zuweisen. Dies hilft Ihnen, Volumes zu identifizieren und sie einfach ihren jeweiligen Kubernetes-Ressourcen (PVCs) zuzuordnen. Sie können auch auf Backend-Ebene Vorlagen definieren, um benutzerdefinierte Volumennamen und benutzerdefinierte Bezeichnungen zu erstellen; alle Volumen, die Sie erstellen, importieren oder klonen, werden den Vorlagen entsprechen.
Bevor Sie beginnen
Unterstützung für anpassbare Datenträgernamen und -bezeichnungen:
-
Vorgänge zum Erstellen, Importieren und Klonen von Volumes.
-
Im Falle des ontap-nas-economy-Treibers entspricht nur der Name des Qtree-Volumes der Namensvorlage.
-
Im Falle des Treibers ontap-san-economy entspricht nur der LUN-Name der Namensvorlage.
Einschränkungen
-
Anpassbare Volumennamen sind nur mit ONTAP -Treibern für lokale Installationen kompatibel.
-
Anpassbare Volumennamen gelten nicht für bereits vorhandene Volumen.
Wichtige Verhaltensweisen von anpassbaren Volumennamen
-
Wenn aufgrund ungültiger Syntax in einer Namensvorlage ein Fehler auftritt, schlägt die Backend-Erstellung fehl. Falls die Anwendung der Vorlage jedoch fehlschlägt, wird das Volume gemäß der bestehenden Namenskonvention benannt.
-
Das Speicherpräfix ist nicht anwendbar, wenn ein Volume mithilfe einer Namensvorlage aus der Backend-Konfiguration benannt wird. Der gewünschte Präfixwert kann direkt in die Vorlage eingefügt werden.
Backend-Konfigurationsbeispiele mit Namensvorlage und Bezeichnungen
Benutzerdefinierte Namensvorlagen können auf Stamm- und/oder Poolebene definiert werden.
{
"version": 1,
"storageDriverName": "ontap-nas",
"backendName": "ontap-nfs-backend",
"managementLIF": "<ip address>",
"svm": "svm0",
"username": "<admin>",
"password": "<password>",
"defaults": {
"nameTemplate": "{{.volume.Name}}_{{.labels.cluster}}_{{.volume.Namespace}}_{{.volume.RequestName}}"
},
"labels": {
"cluster": "ClusterA",
"PVC": "{{.volume.Namespace}}_{{.volume.RequestName}}"
}
}
{
"version": 1,
"storageDriverName": "ontap-nas",
"backendName": "ontap-nfs-backend",
"managementLIF": "<ip address>",
"svm": "svm0",
"username": "<admin>",
"password": "<password>",
"useREST": true,
"storage": [
{
"labels": {
"labelname": "label1",
"name": "{{ .volume.Name }}"
},
"defaults": {
"nameTemplate": "pool01_{{ .volume.Name }}_{{ .labels.cluster }}_{{ .volume.Namespace }}_{{ .volume.RequestName }}"
}
},
{
"labels": {
"cluster": "label2",
"name": "{{ .volume.Name }}"
},
"defaults": {
"nameTemplate": "pool02_{{ .volume.Name }}_{{ .labels.cluster }}_{{ .volume.Namespace }}_{{ .volume.RequestName }}"
}
}
]
}
Beispiele für Namensvorlagen
Beispiel 1:
"nameTemplate": "{{ .config.StoragePrefix }}_{{ .volume.Name }}_{{ .config.BackendName }}"
Beispiel 2:
"nameTemplate": "pool_{{ .config.StoragePrefix }}_{{ .volume.Name }}_{{ slice .volume.RequestName 1 5 }}""
Zu berücksichtigende Punkte
-
Bei Volumenimporten werden die Etiketten nur dann aktualisiert, wenn das vorhandene Volumen Etiketten in einem bestimmten Format aufweist. Zum Beispiel:
{"provisioning":{"Cluster":"ClusterA", "PVC": "pvcname"}}. -
Bei verwalteten Volume-Importen folgt der Volume-Name der Namensvorlage, die auf der obersten Ebene in der Backend-Definition definiert ist.
-
Trident unterstützt die Verwendung eines Slice-Operators mit dem Speicherpräfix nicht.
-
Falls die Vorlagen keine eindeutigen Datenträgernamen ergeben, fügt Trident einige zufällige Zeichen hinzu, um eindeutige Datenträgernamen zu erstellen.
-
Wenn der benutzerdefinierte Name für ein NAS Economy-Volume länger als 64 Zeichen ist, benennt Trident die Volumes gemäß der bestehenden Namenskonvention. Bei allen anderen ONTAP -Treibern schlägt der Volume-Erstellungsprozess fehl, wenn der Volume-Name die Namensbeschränkung überschreitet.