Website-Suche

So verwalten Sie Kubernetes-Cluster mit kubectl


Mit dem Befehl kubectl interagieren Administratoren mit einem Kubernetes-Cluster auf einem Linux-System und verwalten diesen. Es ist ein unverzichtbares Befehlszeilentool, das mit allen Kubernetes-Cluster-Umgebungen wie Amazon Web Services, Google Cloud Platform oder einem Cluster auf Ihrer eigenen Hardware (z. B. kubeadm) funktioniert. Die Verwaltung von Kubernetes-Clustern in großem Maßstab kann anfangs eine Herausforderung sein, aber die Beherrschung des kubectl-Befehls wird es viel einfacher machen.

In diesem Tutorial lernen wir, wie man Kubernetes-Cluster mit dem kubectl-Befehl verwaltet. Wir werden verschiedene Befehlsoptionen untersuchen und sehen, wie Sie kubectl effektiv verwenden können, sowie einige Tipps und Tricks, um die Verwendung von kubectl zu vereinfachen.

In diesem Tutorial lernen Sie:

  • Verwenden von kubectl-Befehlen für einen Kubernetes-Cluster

Verwalten von Kubernetes-Clustern mit kubectl

Die folgenden Beispiele zeigen einige der gängigsten und wichtigsten kubectl-Befehle, die für einen Kubernetes-Cluster unter Linux verwendet werden können.

NOTE
Falls Sie es noch nicht haben, müssen Sie kubectl separat von Kubernetes installieren. Der Befehl kubectl funktioniert dann mit jeder Art von Kubernetes, die Sie ausführen, z. B. kubeadm oder minikube usw.

  1. Um eine Manifestdatei anzuwenden, die auch eine Anwendung in Kubernetes bereitstellen kann, können wir die folgende Syntax verwenden:

    
    kubectl apply -f ./application.yaml 
    

    Auf diese Weise kann unsere benutzerdefinierte containerisierte Docker-Anwendung oder eine Anwendung bereitgestellt werden, die wir aus einem zentralen Repository wie Docker Hub abrufen.

  2. Wir können eine Bereitstellung auch mit dem delete-Parameter löschen. Hier sind einige Beispiele:

    
    kubectl delete deployment my-application
    

    Oder geben Sie die Datei an:

    
    kubectl delete -f application.yaml
    
  3. Rufen Sie Informationen zu allen Kubernetes-Pods in Ihrem Netzwerk ab mit:

    
    kubectl get pods
    

    Oder die ausführlichere Version, die Pods in allen Namensräumen anzeigt:

    
    kubectl get pods --all-namespaces
    

    Beachten Sie, dass die Befehlsoption --all-namespaces auch auf -A gekürzt werden kann:

    
    kubectl get pods -A
    
  4. Hier finden Sie Informationen zu allen konfigurierten Knoten in Ihrem Kubernetes-Cluster:

    
    kubectl get nodes
    
  5. Mit dem folgenden Befehl, der vom Kubernetes-Maser-Knoten ausgegeben wird, sehen Sie eine laufende Liste aller verfügbaren Dienste, die in Ihrem Cluster ausgeführt werden:

    
    kubectl get svc
    
  6. Rufen Sie Details zu einem bestimmten Pod ab, der bereitgestellt wurde (in diesem Beispiel ein Pod mit dem Namen "apache"):

    
    kubectl get pods/apache
    

    Und detailliertere Informationen mit dem Argument beschreiben:

    
    kubectl describe pods/apache
    
  7. Sehen Sie sich die Protokolle für einen bestimmten Pod an:

    
    kubectl logs my-pod
    
  8. Wir können den run-Parameter verwenden, um mit dem Ausführen eines Bildes zu beginnen. Nehmen wir zum Beispiel Nginx:

    
    kubectl run --image=nginx nginx-server --port=80 --env="DOMAIN=cluster"
    

    Wir können dann Port 80 verfügbar machen:

    
    kubectl expose deployment nginx-deployment --port=80 --name=nginx-http
    
  9. Der Befehl kubectl ist auch beim Skalieren von Ressourcen unerlässlich. So skalieren Sie die Bereitstellung von 'mysql' auf 5 Replikate:

    
    kubectl scale --replicas=5 deployment/mysql  
    

    Oder um Ressourcen wie in einer YAML-Datei angegeben zu skalieren:

    
    kubectl scale --replicas=5 -f mysql.yaml
    
  10. Um alle Pods von einem Knoten zu leeren (z. B. um Wartungsarbeiten am Knoten durchzuführen, ohne dass dies zu Unterbrechungen des Kubernetes-Clusters führt):

    
    kubectl drain worker-node
    
  11. So zeigen Sie alle Informationen zu Ihrem Kubernetes-Cluster an:

    
    kubectl cluster-info
    

Abschließende Gedanken

In diesem Tutorial haben wir gesehen, wie Sie den Befehl kubectl verwenden, um einen Kubernetes-Cluster auf einem Linux-System zu verwalten. Das Erlernen der Verwendung von kubectl ist für Administratoren unerlässlich, um neue Bereitstellungen und Pods zu erstellen und Knoten über die Befehlszeile zu verwalten. Es ermöglicht uns auch, Protokolle zu überprüfen und jederzeit einen aktuellen Status der Funktionsweise des Clusters und seiner einzelnen Komponenten anzuzeigen.

Verwandte Artikel: