So erstellen Sie Kubernetes -Netzwerkrichtlinien

So erstellen Sie Kubernetes -Netzwerkrichtlinien

In diesem Artikel werden wir Netzwerkrichtlinien in Kubernetes erörtern. Netzwerkrichtlinien sind in Kubernetes sehr wichtig. Mit Hilfe von Netzwerkrichtlinien geben wir an, wie Pods miteinander kommunizieren und wie wir Verbindungen zwischen Pods herstellen. Wenn Sie in diesem Konzept neu sind, ist dieser Artikel genau das Richtige 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 anderen Netzwerkendpunkten kommunizieren dürfen. Die Netzwerkrichtlinienressource, die angibt, wie Pods kommunizieren dürfen, wird zur Implementierung von Netzwerkrichtlinien verwendet. Sie können Ihren Cluster sichern und den Verkehrsfluss innerhalb und zwischen Ihren Schoten verwalten, indem Sie mithilfe von Netzwerkrichtlinien eine feinkörnige Netzwerkzugriffskontrolle für Ihren Cluster angeben.

Voraussetzungen:

Das System, das der Benutzer verwendet, muss ein 64-Bit-Betriebssystem sein. Der RAM des Benutzers muss 8 GB oder über 8 GB sein. Die neueste Version von Ubuntu ist im Benutzersystem installiert. Der Windows -Benutzer verwendet auch das Linux -Betriebssystem praktisch auf seinem System. Der Benutzer muss eine Vorstellung von Kubernetes, dem Kubectl -Befehlszeilen -Tool, Pods und Cluster haben, das in der vorherigen Sitzung in unserem System ausgeführt wurde.

Schritt 1: Starten Sie ein Kubernetes -Bedienfeld

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

> Minikube Start



Wenn der Befehl ausgeführt wird, beginnt Minikube in unserem System korrekt. Jetzt können wir unsere Aktionen im Zusammenhang mit Netzwerkrichtlinien in unserem System problemlos im Zusammenhang mit Netzwerkrichtlinien ausführen.

Schritt 2: Erstellen Sie eine Nginx -Bereitstellung in Kubernetes

In diesem Schritt lernen wir, wie Sie in unserem Kubernetes -System eine Bereitstellung von Nginx erstellen können. Wir führen den angegebenen Befehl im Kubectl-Befehlszeilen-Tool aus. Der Befehl ist:

> kubectl erstellen Bereitstellungen Beispiel - - Image = nginx



Bei der Befehlsausführung wird die Bereitstellung erfolgreich im App -Ordner in unserer Kubernetes -Anwendung erstellt. Das Nginx -Bild wird in unserem System korrekt bereitgestellt. Die Bereitstellung sorgt dafür. Außerdem können wir Containerbilder in einem Rolling -Update in unserem Kubernetes -System perfekt aktualisieren.

Schritt 3: Beispielbereitstellung in einem bestimmten Port in Kubernetes

In diesem Schritt werden wir nun die Probe enthüllen, die kürzlich versucht, auf einem bestimmten Port auf dem System bereitzustellen. Wir werden den Befehl ausführen:

> kubectl expose Deployment Probe - - Port = 80



Wenn der Befehl ausgeführt wird, wird die Bereitstellungsprobe in Port 80 in unserer Kubernetes -Anwendung erfolgreich aufgenommen. Der Kubernetes -API -Server erhält eine Anfrage von diesem Befehl, um den Dienst zu erstellen. Der API -Server erstellt dann den Dienst im Cluster. Es hat eine stabile IP -Adresse und einen DNS -Namen. Der Service fungiert als Lastausgleich für Pods im Einsatz und verteilt den eingehenden Verkehr gleichmäßig unter ihnen. Dieser Befehl bietet uns einen stabilen Netzwerkendpunkt für die Pods, sodass sie zugreifen können, auch wenn ihre IP -Adressen ersetzt werden.

Schritt 4: Enlist Services Pod in Kubernetes

Nach der Bereitstellung der Stichprobe im System erhalten wir die Liste der laufenden Dienste in Kubernetes. Um Informationen über alle Pods im Cluster abzurufen, führen wir den Befehl aus:

> Kubectl GET SVC, POD



Bei der Ausführung des Befehls wird die Serviceliste auf der Ausgabe angezeigt. Die Probe in Diensten ist in der Liste angezeigt. Der Name, Typ, Custer-IP, externe IP, Ports und das Alter von Schoten und Diensten werden durch diesen Befehl perfekt angezeigt,. Das 'Service/Beispiel' hat die Portnummer '80', IP des Clusters '10.105.250.227 '.

Schritt 5: Erstellen Sie die Netzwerkrichtlinie NGNIX in Kubernetes

In diesem Schritt erstellen wir eine NGINX -Datei, über die wir in unserer Kubernetes -Anwendung eine Netzwerkrichtlinie erstellen. Wir werden eine Netzwerkrichtlinie erstellen und dann eine Netzwerkrichtlinie in Kubernetes mit Hilfe des Kubectl -Befehls einfach bereitstellen. Der Befehl ist:

> kubectl anwenden -f https: // k8s.IO/Beispiele/Service/Networking/Ngnix-Policy.Yaml



Im Befehl fügen wir einen Link zur Richtlinien-Netzwerkdatei hinzu und geben den Namen der Datei 'nginx-policy' an. Die Erweiterung der Netzwerkrichtliniendatei lautet "YAML". Wenn dieser Befehl ausgeführt wird, ist der Ordner für Netzwerkrichtlinien bereits in unserem System vorhanden. Die mit diesem Befehl angewendete Konfigurationsdatei ist für das Kubernetes -Dienstobjekt, das eine Reihe von Pods als Netzwerkdienste enthüllt.

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

In diesem Schritt werden wir eine neue Pod in einem Kubernetes -Cluster erstellen. Dieser Pod wird einen Container basierend auf der Busybox ausführen: 1.28 und ein Docker -Bild haben. Wir werden den Befehl '/bin/sh' im Kubectl -Befehlszeilenwerkzeug ausführen.

> kubectl run tousybox - - rm - ti - - image = tousybox: 1 . 28 - - / bin / sh

Der Befehl 'kubectl run' erstellt eine Bereitstellung im Cluster, die für die Verwaltung einer Reihe von Replikationen des Pod verantwortlich ist. Ein Replikate -Set und ein Pod werden automatisch vom Bereitstellen für den Container erstellt.

Abschluss

Mit Hilfe der Netzwerkrichtlinie können wir leicht Verbindungen zwischen verschiedenen Pods und Containern herstellen. Sie können diese Befehle auch gemäß Ihren Kubernetes -Anwendungsanforderungen bearbeiten, die Ihnen helfen, dieses Thema besser zu verstehen. Die Vernetzung aller Schoten ist sehr wichtig und für Pods -Metadaten vorteilhaft.