Was sind Bereitstellungen in Kubernetes??
Die Bereitstellungen bestehen aus einer großen Anzahl identischer Schoten ohne differenzierende Funktionen. Eine Bereitstellung erstellt viele Kopien Ihrer Anwendung und ersetzt automatisch diejenigen, die versagen oder nicht mehr reagieren. Die Bereitstellung Ihrer Anwendung stellt sicher, dass mindestens eine Instanz bereit ist, Benutzeranfragen eine Antwort zu geben. Der Kubernetes -Bereitstellungscontroller ist für die Verwaltung von Bereitstellungen zuständig.
Einer der wesentlichen Teile der Bereitstellungen ist die Verwaltung von Anwendungsänderungen. Wenn Sie das in Kubernetes manifestierte Bereitstellungsmanifest aktualisieren, wird die Anwendung standardmäßig rollend aktualisiert. Auf diese Weise wird die vorherige Version des Bereitstellungen weiter ausgeführt, während der neue eingerichtet wird.
In den Bereitstellungen wird eine POD -Vorlage verwendet, um eine Anforderung für ihre Pods anzugeben. Das Erscheinungsbild jedes POD wird durch die POD -Spezifikation definiert, die umfasst, welche Dienste in seinen Containern betrieben werden sollen, welches Volumen die Pods montieren sollten, und andere Aspekte.
Wenn die Pod -Vorlage einer Bereitstellung aktualisiert wird, werden neue Pods erstellt.
Voraussetzung:
Um Kubectl zum Ausführen von Befehlen zu verwenden, müssen Sie zuerst einen Minikube -Cluster auf unserem System einrichten. Ubuntu 20.04 wurde verwendet, um die Befehle in diesem Thema zu implementieren. Sie können auch unser bevorzugtes Betriebssystem nutzen, da wir bereits Kubectl installiert haben. Es muss installiert werden, bevor die Befehle ausgeführt werden können.
Um ein Terminal zu beginnen, können wir eine von zwei Techniken einnehmen. Eine Möglichkeit besteht darin, die Anwendungsleiste unseres Betriebssystems zu verwenden, um das Terminal zu erreichen. Eine andere Möglichkeit ist die Verwendung der Tastaturverknüpfung „Strg + Alt + T.Um ein Terminal zu starten, wählen Sie eine dieser Optionen aus.
Zunächst müssen wir einen Minikube -Cluster booten, der zuvor auf Ubuntu 20 bereitgestellt wurde.04. Jetzt werden wir Minikube starten, indem wir den folgenden Befehl in das Terminal eingeben. Die Anweisung und ihre Ausgabe können im angebotenen Screenshot verstanden werden.
Erstellen von Bereitstellungen
Die meisten Anwendungen im Service-Stil in Kubernetes verwenden Bereitstellungen, um deren Anwendungen zu betreiben. Bereitstellungen definieren, wie Ihr Anwendungscontainer bereitgestellt wird und wie viele Instanzen im Kubernetes ausgeführt werden sollen. Danach wird Kubernetes die Ausführung der erforderlichen Anzahl von Repliken ausführen. Die Kubectl -Anwendung und Kubectl Create -Befehle können verwendet werden, um eine Bereitstellung zu erstellen.
Nach dem Erstellen garantiert der Einsatz, dass die Anzahl der von Ihnen angegebenen Pods funktioniert. Die Bereitstellung ersetzt Pods, die aus ihren Knoten ausfallen oder ausgestoßen werden.
Ein Beispiel für eine Bereitstellungsmanifestdatei im YAML -Format ist wie folgt:
Die gesamte Konfigurationsdatei finden Sie unten. Das Feld "Metadaten: Name" gibt an, dass eine Bereitstellung mit dem Namen nginx erstellt wird. Gemäß der Replikasspalte generiert der Einsatz drei replizierte Pods.
Die POD -Vorlage oder das Feld 'Spezifikation: Vorlage', zeigt die App: Nginx -Beschriftung an. Die Vorlage: Spezifikumsparameter in der POD.14.2. Die Bereitstellung stellt Port 80 für die Pods zur Verfügung.
Stellen Sie vor dem Fortschritt und den weiteren Schritten sicher, dass Ihr Kubernetes -Cluster in Betrieb ist und arbeitet. Befolgen Sie die nachstehend beschriebenen Verfahren, um die oben genannten Bereitstellung zu konstruieren.
Wir haben in diesem Fall den Befehl 'kubectl anwenden' verwendet. Die Bereitstellung wurde erfolgreich konfiguriert, wie die Ausgabe zeigt. Die Anweisung und deren Ausgang können im angegebenen Screenshot erfasst werden.
Führen Sie nun die Befehle "kubectl get Deployments" aus, um festzustellen, ob die Bereitstellung erstellt wird oder nicht. Das Ergebnis ähnelt dies (siehe unten), wenn die Bereitstellung noch erstellt wird. Die Anzahl der beabsichtigten Kopien nach dem.Spezifikation.Replicas Field ist drei. Die Anweisung und deren Ausgang können im angegebenen Screenshot erfasst werden.
Der Rollout -Befehl in Kubectl kommt hier hilfreich ein! Wir können es nutzen, um den Fortschritt unserer Bereitstellung zu überwachen.
Der Befehl wird standardmäßig warten, bis alle Schoten ordnungsgemäß begonnen haben. Der Befehl fährt mit einem Null -Return -Code ab, wenn die Bereitstellung erfolgreich abgeschlossen ist.
Jetzt können Sie den Kubectl-Rollout-Status-Bereitstellung/Nginx-Abschluss ausführen, um den Bereitstellungsrollout-Status zu untersuchen. Die Anweisung und deren Ausgang können im angegebenen Screenshot erfasst werden.
Nach ein paar Sekunden führen Sie 'kubectl. So sieht die Ausgabe aus. Sie können sehen, dass die Bereitstellung alle drei Repliken erstellt hat und dass alle Repliken aktuell sind (sie haben die neueste POD. Die Anweisung und deren Ausgang können im angegebenen Screenshot erfasst werden.
Danach werden wir den Befehl 'kubectl Get Rs' verwenden. Auf diese Weise können Sie den Replicaset (RS) sehen, den die Bereitstellung speziell erstellt hat. Die Anweisung und deren Ausgang können im angegebenen Screenshot erfasst werden.
Die folgenden Felder werden aus dem Befehl 'kubectl get rs' hergestellt. Der folgende Abschnitt zeigt, für welchen Zweck sie erfüllen.
Es ist erwähnenswert, dass der Name des Replikasets immer [Bereitstellungsname] ist-[Zufälligkeit]. Die zufällige Zeichenfolge wird zufällig mit dem Saatgut-Pod-Template-Hash erstellt.
Abschluss:
Wir haben die Kubectl -List -Bereitstellungen in diesem Artikel besprochen. Der normale Kubernetes -Bereitstellungsfluss für Service -Modell -Apps und ihre Funktionsweise. Wir haben gezeigt, wie Sie Statusprüfungen und eine automatisierte Rollback -Methode zur Bereitstellungssequenz hinzufügen können.