API Server

Der Kubernetes API Server kann im Shoot-Manifest unter spec.kubernetes.kubeAPIServer angepasst werden. Die meisten Standardwerte sind für typische Cluster ausreichend — Anpassungen sind vor allem bei hoher Last oder speziellen Sicherheitsanforderungen relevant.

Konfiguration

spec:
  kubernetes:
    kubeAPIServer:
      requests:
        maxNonMutatingInflight: 400
        maxMutatingInflight: 200
      eventTTL: 1h0m0s
      logging:
        verbosity: 2
      defaultNotReadyTolerationSeconds: 300
      defaultUnreachableTolerationSeconds: 300
      enableAnonymousAuthentication: false

Felder

Rate Limiting

FeldStandardBeschreibung
requests.maxNonMutatingInflight400Maximale gleichzeitige lesende Anfragen (GET, LIST, WATCH)
requests.maxMutatingInflight200Maximale gleichzeitige schreibende Anfragen (POST, PUT, DELETE, PATCH)

Bei Clustern mit vielen parallelen CI/CD-Pipelines oder Operatoren kann es sinnvoll sein, diese Werte zu erhöhen. Zu hohe Werte können den API Server unter Speicherdruck setzen.

Events

FeldStandardBeschreibung
eventTTL1h0m0sAufbewahrungszeit für Kubernetes-Events. Längere Werte erhöhen den etcd-Speicherbedarf.

Node Tolerations

FeldStandardBeschreibung
defaultNotReadyTolerationSeconds300Zeit, die Pods auf einem NotReady-Node verbleiben, bevor sie evicted werden
defaultUnreachableTolerationSeconds300Zeit, die Pods auf einem Unreachable-Node verbleiben, bevor sie evicted werden

Diese Werte werden als Default-Tolerations automatisch jedem Pod hinzugefügt, sofern dieser keine eigenen Tolerations für node.kubernetes.io/not-ready bzw. node.kubernetes.io/unreachable definiert.

Logging

FeldStandardBeschreibung
logging.verbosity2Log-Verbosity des API Servers (0–10). Werte über 4 erzeugen sehr große Log-Mengen.

Anonyme Authentifizierung

FeldStandardBeschreibung
enableAnonymousAuthenticationfalseErlaubt unauthentifizierte Anfragen an den API Server. Sollte in Produktionsumgebungen deaktiviert bleiben.

Audit Logging

Audit Logging wird über die Auditing Extension konfiguriert.