Was ist ein Behälter in Kubernetes??
Ein Container ist ein komplettes Paket, das alles enthält, was für die Ausführung einer Anwendung erforderlich ist. Es handelt sich um ein Bild eines bereitgestellten Softwarepakets, mit dem eine Anwendung ihre gewünschte Funktion ausführen kann. Es enthält Code, Systembibliotheken, wesentliche Standardeinstellungswerte und andere Laufzeitanforderungen. Sie müssen den Container nur einmal und danach codieren, er kann überall ausgeführt werden. Es ist plattformunabhängig, sodass Sie keine Probleme haben, während Sie Ihre Anwendungen auf einer Plattform mit Containern ausführen. Container können das Betriebssystem virtualisieren.
Was ist ein Init -Container in Kubernetes??
Der Init -Container in Kubernetes ist eine Methode, um die erste Run -Initialisierungsroutine in einem Kubernetes -Pod auszuführen. Es handelt sich um einen leichten Spezialbehälter, der immer vor der Anwendung oder einem anderen Hauptbehälter ausgeführt wird, der in einem Pod ausgeführt wird. Es enthält das Setup -Skript und andere Dienstprogramme, die im Bild der Anwendung im Allgemeinen nicht vorhanden sind. Es wird normalerweise zusammen mit dem Container -Array in der POD -Spezifikation definiert. Die grundlegende Verwendung eines Init -Containers besteht darin, Appian mit JDBC- oder RDBMS -Treibern zu starten, die nicht im WebApp -Docker -Bild enthalten sind. Es kann verwendet werden, um die Anwendung oder andere Container zu verzögern oder zu blockieren, um zu beginnen, wenn Sie warten müssen, bis das Bootstrap -Skript abgeschlossen ist oder damit Ressourcen und Abhängigkeiten verfügbar sind.
So erstellen Sie einen Init -Container in der Kubernetes -Umgebung?
Da mehrere App -Container im Pod ausgeführt werden, kann mehr als ein Init -Container auch in einer einzelnen Pod ausgeführt werden. Und sie alle werden ihre Ausführung abschließen, bevor ein App -Container seine Ausführung startet. Die Init -Container werden in einer Sequenz ausgeführt, wenn ein Init -Container seine Ausführung abschließt, startet der nächste seine Ausführung und wenn alle Init -Container ihre Ausführung vervollständigen, startet jeder App -Container seine Ausführung.
Wenn die Ausführung eines Init -Containers fehlschlägt, startet Kubernetes den Container wiederholt, bis er seine Ausführung erfolgreich abgeschlossen hat. Lassen Sie uns nun einen Init -Container in Kubernetes erstellen. Stellen Sie jedoch sicher sicher, dass Ihr System alle Grundbedürfnisse erfüllt, um einen Init -Container zu erstellen. Um einen Init -Container zu erstellen, müssen Sie:
Lassen Sie uns nun zur Implementierung übergehen.
Schritt 1: Starten Sie den Minikube -Cluster
Sie müssen den Minikube -Cluster starten, um die Kubernetes -Umgebung zu verwenden, um Kubectl -Befehle auszuführen. Um den Minikube -Cluster zu starten, werden wir den folgenden Befehl verwenden:
> Minikube Start
Dadurch wird der Minikube -Cluster aufwacht und es Ihnen ermöglicht, die Kubectl -Befehle im Terminal auszuführen.
Schritt 2: Erstellen Sie die YAML -Konfigurationsdatei
Jetzt hat der Prozess der Erstellung eines Init -Containers begonnen. Die erste und wichtigste Sache, die Sie zum Erstellen des Init -Containers benötigen, besteht darin, eine YAML -Konfigurationsdatei zu erstellen. Sie können den Befehl 'nano' verwenden, um eine neue YAML -Datei zu erstellen oder eine bereits vorhandene YAML -Datei mit den Konfigurationsdetails zu öffnen. Mit dem unten angegebenen Befehl können Sie eine YAML -Datei Ihres gewählten Namens erstellen:
> Nano Podin.YamlSobald die YAML -Datei erstellt wurde, können Sie die darin enthaltenen Konfigurationsdetails wie die im folgenden Snapshot speichern:
Schritt Nr. 3: Stellen Sie die YAML -Datei ein
Wenn unsere Konfigurationsdatei fertig ist, stellen wir sie mit dem Befehl kubectl anwenden bereit,. Mit dem folgenden Befehl können Sie die POD in der von uns erstellten Konfigurationsdatei ausführen:
> kubectl anwenden -f podin.YamlDie Ausgabe zeigt deutlich, dass der Pod namens MyApp-Pod erstellt wurde.
Schritt 4: Überprüfen Sie den Status von POD
Lassen Sie uns nun den Status des Pod mit Hilfe des unten angegebenen Befehls überprüfen:
> Kubectl Get -f Podin.YamlDies zeigt lediglich den Namen, die Bereitschaft, den Status, der Neustart und die Altersparameter der Pod an. Wenn Sie sich den detaillierten Status des Pod ansehen müssen, können Sie Folgendes unten verwenden:
> Kubectl beschreiben -f Podin.YamlHier sehen Sie den Status im Indetail, der Ihnen mitteilt, wann der Pod begonnen hat, auf welcher IP-Adresse er ausgeführt wird, auf welchem Knoten er ausgeführt wird, usw. Geben Sie ein detailliertes Bild des Status des Schotens.
Schritt 5: Überprüfen Sie die Protokolle des Init -Containers
Aus der Ausgabe im vorherigen Schritt können Sie sehen, dass der von uns erstellte Pod in Betrieb ist. Wenn Sie nun die Protokolle des Init -Containers sehen möchten, die auf diesem Pod ausgeführt werden, können Sie den unten angegebenen Befehl verwenden:
> kubectl logs myapp-pod -c init-myServiceDer Init-Container-Name ist 'init-MyService', den wir ausdrücklich erwähnen, um sein Protokoll zu überprüfen. Wenn Sie diesen Befehl nun ausführen, erhalten Sie eine ähnliche Ausgabe wie unten angegeben:
Abschluss
In diesem Artikel haben wir das grundlegende Konzept dessen gelernt, was Container sind, während wir uns speziell auf den Init -Container in Kubernetes konzentrieren. Der Init Container ist ein leichter spezieller Container, der vor dem Start eines anderen Containers in der Pod ausgeführt wird. Seine Funktionen überschneiden sich manchmal Start- und Bereitschaftssonden. Diese Sonden können verwendet werden, um eine Aktivität wie das Blockieren oder Verzögerung des Anwendungsstarts durchzuführen, bis ein bestimmter Zustand erfüllt wurde. Indem wir ein einfaches Beispiel demonstrieren, haben wir gelernt, wie man einen Init -Container in Kubernetes erstellt.