Tutorials  /  Container & Cloud

Linkerd auf Kubernetes installieren und konfigurieren

Ccentron Redaktion · November 2025 ·6 Min. Lesezeit ·Container & Cloud, Tutorial

Linkerd ist ein leichtgewichtiges, quelloffenes Service Mesh für Kubernetes, das Funktionen wie Beobachtbarkeit, Sicherheit und effizientes Traffic-Management bietet. Es nutzt ein Sidecar-Proxy-Modell, bei dem kleine Proxys die Kommunikation zwischen den Pods übernehmen, während eine zentrale Steuerungsebene (Control Plane) die Konfiguration und das Routing verwaltet.

Diese Schritt-für-Schritt-Anleitung zeigt, wie du Linkerd auf einem Kubernetes Cluster installierst. Außerdem wird erklärt, wie du eine Beispielanwendung bereitstellst, Ingress für externen Zugriff einrichtest und Funktionen für das Traffic-Management aktivierst.

Voraussetzungen

Bevor du beginnst, stelle sicher, dass du folgende Anforderungen erfüllst:

  • Einen aktiven Kubernetes Cluster.
  • Eine Domain mit einem A-Record, der auf die Load-Balancer-IP deines Clusters zeigt (z. B. linkerd.example.com).
  • Zugriff auf einen Ubuntu-basierten Server oder eine lokale Workstation zur Verwaltung deines Clusters und zur Verwendung der Linkerd-CLI.
  • Kubectl installiert und so konfiguriert, dass es mit deinem Kubernetes-Cluster kommuniziert.
  • Helm auf deiner Workstation installiert.
K8

Passende Infrastruktur bei centron

Vom Container zum Cluster: Managed Kubernetes mit cStack gibt es ab 29,99 € im Monat – Control Plane, AutoScaler und Traffic inklusive. Managed Kubernetes ansehen →

Linkerd-CLI installieren

Installiere die Linkerd-Kommandozeilenschnittstelle (CLI) auf deiner Workstation, um dein Service Mesh zu verwalten.

Systempakete aktualisieren

Konsole
$ sudo apt update

Linkerd-CLI herunterladen und installieren

Konsole
$ curl --proto '=https' --tlsv1.2 -sSfL https://run.linkerd.io/install-edge | sh

Linkerd zum PATH hinzufügen

Konsole
$ export PATH=$PATH:$HOME/.linkerd2/bin

PATH-Änderung dauerhaft speichern

Konsole
$ echo 'export PATH=$PATH:$HOME/.linkerd2/bin' >> ~/.bashrc
$ source ~/.bashrc

CLI-Installation überprüfen

Konsole
$ linkerd version --client

Beispielausgabe:

Client version: edge-25.10.3

Die Serverversion ist derzeit nicht verfügbar, da die Control Plane noch nicht installiert wurde.

Kubernetes-Cluster validieren

Überprüfe vor der Installation, ob dein Kubernetes-Cluster die Anforderungen von Linkerd erfüllt.

Vorab-Überprüfung durchführen

Konsole
$ linkerd check --pre

Alle Tests sollten mit der Meldung Status check results are √ abgeschlossen werden. Behebe eventuelle Fehler, bevor du fortfährst.

Linkerd-Control-Plane installieren

Installiere die Kernkomponenten von Linkerd, die den Service-Mesh-Traffic und die Sicherheit im Cluster verwalten.

Gateway API CRDs installieren

Konsole
$ kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.3.0/standard-install.yaml

Linkerd-CRDs installieren

Konsole
$ linkerd install --crds | kubectl apply -f -

Control Plane installieren

Konsole
$ linkerd install | kubectl apply -f -

Installation überprüfen

Konsole
$ linkerd check

Control-Plane-Pods prüfen

Konsole
$ kubectl get pods -n linkerd

Beispielausgabe:

NAME                                     READY   STATUS    RESTARTS   AGE
linkerd-destination-7b4657cfd8-btqdv     4/4     Running   0          4m40s
linkerd-identity-5584896d84-6pmdm        2/2     Running   0          4m40s
linkerd-proxy-injector-995fcbf47-dv6qr   2/2     Running   0          4m40s

Linkerd-Viz-Erweiterung installieren

Die Viz-Erweiterung fügt Beobachtungsfunktionen hinzu und stellt ein webbasiertes Dashboard zur Überwachung deiner Linkerd-Umgebung bereit.

Viz-Erweiterung installieren

Konsole
$ linkerd viz install | kubectl apply -f -

Viz-Installation überprüfen

Konsole
$ linkerd viz check

Linkerd-Dashboard bereitstellen

Du kannst das Linkerd-Dashboard sicher über Kubernetes Ingress mit TLS-Verschlüsselung bereitstellen, um einen geschützten Zugriff über den Browser zu ermöglichen.

Nginx Ingress Controller installieren

Installiere den Nginx Ingress Controller, um eingehenden Datenverkehr zu verarbeiten.

Nginx Ingress Helm-Repository hinzufügen

Konsole
$ helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx

Helm aktualisieren

Konsole
$ helm repo update

Nginx Ingress Controller installieren

Konsole
$ helm install ingress-nginx ingress-nginx/ingress-nginx \
    --create-namespace --namespace ingress-nginx

Warten, bis der LoadBalancer eine externe IP erhält

Konsole
$ kubectl get service -n ingress-nginx ingress-nginx-controller

Beispielausgabe:

NAME                       TYPE           CLUSTER-IP      EXTERNAL-IP       PORT(S)                      AGE
ingress-nginx-controller   LoadBalancer   10.99.177.190   192.0.20.11       80:31460/TCP,443:32364/TCP   3m51s

Notiere den Wert der EXTERNAL-IP. Weise den A-Record deiner Domain dieser IP zu, um den externen Zugriff zu aktivieren.

Nginx Ingress Controller-Pods überprüfen

Konsole
$ kubectl get pods -n ingress-nginx

Auf das Dashboard zugreifen

Greife über deinen Browser auf das gesicherte Linkerd-Dashboard zu, indem du die konfigurierte Domain aufrufst.

https://linkerd.example.com

Melde dich mit dem zuvor erstellten Benutzernamen und Passwort an. Erkunde das Dashboard, um Cluster-Metriken, die Service-Mesh-Topologie und den Datenverkehrsfluss zu überwachen.

Bereitstellung einer Beispielanwendung

Stelle die Emojivoto-Anwendung bereit, um die Funktionen von Linkerd zu testen und die Integration in das Service Mesh zu überprüfen.

Emojivoto-Anwendung bereitstellen

Konsole
$ curl -sL https://run.linkerd.io/emojivoto.yml | kubectl apply -f -

Bereitstellung überprüfen

Konsole
$ kubectl get pods -n emojivoto

Anwendung in das Mesh integrieren

Konsole
$ kubectl get -n emojivoto deploy -o yaml | linkerd inject - | kubectl apply -f -

Meshed-Anwendung anzeigen

Konsole
$ linkerd viz -n emojivoto stat deploy

Traffic-Splitting konfigurieren

Implementiere Canary-Deployments, indem du eine HTTPRoute verwendest, um den Datenverkehr zwischen verschiedenen Anwendungsversionen aufzuteilen.

Zweite Version der Web-Bereitstellung erstellen

Konsole
$ kubectl get deploy web -n emojivoto -o yaml | \
    sed 's/name: web/name: web-v2/' | \
    kubectl apply -f -

Service für die neue Version erstellen

Konsole
$ cat <
$ cat <

Neue Bereitstellung zum Mesh hinzufügen

Konsole
$ kubectl get deploy web-v2 -n emojivoto -o yaml | \
    linkerd inject - | \
    kubectl apply -f -

Manifest für Traffic-Splitting erstellen

Konsole
$ nano traffic-split.yaml

Füge die folgende Konfiguration ein:

YAML
apiVersion: policy.linkerd.io/v1beta2
kind: HTTPRoute
metadata:
  name: web-route
  namespace: emojivoto
spec:
  parentRefs:
    - name: web-svc
      kind: Service
      group: core
      port: 80
  rules:
    - backendRefs:
        - name: web-svc
          port: 80
          weight: 80
        - name: web-v2
          port: 80
          weight: 20

Manifest anwenden

Konsole
$ kubectl apply -f traffic-split.yaml

Datenverkehrsverteilung überprüfen

Konsole
$ linkerd viz -n emojivoto stat --from deploy/vote-bot deploy

Fazit

Du hast erfolgreich Linkerd auf einem Kubernetes Cluster installiert, das Dashboard sicher über Nginx Ingress mit TLS-Verschlüsselung und Authentifizierung bereitgestellt und eine Beispielanwendung mit Traffic-Splitting implementiert. Weitere Informationen zu erweiterten Funktionen findest du in der offiziellen Linkerd-Dokumentation.

Jetzt 200 € Guthaben sichern

Testen Sie Ihr Setup auf ccloud³

Registrieren Sie sich in der ccloud³ und erhalten Sie 200 € Startguthaben für Ihr Projekt – z. B. für eine PostgreSQL-VM mit automatischen Backups.

centron Redaktion Technische Redaktion

Das Redaktionsteam von centron schreibt Anleitungen aus dem Betriebsalltag: getestet auf unserer eigenen Plattform, betrieben im Rechenzentrum in Hallstadt bei Bamberg.

Kategorie Container & Cloud
Teilen
Noch offene Fragen?

Unser Team hilft Ihnen bei Ihrem konkreten Setup weiter – von Menschen, die die Plattform selbst betreiben.

War dieses Tutorial hilfreich?

Ihre Antwort wird anonym gespeichert und hilft uns, die Tutorials zu verbessern.

Kommentare

Noch keine Kommentare – stellen Sie die erste Frage zu diesem Tutorial.

Zum Kommentieren anmelden

Kommentare stehen centron-Kunden offen. Melden Sie sich in Ihrem Konto an, um eine Frage zu diesem Tutorial zu stellen.

Weiterlesen

Das könnte Sie auch interessieren

Jetzt kostenlos anfangen

Melden Sie sich an und erhalten Sie in den ersten 60 Tagen ein Guthaben von 200 € bei centron.

Dieses Werbeangebot gilt nur für neue Konten. Angebot ausschließlich für Gewerbetreibende.

Jetzt loslegen Sales kontaktieren