PSKE - Shoot Spec
3 Minuten Lesezeit
Warnung
Fehlkonfigurationen im ShootSpec können Fehler verursachen oder den Cluster sogar funktionsunfähig machen. Einige Konfigurationsoptionen können nur bei der Erstellung eines Clusters bearbeitet werden.Einführung
Die ShootSpec ist eine YAML-Datei, die die Konfiguration eines Kubernetes-Clusters in SAP Gardener beschreibt. Sie enthält Informationen wie die Cloud-Plattform, die Ressourcenzuweisung und die Sicherheitseinstellungen des Clusters.
Verwendung
Sie können die ShootSpec eines Clusters in der SAP Gardener Web-Konsole oder über die SAP Gardener CLI bearbeiten. Die ShootSpec wird in der Sektion spec
der Ressourcendefinition des Clusters gespeichert.
Sie können auf die Web-Konsole zugreifen, indem Sie auf die Detailseite des Clusters navigieren und auf die Schaltfläche “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.26.7
enableStaticTokenKubeconfig: true
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
zones:
- az1
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
Der ShootSpec wird von SAP Gardener zum Erstellen und Verwalten eines Kubernetes-Clusters verwendet. Um eine ShootSpec zu erstellen, können Sie die SAP Gardener CLI oder die SAP Gardener Webkonsole verwenden.
Dokumentation
Die vollständige Dokumentation für ShootSpec finden Sie in der SAP Gardener Dokumentation.