Aktivieren der automatischen Kapazitätsrundung für feste IOPS-Profile
Mit der Funktion zur Kapazitätsrundung des IBM VPC File CSI Driver können Sie festlegen, dass der Treiber die Kapazität eines angeforderten Persistent Volume Claim (PVC) automatisch anpasst, wenn diese unter der minimal unterstützten Kapazität für das ausgewählte feste IOPS-Profil liegt. Dadurch entfällt die Notwendigkeit, die Mindestkapazitätswerte vor der Bereitstellung von Dateifreigaben manuell zu berechnen.
So funktioniert die Kapazitätsrundung
Beim Start des Treibers ruft der IBM VPC File CSI-Treiber einen unterstützten Kapazitäts-zu-IOPS-Katalog aus dem globalen Katalog von IBM ab. Der Katalog wird im Arbeitsspeicher zwischengespeichert und für alle nachfolgenden Bereitstellungsanfragen verwendet. Die folgende Tabelle beschreibt das Verhalten des Treibers während der PVC-Bereitstellung.
| Szenario | Driver Behavior |
|---|---|
| Die angeforderten IOPS werden unterstützt, und die angeforderte Kapazität liegt unter dem Mindestwert | Der Treiber rundet die Kapazität auf den niedrigsten unterstützten Wert auf und stellt das PVC bereit. |
| Die angeforderten IOPS werden unterstützt, und die angeforderte Kapazität entspricht den Mindestanforderungen | Die PVC stellt die angeforderte Kapazität bereit. |
| Die angeforderten IOPS werden nicht unterstützt | Die Bereitstellung schlägt mit einem Validierungsfehler fehl. Hilfe zur Behebung dieses Fehlers finden Sie unter Fehlerbehebung bei Kapazitätsrundungen. |
Wenn der Global Catalog beim Start des Treibers nicht erreichbar ist, wird eine Warnung protokolliert und die Kapazitätsrundung ist nicht verfügbar. Alle anderen Aspekte der Bereitstellung verlaufen wie erwartet.
Voraussetzungen
Bevor Sie die Kapazitätsrundung aktivieren, muss der Treiber in der Lage sein, auf den globalen Katalog von IBM zuzugreifen. Um den Zugriff zu ermöglichen, konfigurieren Sie ein Virtual Private Endpoint Gateway (VPEG) in Ihrer VPC.
-
Erstellen Sie in Ihrer VPC ein Virtual Private Endpoint Gateway für den Global Resources Catalog-Dienst.
Wenn Sie die VPEG erstellen, nehmen Sie folgende Einstellungen vor:
- Wählen Sie unter Cloud-Services den Global Resources Catalog aus.
- Wählen Sie unter Verfügbare Endpunkte den Endpunkt mit dem Endpunkttyp
apiund URL oderprivate.globalcatalog.cloud.ibm.comaus*.private.globalcatalog.cloud.ibm.com.
Verwenden Sie die genauen Servicenamen und URLs, wie sie in der Benutzeroberfläche von IBM Cloud angezeigt werden.
-
Stellen Sie sicher, dass Ihre Cluster-Knoten den privaten Endpunkt des Global Catalog erreichen können. Ohne Internetverbindung gibt der Treiber beim Start eine Warnung aus, und die Kapazitätsrundung ist nicht verfügbar. Alle anderen Aspekte der Bereitstellung verlaufen wie erwartet.
Erstellen Sie eine StorageClass mit aktivierter Kapazitätsrundung
Die Kapazitätsrundung ist eine optionale Funktion, die standardmäßig deaktiviert ist und gemäß StorageClass aktiviert werden muss. Bestehende StorageClasses sind davon nicht betroffen.
Diese Funktion gilt nur für dp2 Profil- StorageClasses, die eine feste IOPS-Zuweisung verwenden. Dies gilt nicht für rfs Profilklassen.
-
Erstellen Sie eine Konfigurationsdatei StorageClass, in
allowCapacityRoundoffForIops: "true"der im Abschnittparametersfestgelegt wird.Im folgenden Beispiel wird ein StorageClass mit einem gültigen IOPS-Wert und aktivierter Kapazitätsrundung erstellt:
apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: ibmc-vpc-file-dp2-roundoff labels: app.kubernetes.io/name: ibm-vpc-file-csi-driver provisioner: vpc.file.csi.ibm.io allowVolumeExpansion: true reclaimPolicy: Delete mountOptions: - hard - nfsvers=4.1 - sec=sys parameters: allowCapacityRoundoffForIops: "true" billingType: hourly classVersion: "1" encrypted: "false" encryptionKey: "" gid: "0" iops: "4700" isENIEnabled: "true" primaryIPAddress: "" primaryIPID: "" profile: dp2 region: "" resourceGroup: "" securityGroupIDs: "" subnetID: "" tags: "" uid: "0" zone: "" volumeBindingMode: Immediate -
Wenden Sie die StorageClass auf Ihren Cluster an.
oc apply -f ibmc-vpc-file-dp2-roundoff.yaml -
Stellen Sie sicher, dass der StorageClass in Ihrem Cluster verfügbar ist. Suchen Sie in der Ausgabe nach dem von Ihnen angegebenen Namen.
oc get sc
Ein PVC mit Kapazitätsrundung bereitstellen
Nachdem Sie Ihre StorageClass, erstellt haben, erstellen Sie ein PVC, das darauf verweist. Die folgenden Beispiele veranschaulichen die beiden wichtigsten Bereitstellungsszenarien.
Szenario 1: Die Kapazität liegt unter dem Mindestwert und wird aufgerundet
In diesem Beispiel fordert das PVC 80 Gi Speicherplatz an. Da 80 Gi unter der minimal unterstützten Kapazität für 4700 IOPS liegt, richtet der Treiber die Dateifreigabe automatisch mit der minimal unterstützten Kapazität ein (in diesem Fall 100 Gi).
-
Erstellen Sie eine PVC-Konfigurationsdatei.
apiVersion: v1 kind: PersistentVolumeClaim metadata: name: my-roundoff-pvc namespace: default spec: accessModes: - ReadWriteMany resources: requests: storage: 80Gi storageClassName: ibmc-vpc-file-dp2-roundoff -
Bringen Sie das PVC an.
oc apply -f my-roundoff-pvc.yaml -
Überprüfen Sie, ob das PVC gebunden ist, und notieren Sie sich das Feld
CAPACITYin der Ausgabe. Die Kapazität sollte den aufgerundeten Wert widerspiegeln, nicht die angeforderten 80 Gi.oc get pvc my-roundoff-pvcBeispielausgabe:
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE my-roundoff-pvc Bound pvc-91ff9a52-5004-4441-9611-be5410edbfe4 100Gi RWX ibmc-vpc-file-dp2-roundoff 30sDer Wert
CAPACITYist,100Giobwohl angefordert80Giwurde, was bestätigt, dass der Treiber auf die minimal unterstützte Kapazität aufgerundet hat.
Szenario 2: Die Kapazität entspricht dem Mindestwert und wird wie angefordert bereitgestellt
In diesem Beispiel fordert das PVC 200 Gi an, was bereits die minimal unterstützte Kapazität für 4700 IOPS erfüllt. Der Treiber stellt die Dateifreigabe ohne Anpassungen mit der angeforderten Kapazität bereit.
-
Erstellen Sie eine PVC-Konfigurationsdatei.
apiVersion: v1 kind: PersistentVolumeClaim metadata: name: my-exact-pvc namespace: default spec: accessModes: - ReadWriteMany resources: requests: storage: 200Gi storageClassName: ibmc-vpc-file-dp2-roundoff -
Bringen Sie das PVC an.
oc apply -f my-exact-pvc.yaml -
Überprüfen Sie, ob das PVC gebunden ist. Das Feld
CAPACITYsollte anzeigen200Gi, um zu bestätigen, dass keine Anpassung vorgenommen wurde.oc get pvc my-exact-pvcBeispielausgabe:
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE my-exact-pvc Bound pvc-3528044b-b004-4077-b09f-c6cdf7000180 200Gi RWX ibmc-vpc-file-dp2-roundoff 24m