/ Shell

Rancher 2.0 CLI

Rancher-CLI erlaubt Steuerung der Rancher-Umgebung in der Shell.

Token

Um sich über die CLI mit Rancher zu verbinden, muss ein Login mit Hilfe eines API-Keys durchgeführt werden. Um einen Key zu generieren müssen folgende Schritte befolgt werden:

  • Klick auf den Avatar oben rechts
  • Klick auf "API & Keys"
  • Klick auf "Add Key"
  • Beschreibung und Ablaufdatum bestimmen
  • Klick auf "Create"
  • Eine Seite mit dem Key und zusätzlichen Informationen ("API Endpoint", "Access Key", "Secret Key" und "Bearer Token") wird eigeblendet. Die Infromationen müssen vor dem Schließen der Seite gesichert werden, da sie nicht wiederholt angezeigt werden können.

Login

Für die Nutzung der CLI wird der "Bearer Token" und der "API Endpoint" benötigt.

Login an der API kann erfolgen mit $ ./rancher login <API_ENDPOINT> --token <BEARER_TOKEN>

Das Projekt kann ausgewählt werden mit $ ./rancher context switch. In meinem Fall gibt es nur ein Projekt:

INFO[0000] Only 1 project available: Default            
INFO[0000] Setting new context to project Default       
INFO[0000] Saving config to /home/marek/.rancher/cli2.json 

Kubectl

Um Workloads zu verwalten muss parallel zur Rancher-CLI Kubectl installiert sein. Auf Ubuntu ist die Installation sehr einfach:

$ sudo snap install kubectl --classic

Nun kann man Kubectl über die Rancher-CLI aufrufen. Für weitere Befehle übernimmt Kubectl die Verbindung und Authentifizierung am Rancher aus den Einstellungen, die wir im Abschnitt "Login" vorgenommen haben.

Anzeige aller Pods:

$ rancher kubectl get pods
NAME                        READY     STATUS    RESTARTS   AGE
test-5cf546rr9f-9xj9k   1/1       Running   0          3d

Ein neues Deployment starten:

$ rancher kubectl run nginx --image nginx
deployment.apps/nginx created

Pods nochmal anzeigen:

$ rancher kubectl get pods
test-5cf546rr9f-9xj9k   1/1       Running   0          3d
nginx-65899c769f-xsrkn      1/1       Running   0          2m

Fazit

Mit der Rancher-CLI kann man Basis-Einstellungen im Rancher verwalten. Für die meisten Aufgaben muss man aber auf Kubectl zurückgreifen.

Quellen:
https://rancher.com/docs/rancher/v2.x/en/concepts/cli-configuration/
https://rancher.com/docs/rancher/v2.x/en/tasks/user-settings/api-keys/