kiwix / operations

Kiwix Kubernetes Cluster
http://charts.k8s.kiwix.org/
6 stars 0 forks source link

Upgrade k8s to 1.24+ #80

Closed rgaudin closed 11 months ago

rgaudin commented 1 year ago

Kubernetes 1.23 that we currently use has reached End Of Life a month ago (28 February 2023).

We have not upgraded to 1.24 yet because Scaleway prevents us from upgrading using our managed Ingress (nginx).

To upgrade, we'd have to:

We are not sure how this would go. Will the EasyDeploy work out of the box with our config? We'd need to study the current Ingress Controller config to prepare the move

Message from Scaleway

With the move of managed ingress from the Kapsule API to the Easy Deploy API, several things happened:

  • Customers with clusters with a managed ingress without EasyDeploy are unable to upgrade their cluster, without having removed their ingress upstream (in the api set ingress to none). For these customers we recommend uninstalling the ingress manually, and redeploying via EasyDeploy. For EasyDeploy, you can go to the console, in your cluster, there is an EasyDeploy tab that will allow you to install the "new" ingress controller.

  • These changes are due to the life cycle of the platform. Eventually we will no longer manage ingress. So if you want to continue on higher versions (of the ingress) (upgrade), you will have to manage it yourself (update etc) or with EasyDeploy (removal of your ingress, and reinstallation by EasyDeploy). To have no downtime, set "ingress to none" in the api, and it will update your cluster (but your ingress will no longer be managed)

kelson42 commented 1 year ago

@rgaudin PRIO0

rgaudin commented 1 year ago

Sorry for not mentioning it ; it is still provided and supported by Scaleway. They even offer 1.22 but sooner or later it won't be

rgaudin commented 1 year ago

Scaleway's notice on 2023-07-06

Dear Kubernetes customer, As it may have come to your attention, you are currently running Kubernetes with version 1.22 or version 1.23, which will be deprecated in the coming months. These Kubernetes versions will move to the End of Support phase for Kapsule and Kosmos as planned. Version 1.22 will be deprecated in August 2023, with the End of Support on October 15th, 2023. Version 1.23 will be deprecated in December 2023, with the End of Support on February 15th, 2024. As you are currently using one of these versions, we encourage you to upgrade your clusters now, to avoid any last-minute rush. For information on upgrading to newer versions, please refer to the following official Documentation. Please note if you don’t upgrade, your clusters will automatically be upgraded to the next version of Kubernetes on the date of the End of Support, i.e. October 15, 2023, for version 1.23. For more details, please read Scaleway’s Kubernetes products version policy Here. Feel free to reach out on our Slack channel #k8s if you have any questions or need help with the transition. Best regards, The Scaleway Kubernetes Team

Dates: deprecated in December 2023, with the End of Support on February 15th, 2024.

You'll appreciate the erroneous version at the end (Oct 15th is for 1.22). Contradictory dates in important actions emails seems to be a requirement for Scaleway's email 🫢

rgaudin commented 11 months ago

Message from Scaleway ; let's discuss it this week

Hi, We've looked into your ticket and we have an answer for you: i wrote: Dear Kubernetes customer,

You are currently running at least one Kubernetes cluster on version 1.23, with a legacy 'Managed Ingress Controller' enabled at creation. This feature was deprecated back in October 2022 and isn't compatible with versions 1.24+. Scaleway provides the Easy Deploy feature instead, letting you set up an Ingress Controller (Nginx or Traefik) after cluster creation.

This message is to let you know we have scheduled a maintenance on November 20th, 2023: your legacy ingress manifest will be moved automatically to Easy Deploy on that date. https://status.scaleway.com/incidents/6y2cr8lccnq9

You could however want to remove the legacy ingress by yourself, using Scaleway's command line interface: scw k8s cluster update $CLUSTER_ID ingress=none

If you have any doubts regarding your 1.23 clusters running, use scw k8s cluster get $CLUSTER_ID and find "ingress".

This documentation will tell you how to deploy an Ingress Controller through Easy Deploy: https://www.scaleway.com/en/docs/containers/kubernetes/how-to/deploy-ingress-controller/

Regards, The Scaleway team Please do not reply to this email. If you wish to tell us more about your issue, update your ticket, track the status, or close your ticket please click on this link the console. Thank you! The Customer Excellence Team Scaleway

kelson42 commented 11 months ago

@rgaudin @benoit74 Indeed, looks like this ticket starts to be more and more urgent to fix. Hopefuly we can discuss this tomorrow; but whatever happens, its prioritary to do the necessary to avoid service disruption and keep infra. In shape.

rgaudin commented 11 months ago

We'vre upgraded all the way to 1.28.2 (latest available on scaleway). ingress-nginx is up to date as well as metrics (grafana)