So erstellen Sie ein PersistentVolume in Kubernetes

So Erstellen Sie Ein Persistentvolume In Kubernetes



Ein Persistent Volume (PV) in Kubernetes ist eine Speichereinheit im Cluster, die entweder manuell von einem Administrator oder automatisch mithilfe von Speicherklassen bereitgestellt wurde. So wie ein Cluster Knoten hat, hat er auch ein persistentes Volume. Das Persistent Volume wird verwendet, um den Speicher von den Pods in Kubernetes zu trennen. Dieser Leitfaden erläutert nicht nur persistente Volumes, sondern zeigt Ihnen auch, wie Sie eines in Kubernetes erstellen.

Persistentes Volume in Kubernetes

Um persistente Volumes in Kubernetes zu definieren, stehen dem Cluster physische Speicher wie ein NFS-Server oder SSDs in Form von Objekten zur Verfügung. Es handelt sich um eine im Cluster vorhandene vorab bereitgestellte Speichereinheit, die vom Administrator bereitgestellt wird. Das persistente Volume wird an den Cluster angehängt, der von den Pods mithilfe der Ansprüche auf persistente Volumes verwendet werden kann. Der persistente Datenträgeranspruch ist eine Anforderung des Entwicklers zur Speicherung. Die Entwickler stellen einige Anforderungen für Speicher- und Zugriffsmodi wie Lesen oder Schreiben. Der Cluster ordnet die PVC-Anforderung dem passenden PV zu und falls kein passender PV vorhanden ist, erstellt der Cluster dynamisch einen passenden PV basierend auf der Speicherklasse.

Sehen Sie sich das folgende Bild an, um zu verstehen, wie das persistente Volume und der Anspruch auf persistentes Volume in einem Kubernetes-Cluster funktionieren.









Wie in der Abbildung gezeigt, erstellt der Administrator – Cluster-Administrator – das persistente Volume (PV) innerhalb des Clusters, das an den persistenten Volume-Claim (PVC) gebunden wird. Der Pod verwendet den PVC, in dem der Benutzer den PVC und den Pod im Cluster erstellen kann. Wir werden nun zeigen, wie ein Pod eingerichtet wird, um das PVC als Speicher zu verwenden.



Voraussetzungen

Bevor Sie lernen, wie ein Pod für die Verwendung des PVC konfiguriert wird, stellen Sie sicher, dass Sie die folgenden grundlegenden Anforderungen erfüllen:





  • Minikubes sollte installiert werden, um die kubectl-Befehle auszuführen
  • Kubernetes-Cluster mit einem Knoten
  • Kubectl-CLI
  • Grundlegendes Verständnis von persistentem Volumen

Wenn Sie diese vorbereitet haben, können Sie beginnen.

Plattform-Setup für die Pod-Konfiguration

Kubernetes ist die bevorzugte Plattform von Entwicklern für containerisierte Anwendungen. Das persistente Volume bietet persistenten Speicher für containerisierte Anwendungen. Jetzt richten wir die Plattform für den Kubernetes-Cluster ein und konfigurieren die Pods für die Verwendung des PVC-Speichers. Der erste Schritt besteht darin, das Minikube-Terminal mit dem folgenden Befehl zu starten:



> minikube start

Als nächstes erstellen wir das Verzeichnis für die als nächstes zu erstellenden Dateien. Mit dem Befehl „sudo mkdir“ wird das Verzeichnis erstellt:

> sudo mkdir / mnt / Daten

Wenn Sie diesen Befehl eingeben, fragt der Server nach dem Administratorkennwort, um dem Befehl Administratorrechte zu gewähren.

Jetzt können Sie die HTML-Datei als Superuser erstellen und Daten darin echoen. Hier wird die Datei index.html erstellt, in der „hello from Kubernetes storage“ gespeichert wird.

Wie erstelle ich ein persistentes Volume?

Dieser Artikel konzentriert sich hauptsächlich auf das Erstellen des persistenten Volumes und das Konfigurieren der Pods für die Ansprüche auf persistente Volumes. Im nächsten Abschnitt werden wir Sie daher anleiten, wie Sie ein persistentes Volume in Kubernetes erstellen. Hier erstellen wir das persistente Volume „hostpath“, da es von Kubernetes zum Testen und Entwickeln auf einem Cluster mit einem einzelnen Knoten unterstützt wird. Der an das Netzwerk angeschlossene Speicher wird auf dem Knoten emuliert, um eine Datei oder ein Verzeichnis zu verwenden. Beginnen wir mit dem Erstellen des persistenten Volumes.

Schritt Nr. 1: Erstellen Sie eine YAML-Konfigurationsdatei

Zunächst benötigen wir eine YAML-Datei zum Speichern der Dienstkonfiguration. Die Konfigurationsdatei enthält die Details der Dienste, die zum Erstellen des persistenten Volumes verwendet werden sollen. Hier ist der Befehl zum Erstellen einer YAML-Datei:

> nano volume.yaml

Wenn Sie diesen Befehl ausführen, wird die folgende YAML-Datei erstellt, die die Konfiguration des persistenten Hostpfad-Volumes enthält:

Schritt Nr. 2: Erstellen Sie das PV aus der Konfigurationsdatei

Die nichtflüchtige Festplatte wird mithilfe der Konfigurationsdatei erstellt. Das persistente Volume (PV) wird über die Befehlszeile erstellt:

> kubectl gelten -f volume.yaml

Der Befehl „kubectl apply“ wird verwendet, um das persistente Volume zu erstellen. Auf den Befehl folgt der Parameter „-f“ zusammen mit dem Namen der Konfigurationsdatei. Die folgende Ausgabe wird nach Ausführung des Befehls „apply“ generiert:

Sie können die Informationen über das persistente Volume anzeigen, indem Sie den Befehl „kubectl get“ verwenden. Siehe den vollständigen Befehl unten:

> kubectl erhält pv task-pv-volume

Das persistente Volume enthält den Namen, die Kapazität, die Zugriffsmodi, die Rückforderungsrichtlinie, den Status, den Anspruch, die Speicherklasse, den Grund und das Alter. Sehen Sie sich die Ausgabe im folgenden Snippet an:

Wie erstelle ich einen Persistent Volume Claim (PVC)?

Die Ansprüche auf persistente Volumes werden von den Pods verwendet, um physischen Speicher anzufordern. Die folgenden Schritte helfen Ihnen zu lernen, wie man PVC erstellt.

Schritt Nr. 1: Erstellen Sie die YAML-Datei

Erstellen Sie zunächst die YAML-Konfigurationsdatei, um die Konfigurationsdetails darin darzustellen. Wenn Sie die Konfigurationsdatei bereits haben, können Sie diese einfach verwenden, aber wenn Sie die Konfigurationsdatei nicht haben, müssen Sie sie speziell erstellen. Verwenden Sie den angegebenen Befehl, um die YAML-Konfigurationsdatei zu erstellen:

> nano behaupten.yaml

Wenn Sie diesen Befehl ausführen, wird die folgende YAML-Konfigurationsdatei im Terminal geöffnet:

Schritt Nr. 2: Erstellen Sie den PVC aus der Konfigurationsdatei

Der Anspruch auf das persistente Volume wird im nächsten Schritt mithilfe der Konfigurationsdatei erstellt. Derselbe Befehl „kubectl apply“ kann verwendet werden, um den PVC aus der Konfigurationsdatei zu erstellen. Hier ist der vollständige Befehl „kubectl apply“:

> kubectl gelten -f behaupten.yaml

Schritt Nr. 3: Überprüfen Sie die PVC-Informationen

Die Informationen im PVC müssen nun konfiguriert werden. Um den PVC zu erstellen, verwenden Sie den unten geschriebenen Befehl:

> kubectl erhält pv task-pv-volume

Dies zeigt, dass das PV an das PVC gebunden ist, sehen Sie sich die Ausgabe unten an:

Wie erstelle ich einen Pod?

Der Cluster besteht aus drei Dingen, PV, PVC und Pods. Wir haben PV und PVC entwickelt; Der letzte Schritt besteht darin, den Pod zu erstellen. Hier sind die Schritte zum Erstellen des Pods:

Schritt Nr. 1: Erstellen Sie die YAML-Konfigurationsdatei

Zuerst müssen wir die YAML-Konfigurationsdatei zum Auflisten der Dienste erstellen. Der unten angegebene Befehl wird verwendet, um die YAML-Datei zu erstellen:

> nano pvpod.yaml

Wenn Sie diesen Befehl ausführen, wird die folgende YAML-Datei in Ihrem Terminal geöffnet:

Schritt Nr. 2: Erstellen Sie den Pod aus der Konfigurationsdatei

Als Nächstes erstellen wir den Pod aus der Konfigurationsdatei und verwenden den folgenden Befehl, um zu überprüfen, ob sich der Pod im Container befindet oder nicht:

> kubectl get pod task-pv-pod

Was sind die Schritte zur Durchführung der Bereinigung?

Nachdem wir all diese Dienste genutzt haben, sollten wir eine Bereinigung durchführen, um freien Speicherplatz zu haben. Dazu müssen wir die hier erwähnten Befehle verwenden.

> kubectl Pod löschen task-pv-pod

Dadurch wird der zuvor erstellte Pod gelöscht:

> kubectl pvc-task-pv-claim löschen

Dadurch wird der oben erstellte PVC gelöscht:

> kubectl pv task-pv-volume löschen

Dadurch wird das oben erstellte PV gelöscht:

Fazit

In diesem Tutorial haben wir gelernt, dass ein Cluster ein PV, PVC und einen Pod enthält. Das PV und PVC verbinden sich, um die Anforderungen der Pods oder der Entwickler zu erfüllen. Es hat uns auch bei der Erstellung von PV, PVC und Pods angeleitet. Nachdem wir alle Dienste erstellt haben, haben wir auch gelernt, wie man die Bereinigung durchführt, um alle diese Dienste zu löschen.