Starten Sie eine lokale Kubernetes-Umgebung mit Kind und Docker

Starten Sie eine lokale Kubernetes-Umgebung mit Kind und Docker

einführen

Haben Sie schon einmal einen ganzen Tag damit verbracht, die ersten Schritte mit Kubernetes zu unternehmen? Dank einiger neuer Tools, die kürzlich auf den Markt gekommen sind, müssen Sie sich darüber keine Gedanken mehr machen.

In diesem Beitrag zeige ich Ihnen die Schritte zum Starten eines Clusters in einem einzelnen Docker-Container mithilfe von Kind.

Was ist Kind?

Da Kind in der Sprache Go implementiert ist, stellen Sie bitte sicher, dass Sie die neueste Version von Golang installiert haben. Laut Entwicklerdokumentation werden go1.11.5 und höher empfohlen. Um kind zu installieren, führen Sie diese Befehle aus (die Ausführung kann eine Weile dauern)

kind (Kubernetes IN Docker) ist ein Tool zum Erstellen von Kubernetes-Clustern auf Basis von Docker. Es eignet sich sehr gut zum Erstellen einer lokalen Entwicklungs-/Testumgebung auf Basis von Kubernetes.

gehe und hol -u sigs.k8s.io/kind 
Art Cluster erstellen

Bestätigen Sie anschließend, dass der Cluster „kind“ verfügbar ist.

Art erhalten Cluster

Einrichten von kubectl

Installieren Sie auf ähnliche Weise die neueste Version von Kubernetes-CLI mit Homebrew oder Chocolatey. Die neueste Version von Docker umfasst Kubernetes-Funktionen, verwendet jedoch eine ältere Version von kubectl.

Führen Sie diesen Befehl aus, um die Versionsnummer zu überprüfen.

kubectl-Version

Stellen Sie sicher, dass die GitVersion „v1.14.1“ oder höher lautet.

Wenn Sie kubectl über Docker ausführen, versuchen Sie es mit „Brew Link“ oder einer Neuanordnung Ihrer Umgebungsvariablen.

Sobald kubectl und kind installiert sind, öffnen Sie eine Bash-Konsole und führen Sie diese Befehle aus.

export KUBECONFIG="$(kind get kubeconfig-path)"
kubectl Cluster-Info

Wenn die Art richtig konfiguriert ist, werden einige Informationen angezeigt. Nun können Sie mit den nächsten Arbeiten fortfahren. Ja!

Bereitstellen Ihrer ersten Anwendung

Was müssen wir im Cluster bereitstellen? Eine gute Wahl ist Wordpress, da es MySQL- und PHP-Anwendungen enthält.

Glücklicherweise gibt es eine offizielle Einführung, die es sehr gut beschreibt. Wir können versuchen, den gerade erstellten Art-Cluster zu verwenden, um die meisten Schritte auszuführen.

https://kubernetes.io/docs/tutorials/

Laden Sie zunächst mysql-deployment.yaml und wordpress-deployment.yaml von dieser Seite herunter.

Führen Sie zwei Cat-Befehle aus, um kustomization.yaml zu erstellen. Sobald diese YAML-Dateien vorbereitet sind, platzieren Sie die Dateien wie unten gezeigt in den entsprechenden Verzeichnissen.

k8s-wp/
kustomization.yaml 
mysql-bereitstellung.yaml 
wordpress-deployment.yaml

Wenden Sie es dann auf Ihren Cluster an.

CD K8S-WP 
kubectl apply -k ./

Wenn der Befehl erfolgreich ausgeführt wird, wird eine Ausgabe ähnlich der folgenden angezeigt:

secret/mysql-pass-7tt4f27774 erstellt
service/wordpress-mysql erstellt
service/wordpress erstellt
deployment.apps/wordpress-mysql erstellt
deployment.apps/wordpress erstellt
persistentvolumeclaim/mysql-pv-claim erstellt
persistentvolumeclaim/wp-pv-claim erstellt

Lassen Sie uns den Status des Clusters überprüfen, indem Sie diese Befehle eingeben:

kubectl get Geheimnisse
kubectl erhält PVC
kubectl holt Pods
kubectl get dienste wordpress

Warten Sie, bis alle Pods ausgeführt werden.

Führen Sie dann diesen Befehl aus, um den Dienst zu erhalten.

kubectl port-forward svc/wordpress 8080:80

Öffnen Sie dann http://localhost:8080/

Sehen! Wenn Sie die Datenbank anzeigen oder Ihren Pod überprüfen möchten, führen Sie einen Befehl wie diesen aus und öffnen Sie dann Ihre Client-App.

kubectl port-forward wordpress-mysql-bc9864c58-ffh4c 3306:3306

abschließend

Kind ist eine gute Wahl für Minikube, da es nur einen einzigen Docker-Container verwendet.

Durch die Kombination mit Kustomze, das in Kubernetes 1.14 integriert ist, ist es noch einfacher, Kubernetes auf Ihrem lokalen Computer auszuprobieren.

Dies ist das Ende dieses Artikels über die Verwendung von Kind und Docker zum Starten einer lokalen Kubernetes-Umgebung. Weitere Informationen zur Verwendung von Kind und Docker zum Starten einer lokalen Kubernetes-Umgebung finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Sprechen Sie über das Problem des Ersetzens von Docker (Shim) durch Containerd in Kubernetes1.20
  • So erstellen Sie ein privates Docker-Warehouse in CentOS7 (Kubernetes)
  • Docker-Praxis - Detaillierte Erklärung zur Bereitstellung von Kubernetes auf CentOS7
  • Installations- und Bereitstellungsdetails zum Docker Kubernetes Dashboard
  • Detaillierte Erläuterung der Verwendung der Cloud-native-Technologie Kubernetes Scheduling Unit Pod
  • Einführung in die Cloud-native-Technologie Kubernetes (K8S)
  • Knödel kochen über die Beziehung zwischen Cloud Native Docker und Kubernetes

<<:  Analyse einfacher Anwendungsbeispiele für abgeleitete MySQL-Tabellen (abgeleitete Tabellen)

>>:  Anleitung zur Verwendung von env in vue cli

Artikel empfehlen

Web-Unterrichtspläne, Unterrichtspläne für Anfänger

Unterrichtsthemen Webseite Anwendbare Klasse Zwei...

Designideen für MySQL-Backup und -Wiederherstellung

Hintergrund Lassen Sie mich zunächst den Hintergr...

Zabbix überwacht den Prozess der Linux-Systemdienste

Zabbix erkennt automatisch Regeln zur Überwachung...

MySQL-Reihe: Redo-Log, Undo-Log und Binlog – ausführliche Erklärung

Durchführung von Transaktionen Das Redo-Protokoll...

Detaillierte Schritte zur Installation von Mysql5.7.19 mit yum auf Centos7

In der Yum-Quelle von Centos7 ist standardmäßig k...

Praktischer Bericht über die Entwicklung von Vue3- und TypeScript-Projekten

Inhaltsverzeichnis Überblick 1. Kompositions-API ...

Detaillierte Erklärung des Hintergrund-Positionsprozentsatzprinzips

Als ich heute jemandem beim Anpassen des Codes ha...

Alibaba Cloud Ubuntu 16.04 baut IPSec-Dienst auf

Einführung in IPSec IPSec (Internet Protocol Secu...

Beispieloperation für die Summe des Mysql-Varchar-Typs

Einige Freunde haben beim Erlernen von Datenbanke...

WeChat Mini-Programm Lotterienummerngenerator

In diesem Artikel wird der spezifische Code des W...

JavaScript BOM-Standortobjekt + Navigatorobjekt + Verlaufsobjekt

Inhaltsverzeichnis 1. Standortobjekt 1. URL 2. Ei...

Detaillierte Erläuterung der MySQL-Indexprinzipien und -Optimierung

Vorwort Dieser Artikel wurde von einem hohen Tier...