So erstellen Sie Kubernetes-Netzwerkrichtlinien

So Erstellen Sie Kubernetes Netzwerkrichtlinien



In diesem Artikel werden wir Netzwerkrichtlinien in Kubernetes besprechen. Netzwerkrichtlinien sind in Kubernetes sehr wichtig. Mithilfe von Netzwerkrichtlinien legen wir fest, wie Pods miteinander kommunizieren und wie wir Verbindungen zwischen Pods herstellen. Wenn dieses Konzept neu für Sie ist, ist dieser Artikel für Sie. Beginnen wir den Artikel mit einer detaillierten Definition von Netzwerkrichtlinien in Kubernetes.

Was sind Netzwerkrichtlinien in Kubernetes?

Eine Netzwerkrichtlinie in Kubernetes beschreibt, wie Pod-Gruppen miteinander und mit anderen Netzwerkendpunkten kommunizieren dürfen. Die Netzwerkrichtlinienressource, die angibt, wie Pods kommunizieren dürfen, wird verwendet, um Netzwerkrichtlinien zu implementieren. Sie können Ihren Cluster sichern und den Datenverkehr innerhalb und zwischen Ihren Pods verwalten, indem Sie mithilfe von Netzwerkrichtlinien eine feinkörnige Netzwerkzugriffskontrolle für Ihren Cluster festlegen.







Voraussetzungen:

Das System, das der Benutzer verwendet, muss ein 64-Bit-Betriebssystem sein. Der Arbeitsspeicher des Benutzers muss 8 GB oder mehr als 8 GB betragen. Auf dem Benutzersystem ist die neueste Version von Ubuntu installiert. Der Windows-Benutzer verwendet auch das Linux-Betriebssystem virtuell auf seinem System. Der Benutzer muss eine Vorstellung von Kubernetes, dem kubectl-Befehlszeilentool, Pods und dem Cluster haben, das in der vorherigen Sitzung in unserem System ausgeführt wurde.



Schritt 1: Starten Sie ein Kubernetes Control Panel

In diesem Schritt führen wir Kubernetes in unserem System aus, um den Betrieb unserer Netzwerkrichtlinien perfekt zu starten. Wir starten Minikube in unserem System, indem wir einfach den Befehl ausführen. Minikube ist ein Kubernetes-Cluster, der auf dem lokalen Computer ausgeführt wird. Der Befehl zum Starten von Minikube lautet:



>   minikube start



Wenn der Befehl ausgeführt wird, startet Minikube in unserem System korrekt. Jetzt können wir unsere Aktionen im Zusammenhang mit Netzwerkrichtlinien einfach und effizient in unserem System durchführen.





Schritt 2: Erstellen Sie eine Nginx-Bereitstellung in Kubernetes

In diesem Schritt lernen wir, wie man eine Bereitstellung von Nginx in unserem Kubernetes-System erstellt. Wir führen den angegebenen Befehl im kubectl-Befehlszeilentool aus. Der Befehl lautet:

> kubectl-Bereitstellungsbeispiel erstellen - - image = nginx



Bei der Befehlsausführung wird die Bereitstellung erfolgreich im App-Ordner in unserer Kubernetes-Anwendung erstellt. Das Nginx-Image wird in unserem System korrekt bereitgestellt. Die Bereitstellung stellt sicher, dass die angegebene Anzahl von Replikaten des Pods jederzeit ausgeführt wird, indem Replikate nach Bedarf erstellt oder gelöscht werden. Es wird uns auch ermöglichen, Container-Images in einem Rolling Update in unserem Kubernetes-System perfekt zu aktualisieren.



Schritt 3: Beispielbereitstellung auf einem bestimmten Port in Kubernetes

In diesem Schritt stellen wir nun das Beispiel bereit, das kürzlich versucht, auf dem System an einem bestimmten Port bereitzustellen. Wir führen den Befehl aus:

> kubectl-Expose-Bereitstellungsbeispiel - - port = 80



Wenn der Befehl ausgeführt wird, wird das Bereitstellungsbeispiel erfolgreich auf Port 80 in unserer Kubernetes-Anwendung verfügbar gemacht. Der Kubernetes-API-Server erhält von diesem Befehl eine Anfrage zum Erstellen des Dienstes. Der API-Server erstellt dann den Dienst im Cluster. Es hat eine stabile IP-Adresse und einen DNS-Namen. Der Dienst fungiert als Load Balancer für Pods in der Bereitstellung und verteilt den eingehenden Datenverkehr gleichmäßig auf sie. Dieser Befehl stellt uns einen stabilen Netzwerkendpunkt für die Pods bereit, sodass auf sie zugegriffen werden kann, selbst wenn ihre IP-Adressen ersetzt werden.

Schritt 4: Dienste-Pod in Kubernetes eintragen

Nach der Bereitstellung des Beispiels im System erhalten wir die Liste der laufenden Dienste in Kubernetes. Um Informationen zu allen Pods im Cluster abzurufen, führen wir den Befehl aus:

> kubectl erhält svc, pod



Wenn wir den Befehl ausgeführt haben, wird die Dienstliste in der Ausgabe angezeigt. Das Beispiel in den Diensten wird in der Liste angezeigt. Name, Typ, Custer-IP, externe IP, PORTS und Alter von Pods und Diensten werden durch diesen Befehl perfekt angezeigt. Der „Service/Sample“ hat die Portnummer „80“, die IP des Clusters ist „10.105.250.227“.

Schritt 5: Erstellen Sie Netzwerkrichtlinien Ngnix in Kubernetes

In diesem Schritt erstellen wir eine Nginx-Datei, mit der wir eine Netzwerkrichtlinie in unserer Kubernetes-Anwendung erstellen. Wir erstellen eine Netzwerkrichtlinie und stellen dann eine Netzwerkrichtlinie in Kubernetes einfach mit Hilfe des Befehls kubectl bereit. Der Befehl lautet:

> kubectl gelten -f https: // k8s.io / Beispiele / Service / Vernetzung / ngnix-policy.yaml



Im Befehl fügen wir einen Link zur Netzwerkdatei der Richtlinie hinzu und geben den Namen der Datei „Nginx-policy“ an. Die Erweiterung der Netzwerkrichtliniendatei ist „YAML“. Wenn dieser Befehl ausgeführt wird, ist der Netzwerkrichtlinienordner bereits in unserem System vorhanden, in dem die YAML-Datei access-ngnix erfolgreich erstellt wurde. Die Konfigurationsdatei, die mit diesem Befehl angewendet wird, ist für das Kubernetes-Dienstobjekt bestimmt, das eine Reihe von Pods als Netzwerkdienste verfügbar macht.

Schritt 6: Erstellen Sie einen neuen Pod in Kubernetes und führen Sie ihn aus

In diesem Schritt erstellen wir einen neuen Pod in einem Kubernetes-Cluster. Dieser Pod führt einen Container basierend auf busybox:1.28 aus und hat ein Docker-Image. Wir führen den Befehl „/bin/sh“ im kubectl-Befehlszeilentool aus.

> kubectl führe busybox aus   - - rm - ti    - - image = busybox : einer . 28 - - / Behälter / Sch

Der Befehl „kubectl run“ erstellt eine Bereitstellung im Cluster, die für die Verwaltung einer Reihe von Replikaten des Pods verantwortlich ist. Ein Replikatsatz und ein Pod werden automatisch von der Bereitstellung für den Container erstellt.

Fazit

Mithilfe von Netzwerkrichtlinien können wir problemlos Verbindungen zwischen verschiedenen Pods und Containern herstellen. Sie können diese Befehle auch gemäß den Anforderungen Ihrer Kubernetes-Anwendung bearbeiten, was Ihnen zu einem besseren Verständnis dieses Themas verhilft. Die Vernetzung aller Pods ist sehr wichtig und vorteilhaft für die Metadaten der Pods.