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 / DatenWenn 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.yamlWenn 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.yamlDer 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-volumeDas 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.yamlWenn 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-volumeDies 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.yamlWenn 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-podDadurch 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.