Wie schaltet kubectl Cluster zwischen gcloud und minikube
Habe ich Kubernetes arbeitet auch in zwei verschiedenen Umgebungen, nämlich in meiner lokalen Umgebung (MacBook läuft minikube) und so gut wie auf der Google Container Engine (GCE, Kubernetes auf Google Cloud). Ich benutze das MacBook/lokalen Umgebung zum entwickeln und testen meiner YAML-Dateien und dann, nach Abschluss, versuchen Sie auf AVP.
Derzeit muss ich mit der Arbeit der jeweiligen Umgebung individuell: ich brauche zum Bearbeiten der YAML-Dateien in meinem lokalen Umfeld, und, wenn Sie bereit sind, (git) clone, der Sie zu einem GCE-Umgebung und dann benutzen/bereitstellen. Dies ist ein etwas umständlicher Prozess.
Im Idealfall würde ich mag zu verwenden, kubectl von meinem Macbook das einfache wechseln zwischen der lokalen minikube oder GCE Kubernetes-Umgebungen und leicht feststellen, wo die YAML-Dateien verwendet werden. Gibt es eine einfache Möglichkeit, um zwischen Kontexten Umschalten, dies zu tun?
InformationsquelleAutor der Frage Eric Broda | 2017-04-26
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie aus lokalen (minikube) auf gcloud und zurück mit:
kubectl config use-context CONTEXT_NAME
Liste aller cotexts:
kubectl config get-contexts
Können Sie erstellen, die unterschiedlichen Umgebungen für die lokale und gcloud und legte Sie in separaten yaml-Dateien.
InformationsquelleAutor der Antwort Mark
Klonen der YAML-Dateien über repos für die verschiedenen Umgebungen ist definitiv ideal. Was Sie tun können, ist templatize deine YAML-Dateien - durch das extrahieren der Parameter, die unterscheiden sich von Umgebung zu Umgebung.
Können Sie, natürlich, verwenden einige Template-engine und trennen Sie die Werte in ein YAML und produzieren die YAML für eine bestimmte Umgebung. Aber das ist leicht machbar, wenn Sie beschließen, die Ruder-Charts. Nehmen Sie einen Blick auf einige Beispiel-charts gehen, um stable-Verzeichnis an dieser Github repo
Um ein Beispiel der WordPress-Diagrammkönnten Sie haben zwei verschiedene Befehle für zwei Umgebungen:
Für Dev:
helm install --name dev-release --set \
wordpressUsername=dev_admin, \
wordpressPassword=dev_password, \
mariadb.mariadbRootPassword=dev_secretpassword \
stable/wordpress
Ist es nicht erforderlich, übergeben Sie diese Werte auf CLI, obwohl, können Sie Sie speichern die Werte in eine Datei namens treffend
values.yml
und Sie können verschiedene Dateien für verschiedene UmgebungenBenötigen Sie einige Arbeit in die Konvertierung zu Ruder-Diagramm-standards, aber die Mühe wird es Wert sein.
InformationsquelleAutor der Antwort Vishal Biyani
TL;DR: ich erstellt eine GUI zu wechseln Kubernetes Kontexten über AppleScript. Ich aktiviere es über shift-cmd-x.
Ich hatte auch das gleiche Problem. Es war ein Schmerz Kontexten Umschalten, indem Sie den Befehl Linie. Ich verwendet, FastScripts zum festlegen einer Tastenkombination (shift-cmd-x) zum ausführen der folgenden AppleScript (in diesem Verzeichnis befindet: $(HOME)/Library/Scripts/Applications/Terminal).
InformationsquelleAutor der Antwort cwingrav
ja, ich denke, das ist das, was Ihr zu Fragen. Zum anzeigen Ihres aktuellen config verwenden kubectl config anzeigen. kubectl lädt und führt eine config aus den folgenden Orten (in der Reihenfolge)
ich-kubeconfig da wechsle ich viel zwischen verschiedenen Clustern. seine etwas umständlich, aber es funktioniert gut.
sehen diese für mehr info.
https://kubernetes.io/docs/tasks/administer-cluster/share-configuration/ und https://kubernetes.io/docs/concepts/cluster-administration/authenticate-across-clusters-kubeconfig/
InformationsquelleAutor der Antwort JamStar