2022-10-27 12:27:42 +00:00
|
|
|
# KubeZero 1.24
|
|
|
|
|
|
|
|
## TODO
|
|
|
|
|
|
|
|
## What's new - Major themes
|
2022-11-14 13:14:11 +00:00
|
|
|
- Cilium is now the default CNI, calico got removed
|
|
|
|
- cluster-autoscaler is enabled by default on AWS
|
2022-10-27 12:27:42 +00:00
|
|
|
|
|
|
|
## Version upgrades
|
2022-11-14 13:14:11 +00:00
|
|
|
- cilium
|
|
|
|
- metallb
|
|
|
|
- nvidia-device-plugin
|
|
|
|
- aws-node-termination-handler
|
|
|
|
- aws-ebs-csi-driver
|
|
|
|
- aws-efs-csi-driver
|
|
|
|
|
|
|
|
### FeatureGates
|
|
|
|
- PodAndContainerStatsFromCRI
|
|
|
|
- DelegateFSGroupToCSIDriver
|
2022-10-27 12:27:42 +00:00
|
|
|
|
|
|
|
# Upgrade
|
|
|
|
`(No, really, you MUST read this before you upgrade)`
|
|
|
|
|
|
|
|
- Ensure your Kube context points to the correct cluster !
|
|
|
|
|
2022-11-14 13:14:11 +00:00
|
|
|
1. Review CFN config for controller and workers ( enable containerProxy, remove legacy version settings etc )
|
2022-10-27 12:27:42 +00:00
|
|
|
|
2022-11-14 13:14:11 +00:00
|
|
|
2. Upgrade CFN stacks for the control plane and all worker groups
|
2022-10-27 12:27:42 +00:00
|
|
|
|
2022-11-14 13:14:11 +00:00
|
|
|
3. Trigger fully-automated cluster upgrade:
|
2022-10-27 12:27:42 +00:00
|
|
|
`./admin/upgrade_cluster.sh <path to the argocd app kubezero yaml for THIS cluster>`
|
|
|
|
|
2022-11-14 13:14:11 +00:00
|
|
|
4. Reboot controller(s) one by one
|
2022-10-27 12:27:42 +00:00
|
|
|
Wait each time for controller to join and all pods running.
|
|
|
|
Might take a while ...
|
|
|
|
|
2022-11-14 13:14:11 +00:00
|
|
|
5. Launch new set of workers eg. by doubling `desired` for each worker ASG
|
2022-10-27 12:27:42 +00:00
|
|
|
once new workers are ready, cordon and drain all old workers
|
|
|
|
The cluster-autoscaler will remove the old workers automatically after about 10min !
|
|
|
|
|
2022-11-14 13:14:11 +00:00
|
|
|
6. If all looks good, commit the ArgoApp resouce for Kubezero, before re-enabling ArgoCD itself.
|
2022-10-27 12:27:42 +00:00
|
|
|
git add / commit / push `<cluster/env/kubezero/application.yaml>`
|