Was ist Versionsverwaltung?

Abgeschlossen

Bei Softwareversionen treten häufig Fehler, Bugs oder Sicherheitslücken auf, die es erforderlich machen, dass die Entwicklungsteams Updates und Fixes vornehmen. Während die Software weiterentwickelt wird, werden neue Features und Funktionen hinzugefügt. Diese Updates und Fixes werden als neue Versionen der Software veröffentlicht. Die Versionsverwaltung ist ein kontrollierter Prozess, der das Nachverfolgen und Verwalten von Softwareversionsversionen umfasst. Softwareversionen werden in der Regel für einen bestimmten Zeitraum unterstützt, so dass die Benutzer Zeit haben, ihre Software auf die neueste Version zu aktualisieren.

Diagram that shows how software evolves over time from its initial release as new bug fixes and features are made through software versioning.

Was ist die semantische Versionsverwaltung?

Die semantische Versionsverwaltung ist ein Versionsverwaltungsschema, das aus den folgenden Versionskomponenten besteht:

  • Hauptversionen werden veröffentlicht, wenn Software von Version 1.0.0 zu 2.0.0 weiterentwickelt wird. Diese Versionen enthalten in der Regel Breaking Changes, die mit früheren Versionen nicht abwärtskompatibel sind.
  • Nebenversionen werden veröffentlicht, wenn Software von 1.0.0 zu 1.1.0 weiterentwickelt wird. Diese Versionen enthalten in der Regel neue Features und Funktionen.
  • Patchversionen werden veröffentlicht, wenn Software von Version 1.0.0 zu 1.0.1 weiterentwickelt wird. Diese Versionen enthalten in der Regel Fehlerkorrekturen und Sicherheitsupdates.

Kubernetes-Versionsverwaltung

Kubernetes verwendet die semantische Versionierung. Neue Kubernetes-Versionsveröffentlichungen gelten nur für Komponenten der Kubernetes-Runtime innerhalb des Clusters. Die Kubernetes-Runtime besteht aus den folgenden Komponenten:

  • kube-apiserver
  • kubelet
  • kube-controller-manager
  • kube-scheduler
  • kube-proxy

Kubernetes-Runtimekomponenten umfassen keine Knotenupgrades wie Betriebssystemupdates oder Imageupgrades für Knoten, die im Kubernetes-Cluster ausgeführt werden. Dies bedeutet, dass Sie separate Upgrades und Patches auf die Kubernetes-Clusterkomponenten und die zugrunde liegenden Computeknoten anwenden müssen, die den Cluster unterstützen.

1.

Die Kubernetes-Community hat einige Fehler in der aktuellen Version gefunden. Was muss getan werden, nachdem Kubernetes diese Fehlerkorrekturen vorgenommen hat?

2.

Kubernetes hat soeben eine neue Version, v1.20.0, angekündigt. Die letzte bekannte Version von Kubernetes war v1.19.10. Auf welche Art von Änderungen weist die Bezeichnung „v1.20.0“ nach Ihrer Kenntnis der semantischen Versionsverwaltung hin?

3.

Was wurde aktualisiert, wenn Kubernetes eine neue Version veröffentlicht?