diff --git a/documentation/Installation.md b/documentation/Installation.md index 15a8fd818..6e2202e91 100644 --- a/documentation/Installation.md +++ b/documentation/Installation.md @@ -6597,9 +6597,9 @@ The tables below shows the correspondence of versions that are supported and is | | registry.k8s.io/kube-controller-manager | v1.27.13 | v1.27.13 | v1.27.13 | v1.27.13 | v1.27.13 | v1.27.13 | v1.27.13 | | | | registry.k8s.io/kube-proxy | v1.27.13 | v1.27.13 | v1.27.13 | v1.27.13 | v1.27.13 | v1.27.13 | v1.27.13 | | | | registry.k8s.io/kube-scheduler | v1.27.13 | v1.27.13 | v1.27.13 | v1.27.13 | v1.27.13 | v1.27.13 | v1.27.13 | | -| | registry.k8s.io/coredns | v1.11.1 | v1.11.1 | v1.11.1 | v1.11.1 | v1.11.1 | v1.11.1 | v1.11.1 | | +| | registry.k8s.io/coredns | v1.10.1 | v1.10.1 | v1.10.1 | v1.10.1 | v1.10.1 | v1.10.1 | v1.10.1 | | | | registry.k8s.io/pause | 3.9 | 3.9 | 3.9 | 3.9 | 3.9 | 3.9 | 3.9 | | -| | registry.k8s.io/etcd | 3.5.10-0 | 3.5.10-0 | 3.5.10-0 | 3.5.10-0 | 3.5.10-0 | 3.5.10-0 | 3.5.10-0 | | +| | registry.k8s.io/etcd | 3.5.12-0 | 3.5.12-0 | 3.5.12-0 | 3.5.12-0 | 3.5.12-0 | 3.5.12-0 | 3.5.12-0 | | | | calico/typha | v3.26.4 | v3.26.4 | v3.26.4 | v3.26.4 | v3.26.4 | v3.26.4 | v3.26.4 | Required only if Typha is enabled in Calico config. | | | calico/cni | v3.26.4 | v3.26.4 | v3.26.4 | v3.26.4 | v3.26.4 | v3.26.4 | v3.26.4 | | | | calico/node | v3.26.4 | v3.26.4 | v3.26.4 | v3.26.4 | v3.26.4 | v3.26.4 | v3.26.4 | | @@ -6629,16 +6629,16 @@ The tables below shows the correspondence of versions that are supported and is | | registry.k8s.io/kube-controller-manager | v1.28.9 | v1.28.9 | v1.28.9 | v1.28.9 | v1.28.9 | v1.28.9 | v1.28.9 | | | | registry.k8s.io/kube-proxy | v1.28.9 | v1.28.9 | v1.28.9 | v1.28.9 | v1.28.9 | v1.28.9 | v1.28.9 | | | | registry.k8s.io/kube-scheduler | v1.28.9 | v1.28.9 | v1.28.9 | v1.28.9 | v1.28.9 | v1.28.9 | v1.28.9 | | -| | registry.k8s.io/coredns | v1.11.1 | v1.11.1 | v1.11.1 | v1.11.1 | v1.11.1 | v1.11.1 | v1.11.1 | | +| | registry.k8s.io/coredns | v1.10.1 | v1.10.1 | v1.10.1 | v1.10.1 | v1.10.1 | v1.10.1 | v1.10.1 | | | | registry.k8s.io/pause | 3.9 | 3.9 | 3.9 | 3.9 | 3.9 | 3.9 | 3.9 | | -| | registry.k8s.io/etcd | 3.5.10-0 | 3.5.10-0 | 3.5.10-0 | 3.5.10-0 | 3.5.10-0 | 3.5.10-0 | 3.5.10-0 | | +| | registry.k8s.io/etcd | 3.5.12-0 | 3.5.12-0 | 3.5.12-0 | 3.5.12-0 | 3.5.12-0 | 3.5.12-0 | 3.5.12-0 | | | | calico/typha | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | Required only if Typha is enabled in Calico config. | | | calico/cni | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | | | | calico/node | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | | | | calico/kube-controllers | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | | | | calico/apiserver | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | Required only if API server is enabled in Calico config. | | | registry.k8s.io/ingress-nginx/controller | v1.10.1 | v1.10.1 | v1.10.1 | v1.10.1 | v1.10.1 | v1.10.1 | v1.10.1 | | -| | registry.k8s.io/kube-webhook-certgen | v20231226-1a7112e06 | v20231226-1a7112e06 | v20231226-1a7112e06 | v20231226-1a7112e06 | v20231226-1a7112e06 | v20231226-1a7112e06 | v20231226-1a7112e06 | | +| | registry.k8s.io/kube-webhook-certgen | v1.4.1 | v1.4.1 | v1.4.1 | v1.4.1 | v1.4.1 | v1.4.1 | v1.4.1 | | | | kubernetesui/dashboard | v2.7.0 | v2.7.0 | v2.7.0 | v2.7.0 | v2.7.0 | v2.7.0 | v2.7.0 | Required only if Kubernetes Dashboard plugin is set to be installed. | | | kubernetesui/metrics-scraper | v1.0.8 | v1.0.8 | v1.0.8 | v1.0.8 | v1.0.8 | v1.0.8 | v1.0.8 | Required only if Kubernetes Dashboard plugin is set to be installed. | | | rancher/local-path-provisioner | v0.0.26 | v0.0.26 | v0.0.26 | v0.0.26 | v0.0.26 | v0.0.26 | v0.0.26 | Required only if local-path provisioner plugin is set to be installed. | @@ -6662,14 +6662,41 @@ The tables below shows the correspondence of versions that are supported and is | | registry.k8s.io/kube-scheduler | v1.29.4 | v1.29.4 | v1.29.4 | v1.29.4 | v1.29.4 | v1.29.4 | v1.29.4 | | | | registry.k8s.io/coredns | v1.11.1 | v1.11.1 | v1.11.1 | v1.11.1 | v1.11.1 | v1.11.1 | v1.11.1 | | | | registry.k8s.io/pause | 3.9 | 3.9 | 3.9 | 3.9 | 3.9 | 3.9 | 3.9 | | -| | registry.k8s.io/etcd | 3.5.10-0 | 3.5.10-0 | 3.5.10-0 | 3.5.10-0 | 3.5.10-0 | 3.5.10-0 | 3.5.10-0 | | +| | registry.k8s.io/etcd | 3.5.12-0 | 3.5.12-0 | 3.5.12-0 | 3.5.12-0 | 3.5.12-0 | 3.5.12-0 | 3.5.12-0 | | | | calico/typha | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | Required only if Typha is enabled in Calico config. | | | calico/cni | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | | | | calico/node | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | | | | calico/kube-controllers | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | | | | calico/apiserver | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | Required only if API server is enabled in Calico config. | | | registry.k8s.io/ingress-nginx/controller | v1.10.1 | v1.10.1 | v1.10.1 | v1.10.1 | v1.10.1 | v1.10.1 | v1.10.1 | | -| | registry.k8s.io/kube-webhook-certgen | v20231226-1a7112e06 | v20231226-1a7112e06 | v20231226-1a7112e06 | v20231226-1a7112e06 | v20231226-1a7112e06 | v20231226-1a7112e06 | v20231226-1a7112e06 | | +| | registry.k8s.io/kube-webhook-certgen | v1.4.1 | v1.4.1 | v1.4.1 | v1.4.1 | v1.4.1 | v1.4.1 | v1.4.1 | | | | kubernetesui/dashboard | v2.7.0 | v2.7.0 | v2.7.0 | v2.7.0 | v2.7.0 | v2.7.0 | v2.7.0 | Required only if Kubernetes Dashboard plugin is set to be installed. | | | kubernetesui/metrics-scraper | v1.0.8 | v1.0.8 | v1.0.8 | v1.0.8 | v1.0.8 | v1.0.8 | v1.0.8 | Required only if Kubernetes Dashboard plugin is set to be installed. | | | rancher/local-path-provisioner | v0.0.26 | v0.0.26 | v0.0.26 | v0.0.26 | v0.0.26 | v0.0.26 | v0.0.26 | Required only if local-path provisioner plugin is set to be installed. | + +## Default Dependent Components Versions for Kubernetes Versions v1.30.1 +| Type | Name | Versions | | | | | | | Note | +|----------|----------------------------------------------------------------|---------------------|------------------------------|---------------------|---------------------|---------------------|---------------------|---------------------|------------------------------------------------------------------------------------------------------------| +| | | CentOS RHEL 7.5+ | CentOS RHEL Oracle Linux 8.4 | Ubuntu 20.04 | Ubuntu 22.04 | Oracle Linux 7.5+ | RHEL 8.6+ | RockyLinux 8.6+ | | +| binaries | kubeadm | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | SHA1: 85385f4b78b79bd1cd4d1ad5244422d372d5f758 | +| | kubelet | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | SHA1: c62da6ab918b8e56d7c9b77e642ffc73ffdbffac | +| | kubectl | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | SHA1: bced94239f1dbdb04d3a661a067bf9587865b6e8 | +| | calicoctl | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | SHA1: 24468ab467fd59727d278dfdc3a5c6eec51cdff1 Required only if calico is installed. | +| | crictl | v1.30.0 | v1.30.0 | v1.30.0 | v1.30.0 | v1.30.0 | v1.30.0 | v1.30.0 | SHA1: c81e76d5d4bf64d6b513485490722d2fc0a9a83b Required only if containerd is used as a container runtime. | +| images | registry.k8s.io/kube-apiserver | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | | +| | registry.k8s.io/kube-controller-manager | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | | +| | registry.k8s.io/kube-proxy | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | | +| | registry.k8s.io/kube-scheduler | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | v1.30.1 | | +| | registry.k8s.io/coredns | v1.11.1 | v1.11.1 | v1.11.1 | v1.11.1 | v1.11.1 | v1.11.1 | v1.11.1 | | +| | registry.k8s.io/pause | 3.9 | 3.9 | 3.9 | 3.9 | 3.9 | 3.9 | 3.9 | | +| | registry.k8s.io/etcd | 3.5.12-0 | 3.5.12-0 | 3.5.12-0 | 3.5.12-0 | 3.5.12-0 | 3.5.12-0 | 3.5.12-0 | | +| | calico/typha | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | Required only if Typha is enabled in Calico config. | +| | calico/cni | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | | +| | calico/node | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | | +| | calico/kube-controllers | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | | +| | calico/apiserver | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | v3.27.3 | Required only if API server is enabled in Calico config. | +| | registry.k8s.io/ingress-nginx/controller | v1.10.1 | v1.10.1 | v1.10.1 | v1.10.1 | v1.10.1 | v1.10.1 | v1.10.1 | | +| | registry.k8s.io/kube-webhook-certgen | v1.4.1 | v1.4.1 | v1.4.1 | v1.4.1 | v1.4.1 | v1.4.1 | v1.4.1 | | +| | kubernetesui/dashboard | v2.7.0 | v2.7.0 | v2.7.0 | v2.7.0 | v2.7.0 | v2.7.0 | v2.7.0 | Required only if Kubernetes Dashboard plugin is set to be installed. | +| | kubernetesui/metrics-scraper | v1.0.8 | v1.0.8 | v1.0.8 | v1.0.8 | v1.0.8 | v1.0.8 | v1.0.8 | Required only if Kubernetes Dashboard plugin is set to be installed. | +| | rancher/local-path-provisioner | v0.0.26 | v0.0.26 | v0.0.26 | v0.0.26 | v0.0.26 | v0.0.26 | v0.0.26 | Required only if local-path provisioner plugin is set to be installed. | diff --git a/kubemarine/procedures/backup.py b/kubemarine/procedures/backup.py index f57a79421..54711a42c 100755 --- a/kubemarine/procedures/backup.py +++ b/kubemarine/procedures/backup.py @@ -409,7 +409,18 @@ def _handle(self, payload: ParserPayload) -> None: items_by_resource: Dict[str, List[str]] = {} def append_item(api_version: str, kind: str, item: str) -> None: - resource_name = next(r['name'] for r in resources if r['apiVersion'] == api_version and r['kind'] == kind) + resource_name = next(( + r['name'] for r in resources + if r['apiVersion'] == api_version + and (r['kind'] == kind + # TODO remove this W/A for future releases having https://github.com/kubernetes/kubectl/issues/1593 resolved + or kind in ('ValidatingAdmissionPolicyList', 'ValidatingAdmissionPolicyBindingList') + and r['kind'] == kind[:-len('List')]) + ), None) + + if resource_name is None: + raise Exception(f"Failed to find resource name for apiVersion: {api_version}, kind: {kind}") + items_by_resource.setdefault(resource_name, []).append(item) with gzip.open(payload.resource_path, 'rt', encoding='utf-8') as file: diff --git a/kubemarine/resources/configurations/compatibility/internal/kubernetes_images.yaml b/kubemarine/resources/configurations/compatibility/internal/kubernetes_images.yaml index f11cbf80f..0f8afae5b 100644 --- a/kubemarine/resources/configurations/compatibility/internal/kubernetes_images.yaml +++ b/kubemarine/resources/configurations/compatibility/internal/kubernetes_images.yaml @@ -49,6 +49,8 @@ kube-apiserver: version: v1.29.1 v1.29.4: version: v1.29.4 + v1.30.1: + version: v1.30.1 kube-controller-manager: v1.23.1: version: v1.23.1 @@ -98,6 +100,8 @@ kube-controller-manager: version: v1.29.1 v1.29.4: version: v1.29.4 + v1.30.1: + version: v1.30.1 kube-scheduler: v1.23.1: version: v1.23.1 @@ -147,6 +151,8 @@ kube-scheduler: version: v1.29.1 v1.29.4: version: v1.29.4 + v1.30.1: + version: v1.30.1 kube-proxy: v1.23.1: version: v1.23.1 @@ -196,6 +202,8 @@ kube-proxy: version: v1.29.1 v1.29.4: version: v1.29.4 + v1.30.1: + version: v1.30.1 pause: v1.23.1: version: '3.6' @@ -245,6 +253,8 @@ pause: version: '3.9' v1.29.4: version: '3.9' + v1.30.1: + version: '3.9' etcd: v1.23.1: version: 3.5.1-0 @@ -294,6 +304,8 @@ etcd: version: 3.5.10-0 v1.29.4: version: 3.5.12-0 + v1.30.1: + version: 3.5.12-0 coredns/coredns: v1.23.1: version: v1.8.6 @@ -343,3 +355,5 @@ coredns/coredns: version: v1.11.1 v1.29.4: version: v1.11.1 + v1.30.1: + version: v1.11.1 diff --git a/kubemarine/resources/configurations/compatibility/internal/packages.yaml b/kubemarine/resources/configurations/compatibility/internal/packages.yaml index 30ed2dbdc..e104b2670 100644 --- a/kubemarine/resources/configurations/compatibility/internal/packages.yaml +++ b/kubemarine/resources/configurations/compatibility/internal/packages.yaml @@ -125,6 +125,11 @@ docker: version_rhel8: 19.03* version_rhel9: 20.10* version_debian: 5:20.10.* + v1.30.1: + version_rhel: 19.03* + version_rhel8: 19.03* + version_rhel9: 20.10* + version_debian: 5:20.10.* containerd: v1.23.1: version_debian: 1.5.* @@ -174,6 +179,8 @@ containerd: version_debian: 1.6.* v1.29.4: version_debian: 1.6.* + v1.30.1: + version_debian: 1.6.* containerdio: v1.23.1: version_rhel: 1.6* @@ -295,6 +302,11 @@ containerdio: version_rhel8: 1.6* version_rhel9: 1.6* version_debian: 1.6.* + v1.30.1: + version_rhel: 1.6* + version_rhel8: 1.6* + version_rhel9: 1.6* + version_debian: 1.6.* haproxy: version_rhel: 1.8* version_rhel8: 1.8* diff --git a/kubemarine/resources/configurations/compatibility/internal/plugins.yaml b/kubemarine/resources/configurations/compatibility/internal/plugins.yaml index 0415bd385..72c325849 100644 --- a/kubemarine/resources/configurations/compatibility/internal/plugins.yaml +++ b/kubemarine/resources/configurations/compatibility/internal/plugins.yaml @@ -53,6 +53,8 @@ calico: version: v3.27.0 v1.29.4: version: v3.27.3 + v1.30.1: + version: v3.27.3 nginx-ingress-controller: v1.23.1: version: v1.2.0 @@ -126,6 +128,9 @@ nginx-ingress-controller: v1.29.4: version: v1.10.1 webhook-version: v1.4.1 + v1.30.1: + version: v1.10.1 + webhook-version: v1.4.1 kubernetes-dashboard: v1.23.1: version: v2.5.1 @@ -199,6 +204,9 @@ kubernetes-dashboard: v1.29.4: version: v2.7.0 metrics-scraper-version: v1.0.8 + v1.30.1: + version: v2.7.0 + metrics-scraper-version: v1.0.8 local-path-provisioner: v1.23.1: version: v0.0.22 @@ -272,3 +280,6 @@ local-path-provisioner: v1.29.4: version: v0.0.26 busybox-version: 1.34.1 + v1.30.1: + version: v0.0.26 + busybox-version: 1.34.1 diff --git a/kubemarine/resources/configurations/compatibility/internal/thirdparties.yaml b/kubemarine/resources/configurations/compatibility/internal/thirdparties.yaml index 7e6347599..67c322508 100644 --- a/kubemarine/resources/configurations/compatibility/internal/thirdparties.yaml +++ b/kubemarine/resources/configurations/compatibility/internal/thirdparties.yaml @@ -50,6 +50,8 @@ kubeadm: sha1: 14390d6df2bb0b6546efd2238068c300461053fd v1.29.4: sha1: de2dbed32d3ba125522aa7a7a4e278400d6d4855 + v1.30.1: + sha1: 85385f4b78b79bd1cd4d1ad5244422d372d5f758 kubelet: v1.23.1: sha1: 4a7e2e5f5e6b8e95efa52931786bc275a037bc50 @@ -99,6 +101,8 @@ kubelet: sha1: aa871f4656bf1cc6393058f28d5c938268df3d4e v1.29.4: sha1: f019ec5abe443bf20ef711ebbc971f51b7a1a34d + v1.30.1: + sha1: c62da6ab918b8e56d7c9b77e642ffc73ffdbffac kubectl: v1.23.1: sha1: 4ceb8d046a2d8253495aa86d13f11e2eb29644fc @@ -148,6 +152,8 @@ kubectl: sha1: 5867f210ce90c62e0551062492751e43c2ae6a46 v1.29.4: sha1: ea298117fbf1d3f4b85f491ccec622e0599c9248 + v1.30.1: + sha1: bced94239f1dbdb04d3a661a067bf9587865b6e8 calicoctl: # calicoctl version is duplicated from kubemarine/resources/configurations/compatibility/kubernetes_versions.yaml # It also corresponds to the plugin version in kubemarine/resources/configurations/compatibility/internal/plugins.yaml @@ -223,6 +229,9 @@ calicoctl: v1.29.4: version: v3.27.3 sha1: 24468ab467fd59727d278dfdc3a5c6eec51cdff1 + v1.30.1: + version: v3.27.3 + sha1: 24468ab467fd59727d278dfdc3a5c6eec51cdff1 crictl: # crictl version is duplicated from kubemarine/resources/configurations/compatibility/kubernetes_versions.yaml # for backward compatibility with clusters in a private environment. @@ -298,3 +307,6 @@ crictl: v1.29.4: version: v1.30.0 sha1: c81e76d5d4bf64d6b513485490722d2fc0a9a83b + v1.30.1: + version: v1.30.0 + sha1: c81e76d5d4bf64d6b513485490722d2fc0a9a83b diff --git a/kubemarine/resources/configurations/compatibility/kubernetes_versions.yaml b/kubemarine/resources/configurations/compatibility/kubernetes_versions.yaml index 1966a93c4..7617e05fb 100644 --- a/kubemarine/resources/configurations/compatibility/kubernetes_versions.yaml +++ b/kubemarine/resources/configurations/compatibility/kubernetes_versions.yaml @@ -15,6 +15,8 @@ kubernetes_versions: supported: true v1.29: supported: true + v1.30: + supported: true compatibility_map: # This section should be changed manually. v1.23.1: @@ -161,6 +163,12 @@ compatibility_map: kubernetes-dashboard: v2.7.0 local-path-provisioner: v0.0.26 crictl: v1.30.0 + v1.30.1: + calico: v3.27.3 + nginx-ingress-controller: v1.10.1 + kubernetes-dashboard: v2.7.0 + local-path-provisioner: v0.0.26 + crictl: v1.30.0 # After any change, please run scripts/thirdparties/sync.py