ministryofjustice / cloud-platform

Documentation on the MoJ cloud platform
MIT License
84 stars 44 forks source link

Planning upgrade to EKS 1.28 #5570

Closed poornima-krishnasamy closed 1 month ago

poornima-krishnasamy commented 2 months ago

Go through the release notes of EKS 1.28 and create a plan to upgrade our clusters

Things to consider:

Review changelog & release notes ✅ EKS Module support at current version? ✅ Are there any API deprecations & removals? (Check insights) ✅ Are there new components being added? ✅ What changes are being introduced to current components? ✅ Are there changes to core infra of the CP required? i.e. Are all our current components compatible with ? Are there changes users need to make? ✅ Do we need to expand any of our smoke/integration testing? ✅ Create additional tickets needed for any findings specific to this upgrade ✅

Cluster upgrade Runbook: https://runbooks.cloud-platform.service.justice.gov.uk/upgrade-eks-cluster.html

Related to: #5569

jaskaransarkaria commented 1 month ago

Deprecations and removals

Removals:

[Removal of CSI Migration for GCE PD](https://github.com/kubernetes/enhancements/issues/1488)

Deprecations:

[Ceph RBD in-tree plugin](https://github.com/kubernetes/kubernetes/pull/118303)
[Ceph FS in-tree plugin](https://github.com/kubernetes/kubernetes/pull/118143)

https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.28.md#no-really-you-must-read-this-before-you-upgrade

CephFS volume plugin (kubernetes.io/cephfs) has been deprecated in this release and will be removed in a subsequent release. The alternative is to use the CephFS CSI driver (https://github.com/ceph/ceph-csi/) in your Kubernetes cluster. (https://github.com/kubernetes/kubernetes/pull/118143, @humblec)

Deprecated support for CSI migration of Ceph RBD volumes. Users who were relying on Kubernetes' ability to migrate to an out-of-tree storage driver should complete that migration before the support for it is removed. (https://github.com/kubernetes/kubernetes/pull/118303, @carlory)

RBD volume plugin (kubernetes.io/rbd) has been deprecated in this release and will be removed in a subsequent release. Alternative is to use RBD CSI driver (https://github.com/ceph/ceph-csi/) in your Kubernetes Cluster. (https://github.com/kubernetes/kubernetes/pull/118552, @humblec)

Changes by Kind

Deprecation

jaskaransarkaria commented 1 month ago

What's New

New components / features

Graduations to stable

This release includes a total of 12 enhancements promoted to Stable:

Notable features

Other features

jaskaransarkaria commented 1 month ago

API Changes

Notable changes

Other changes

jaskaransarkaria commented 1 month ago

kubent output

→  kubent --target-version 1.28
11:01AM INF >>> Kube No Trouble `kubent` <<<
11:01AM INF version 0.7.2 (git sha 25eb8a3757d1db39a04e94bb97a3f099fb5c9fb6)
11:01AM INF Initializing collectors and retrieving data
11:01AM INF Target K8s version is 1.28.0
11:01AM INF Retrieved 5643 resources from collector name=Cluster
11:01AM WRN failed to discover supported resources for policy/v1beta1: the server could not find the requested resource
11:01AM WRN failed to discover supported resources for policy/v1beta1: the server could not find the requested resource
11:01AM WRN failed to discover supported resources for policy/v1beta1: the server could not find the requested resource
11:01AM WRN failed to discover supported resources for policy/v1beta1: the server could not find the requested resource
11:01AM WRN failed to discover supported resources for policy/v1beta1: the server could not find the requested resource
11:01AM WRN failed to discover supported resources for policy/v1beta1: the server could not find the requested resource
11:01AM WRN failed to discover supported resources for policy/v1beta1: the server could not find the requested resource
11:01AM WRN failed to discover supported resources for autoscaling/v2beta1: the server could not find the requested resource
11:01AM WRN failed to discover supported resources for autoscaling/v2beta1: the server could not find the requested resource
11:01AM WRN failed to discover supported resources for policy/v1beta1: the server could not find the requested resource
11:01AM WRN failed to discover supported resources for policy/v1beta1: the server could not find the requested resource
11:01AM WRN failed to discover supported resources for policy/v1beta1: the server could not find the requested resource
11:01AM WRN failed to discover supported resources for policy/v1beta1: the server could not find the requested resource
11:01AM WRN failed to discover supported resources for policy/v1beta1: the server could not find the requested resource
11:09AM WRN failed to discover supported resources for policy/v1beta1: the server could not find the requested resource
11:12AM WRN failed to discover supported resources for networking.k8s.io/v1beta1: the server could not find the requested resource
11:12AM WRN failed to discover supported resources for networking.k8s.io/v1beta1: the server could not find the requested resource
11:21AM WRN failed to discover supported resources for batch/v1beta1: the server could not find the requested resource
11:30AM INF Retrieved 9890 resources from collector name="Helm v3"
11:30AM INF Loaded ruleset name=custom.rego.tmpl
11:30AM INF Loaded ruleset name=deprecated-1-16.rego
11:30AM INF Loaded ruleset name=deprecated-1-22.rego
11:30AM INF Loaded ruleset name=deprecated-1-25.rego
11:30AM INF Loaded ruleset name=deprecated-1-26.rego
11:30AM INF Loaded ruleset name=deprecated-1-27.rego
11:30AM INF Loaded ruleset name=deprecated-1-29.rego
11:30AM INF Loaded ruleset name=deprecated-future.rego
__________________________________________________________________________________________
>>> Deprecated APIs removed in 1.22 <<<
------------------------------------------------------------------------------------------
KIND      NAMESPACE                       NAME                                        API_VERSION                 REPLACE_WITH (SINCE)
Ingress   <undefined>                     hmpps-interventions-onboarding              networking.k8s.io/v1beta1   networking.k8s.io/v1 (1.19.0)
Ingress   <undefined>                     hmpps-delius-interventions-event-listener   networking.k8s.io/v1beta1   networking.k8s.io/v1 (1.19.0)
Ingress   polygraph-offender-management   poms-ingress                                networking.k8s.io/v1beta1   networking.k8s.io/v1 (1.19.0)
__________________________________________________________________________________________
>>> Deprecated APIs removed in 1.25 <<<
------------------------------------------------------------------------------------------
KIND                      NAMESPACE                     NAME                                                              API_VERSION           REPLACE_WITH (SINCE)
PodDisruptionBudget       <undefined>                   hmpps-community-accommodation-wiremock                            policy/v1beta1        policy/v1 (1.21.0)
PodDisruptionBudget       <undefined>                   create-and-vary-a-licence-wiremock-hmpps-community-api-wiremock   policy/v1beta1        policy/v1 (1.21.0)
HorizontalPodAutoscaler   <undefined>                   court-list-splitter                                               autoscaling/v2beta1   autoscaling/v2 (1.23.0)
HorizontalPodAutoscaler   <undefined>                   court-hearing-event-receiver                                      autoscaling/v2beta1   autoscaling/v2 (1.23.0)
CronJob                   c100-application-production   c100-application-cronjob-production                               batch/v1beta1         batch/v1 (1.21.0)
CronJob                   c100-application-production   c100-application-cronjob-payments-production                      batch/v1beta1         batch/v1 (1.21.0)
PodDisruptionBudget       <undefined>                   pre-sentence-service-gotenberg                                    policy/v1beta1        policy/v1 (1.21.0)
PodDisruptionBudget       <undefined>                   pre-sentence-service-wproofreader                                 policy/v1beta1        policy/v1 (1.21.0)
PodDisruptionBudget       <undefined>                   pre-sentence-service                                              policy/v1beta1        policy/v1 (1.21.0)
CronJob                   <undefined>                   dlq-transfer-cronjob                                              batch/v1beta1         batch/v1 (1.21.0)
PodDisruptionBudget       c100-application-production   c100-application-pdb-production                                   policy/v1beta1        policy/v1 (1.21.0)
PodDisruptionBudget       <undefined>                   court-list-splitter                                               policy/v1beta1        policy/v1 (1.21.0)
PodDisruptionBudget       <undefined>                   court-hearing-event-receiver                                      policy/v1beta1        policy/v1 (1.21.0)
__________________________________________________________________________________________
>>> Deprecated APIs removed in 1.26 <<<
------------------------------------------------------------------------------------------