App auf der OpenShift Data Foundation implementieren
Nachdem Sie das Add-on für die OpenShift Data Foundation für Ihren Red Hat® OpenShift® on IBM Cloud®-Cluster installiert haben, können Sie die ODF-Speicherklassen verwenden, um einen Persistent Volume Claim (PVC) zu erstellen. Beziehen Sie sich dann auf den PVC in Ihrer Bereitstellung, damit Ihre App Daten aus dem zugrunde liegenden ODF-Speichergerät speichern und verwenden kann.
- Erforderliche Mindestberechtigungen
- Editor-Plattform-Zugriffsrolle und die Writer-Service-Zugriffsrolle für den Cluster in IBM Cloud Kubernetes Service.
Rufen Sie Ihren Red Hat OpenShift-Cluster auf.
-
Führen Sie die ODF-Speicherklassen auf. Weitere Informationen zu ODF-Speicherklassen finden Sie in der Speicherklassenreferenz.
oc get sc | grep openshiftBeispielausgabe
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE Immediate true 9m19s ocs-storagecluster-ceph-rbd openshift-storage.rbd.csi.ceph.com Delete Immediate false 9m19s ocs-storagecluster-ceph-rgw openshift-storage.ceph.rook.io/bucket Delete Immediate false 18m ocs-storagecluster-cephfs openshift-storage.cephfs.csi.ceph.com Delete Immediate true 10m openshift-storage.noobaa.io openshift-storage.noobaa.io/obc Delete Immediate false 6m32s -
Erstellen Sie einen PVC, der auf die Speicherklasse verweist, die Sie verwenden wollen. Speichern und bearbeiten Sie die folgende PVC-Konfigurationsdatei so, dass auf die Speicherklasse verwiesen wird, die Sie verwenden wollen. Wenn Sie die Verschlüsselung mit Hyper Protect Crypto Services aktiviert haben, können Sie die Speicherklasse
ocs-storagecluster-ceph-rbd-encryptedverwenden, die Verschlüsselung unterstützt. Beispiel-PVC zur Verwendung der Speicherklasseocs-storagecluster-cephfs.apiVersion: v1 kind: PersistentVolumeClaim metadata: name: odf-pvc spec: accessModes: - ReadWriteOnce resources: requests: storage: 10Gi storageClassName: ocs-storagecluster-cephfs -
Erstellen Sie die PVC in Ihrem Cluster.
oc create -f <my-pvc.yaml> -
Erstellen Sie eine YAML-Konfigurationsdatei für einen Pod, an den der von Ihnen erstellte PVC angehängt wird. Im folgenden Beispiel wird ein
nginx-Pod erstellt, der das aktuelle Datum und die aktuelle Uhrzeit in eine Datei namenstest.txtschreibt.apiVersion: v1 kind: Pod metadata: name: app spec: containers: - name: app image: nginx command: ["/bin/sh"] args: ["-c", "while true; do echo $(date -u) >> /test/test.txt; sleep 600; done"] volumeMounts: - name: persistent-storage mountPath: /test volumes: - name: persistent-storage persistentVolumeClaim: claimName: odf-pvc -
Erstellen Sie den Pod in Ihrem Cluster.
oc apply -f pod.yaml -
Um zu überprüfen, ob der Pod bereitgestellt wird, warten Sie, bis Ihre App in den Status
Runningversetzt wird.oc get podsBeispielausgabe
NAME READY STATUS RESTARTS AGE app 1/1 Running 0 2m58s -
Stellen Sie sicher, dass die App Daten schreiben kann.
- Melden Sie sich bei Ihrem Pod an.
oc exec <app-pod-name> -it -- bash - Zeigen Sie den Inhalt der Datei
test.txtan, um sich zu vergewissern, dass Ihre App Daten auf Ihren persistenten Speicher schreiben kann.Beispielausgabecat /test/test.txtTue Mar 2 20:09:19 UTC 2021 Tue Mar 2 20:09:25 UTC 2021 Tue Mar 2 20:09:31 UTC 2021 Tue Mar 2 20:09:36 UTC 2021 Tue Mar 2 20:09:42 UTC 2021 Tue Mar 2 20:09:47 UTC 2021 - Verlassen Sie den Pod.
exit
- Melden Sie sich bei Ihrem Pod an.