PSKE - Shoot Spec

Einführung

Die ShootSpec ist eine YAML-Datei, die die Konfiguration eines Kubernetes-Clusters in Gardener beschreibt. Sie enthält Informationen wie die Cloud-Plattform, die Ressourcenzuweisung und die Sicherheitseinstellungen des Clusters.

Verwendung

Die ShootSpec eines Clusters lässt sich in der Gardener Web-Konsole oder über die Gardener CLI bearbeiten. Sie wird in der Sektion spec der Ressourcendefinition des Clusters gespeichert.

Die Web-Konsole ist über die Detailseite des Clusters erreichbar — dort auf “Edit” in der oberen rechten Ecke klicken. Die ShootSpec wird auf der Registerkarte “YAML” angezeigt.

Aufbau

Der ShootSpec besteht aus den folgenden Abschnitten:

  • Shoot: Der Hauptabschnitt enthält allgemeine Informationen über den Cluster, wie den Namen, die Region und die Cloud-Plattform.
  • Infrastruktur: Der Abschnitt “Infrastruktur” beschreibt die Infrastruktur des Clusters, z. B. die Art der Rechen-, Speicher- und Netzwerkressourcen.
  • Steuerebene: Der Abschnitt “controlplane” beschreibt die Steuerungsebene des Clusters.
  • Geheimnisse: Der Abschnitt “secrets” enthält geheime Daten, wie z. B. die Anmeldedaten für die Cloud-Plattform.

Beispiel

Das folgende Beispiel zeigt eine Standard-ShootSpec für einen Kubernetes-Cluster in der PSKE:

kind: Shoot
apiVersion: core.gardener.cloud/v1beta1
metadata:
  name: demo-cluster
  namespace: garden-demo-4c6e3
spec:
  addons:
    kubernetesDashboard:
      enabled: false
      authenticationMode: token
    nginxIngress:
      enabled: false
      externalTrafficPolicy: Cluster
  cloudProfileName: pluscloudopen
  dns:
    domain: demo-cluster.demo.projects.prod.gardener.get-cloud.io
  hibernation:
    enabled: true
    schedules:
      - start: 00 16 * * 6,0
        end: 00 07 * * 6,0
        location: Europe/Berlin
  kubernetes:
    kubeAPIServer:
      requests:
        maxNonMutatingInflight: 400
        maxMutatingInflight: 200
      enableAnonymousAuthentication: false
      eventTTL: 1h0m0s
      logging:
        verbosity: 2
      defaultNotReadyTolerationSeconds: 300
      defaultUnreachableTolerationSeconds: 300
    kubeControllerManager:
      nodeCIDRMaskSize: 24
      nodeMonitorGracePeriod: 2m0s
    kubeScheduler:
      profile: balanced
    kubeProxy:
      mode: IPTables
      enabled: true
    kubelet:
      failSwapOn: true
      kubeReserved:
        cpu: 80m
        memory: 1Gi
        pid: 20k
      imageGCHighThresholdPercent: 50
      imageGCLowThresholdPercent: 40
      serializeImagePulls: true
    version: 1.32.0
  networking:
    type: cilium
    pods: 10.96.0.0/12
    nodes: 10.250.0.0/16
    services: 10.112.0.0/12
    ipFamilies:
      - IPv4
  maintenance:
    autoUpdate:
      kubernetesVersion: true
      machineImageVersion: true
    timeWindow:
      begin: 000000+0200
      end: 010000+0200
  provider:
    type: openstack
    controlPlaneConfig:
      apiVersion: openstack.provider.extensions.gardener.cloud/v1alpha1
      kind: ControlPlaneConfig
      loadBalancerProvider: amphora
    infrastructureConfig:
      apiVersion: openstack.provider.extensions.gardener.cloud/v1alpha1
      kind: InfrastructureConfig
      networks:
        workers: 10.250.0.0/16
      floatingPoolName: ext01
    workers:
      - cri:
          name: containerd
        name: worker-demo
        machine:
          type: SCS-2V:4:100
          image:
            name: ubuntu
            version: 22.4.2
          architecture: amd64
        maximum: 4
        minimum: 2
        maxSurge: 1
        maxUnavailable: 0
        volume:
          size: 50Gi
        systemComponents:
          allow: true
    workersSettings:
      sshAccess:
        enabled: true
  purpose: production
  region: prod1
  secretBindingName: demo-1
  seedName: c301
  systemComponents:
    coreDNS:
      autoscaling:
        mode: horizontal
  controlPlane:
    highAvailability:
      failureTolerance:
        type: node

Anwendung

Die ShootSpec wird von Gardener zum Erstellen und Verwalten von Kubernetes-Clustern verwendet. Dafür stehen die Gardener CLI und die Gardener Webkonsole zur Verfügung.

Dokumentation

Die vollständige Dokumentation für ShootSpec finden Sie in der Gardener Dokumentation.

Zuletzt geändert 29.04.2026: Correntcions (d9f3dab6)