Welcome to the Linux Foundation Forum!

Lab 4.1 step 7: $sudo kubeadm upgrade plan

[upgrade/config] FATAL: this version of kubeadm only supports deploying clusters with the control plane version >= 1.20.0. Current version: v1.19.1
To see the stack trace of this error execute with --v=5 or higher

HOW CAN I UPGRADE CP V1.19.1 TO CP V1.20.0?

Answers

  • serewicz
    serewicz Posts: 1,000

    Hello,

    What version of the course are you using? The current labs would direct you to start with 1.20 and then upgrade to 1.21.

    What version of kubectl, kubeadm, and kubelet are you using? What command did you run to generate the error?

    Regards,

  • Bertpuit
    Bertpuit Posts: 4

    $sudo kubeadm version
    kubeadm version: &version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.2", GitCommit:"092fbfbf53427de67cac1e9fa54aaa09a28371d7", GitTreeState:"clean", BuildDate:"2021-06-16T12:57:56Z", GoVersion:"go1.16.5", Compiler:"gc", Platform:"linux/amd64"}

    $sudo kubectl version
    Client Version: version.Info{Major:"1", Minor:"19", GitVersion:"v1.19.1", GitCommit:"206bcadf021e76c27513500ca24182692aabd17e", GitTreeState:"clean", BuildDate:"2020-09-09T11:26:42Z", GoVersion:"go1.15", Compiler:"gc", Platform:"linux/amd64"}
    Server Version: version.Info{Major:"1", Minor:"19", GitVersion:"v1.19.1", GitCommit:"206bcadf021e76c27513500ca24182692aabd17e", GitTreeState:"clean", BuildDate:"2020-09-09T11:18:22Z", GoVersion:"go1.15", Compiler:"gc", Platform:"linux/amd64"}

    $ sudo kubelet --version
    Kubernetes v1.19.1

    Command typed in was:

    ~$ sudo kubeadm upgrade plan
    [upgrade/config] Making sure the configuration is correct:
    [upgrade/config] Reading configuration from the cluster...
    [upgrade/config] FYI: You can look at this config file with 'kubectl -n kube-system get cm kubeadm-config -o yaml'
    [upgrade/config] FATAL: this version of kubeadm only supports deploying clusters with the control plane version >= 1.20.0. Current version: v1.19.1
    To see the stack trace of this error execute with --v=5 or higher

  • Bertpuit
    Bertpuit Posts: 4

    $sudo kubeadm version
    kubeadm version: &version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.2", GitCommit:"092fbfbf53427de67cac1e9fa54aaa09a28371d7", GitTreeState:"clean", BuildDate:"2021-06-16T12:57:56Z", GoVersion:"go1.16.5", Compiler:"gc", Platform:"linux/amd64"}

    $sudo kubectl version
    Client Version: version.Info{Major:"1", Minor:"19", GitVersion:"v1.19.1", GitCommit:"206bcadf021e76c27513500ca24182692aabd17e", GitTreeState:"clean", BuildDate:"2020-09-09T11:26:42Z", GoVersion:"go1.15", Compiler:"gc", Platform:"linux/amd64"}
    Server Version: version.Info{Major:"1", Minor:"19", GitVersion:"v1.19.1", GitCommit:"206bcadf021e76c27513500ca24182692aabd17e", GitTreeState:"clean", BuildDate:"2020-09-09T11:18:22Z", GoVersion:"go1.15", Compiler:"gc", Platform:"linux/amd64"}

    $ sudo kubelet --version
    Kubernetes v1.19.1

    Command typed in was:

    $ sudo kubeadm upgrade plan
    [upgrade/config] Making sure the configuration is correct:
    [upgrade/config] Reading configuration from the cluster...
    [upgrade/config] FYI: You can look at this config file with 'kubectl -n kube-system get cm kubeadm-config -o yaml'
    [upgrade/config] FATAL: this version of kubeadm only supports deploying clusters with the control plane version >= 1.20.0. Current version: v1.19.1
    To see the stack trace of this error execute with --v=5 or higher

  • I faced similar issue - whats the solution ?

    kubeadm upgrade plan
    [upgrade/config] Making sure the configuration is correct:
    [upgrade/config] Reading configuration from the cluster...
    [upgrade/config] FYI: You can look at this config file with 'kubectl -n kube-system get cm kubeadm-config -o yaml'
    [upgrade/config] FATAL: this version of kubeadm only supports deploying clusters with the control plane version >= 1.21.0. Current version: v1.20.11
    To see the stack trace of this error execute with --v=5 or higher

  • chrispokorni
    chrispokorni Posts: 2,301

    Hi @udayan.singh,

    What are the versions of your kubeadm, kubelet, and kubectl? The upgrade process supported is between consecutive minor versions, such as from 1.20 to 1.21, and/or from 1.21 to 1.22.

    The latest course release starts with version 1.21 and continues with an upgrade to 1.22.

    Regards,
    -Chris

  • Hey , here i have the same problem. i am using vms with ubuntu 20.04 (maybe that's the problem?).anyway there is a way to update the control plane or i have to start from scrach with other linux ? (if is the second, exactly what distribution/version , i need to use to avoid all problems?)

  • chrispokorni
    chrispokorni Posts: 2,301

    Hi @zerodmg,

    A different Ubuntu release alone, such as 20 in this case, may not be the reason why the upgrade process causes issues. If you take a closer look at Lab Exercise 3.1 you will discover that it is calling for Ubuntu 18.

    What may impact the upgrade process, however, are the following: cloud or hypervisor configuration, VPC/private network config, firewalls, VM config (CPU, MEM, disk, networking), whether kubeadm init was successful, etc.

    What step number and what error is returned when you attempt the upgrade exercise?

    Regards,
    -Chris

  • jordanofried
    jordanofried Posts: 4

    I'm having the same problem. How can I fix this? (LAB 4.1 - Upgrade the Cluster - exercise 8)

    ubuntu@ip-172-31-54-32:~$ sudo kubeadm upgrade plan
    [preflight] Running pre-flight checks.
    [upgrade/config] Reading configuration from the cluster...
    [upgrade/config] FYI: You can look at this config file with 'kubectl -n kube-system get cm kubeadm-config -o yaml'
    [upgrade/init config] FATAL: this version of kubeadm only supports deploying clusters with the control plane version >= 1.29.0. Current version: v1.27.1
    To see the stack trace of this error execute with --v=5 or higher
    ubuntu@ip-172-31-54-32:~$ sudo kubeadm version
    kubeadm version: &version.Info{Major:"1", Minor:"30", GitVersion:"v1.30.1", GitCommit:"6911225c3f747e1cd9d109c305436d08b668f086", GitTreeState:"clean", BuildDate:"2024-05-14T10:49:05Z", GoVersion:"go1.22.2", Compiler:"gc", Platform:"linux/amd64"}
    ubuntu@ip-172-31-54-32:~$ sudo kubectl version
    WARNING: This version information is deprecated and will be replaced with the output from kubectl version --short. Use --output=yaml|json to get the full version.
    Client Version: version.Info{Major:"1", Minor:"27", GitVersion:"v1.27.1", GitCommit:"4c9411232e10168d7b050c49a1b59f6df9d7ea4b", GitTreeState:"clean", BuildDate:"2023-04-14T13:21:19Z", GoVersion:"go1.20.3", Compiler:"gc", Platform:"linux/amd64"}
    Kustomize Version: v5.0.1
    The connection to the server localhost:8080 was refused - did you specify the right host or port?
    ubuntu@ip-172-31-54-32:~$ sudo kubelet --version
    Kubernetes v1.27.1

  • chrispokorni
    chrispokorni Posts: 2,301

    Hi @jordanofried,

    It seems you are attempting the upgrade of a cluster on v1.27. Kubernetes only supports upgrades to the next minor version, and cannot skip several minor versions from v1.27 to v1.30. This means you would need to separately upgrade from v1.27 to v1.28, then to v1.29, and only after that to v1.30.

    You can read more in the official docs:

    https://kubernetes.io/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/

    However, the latest course release calls for Kubernetes v1.29.1 installation in Chapter 3, and upgrade from v1.29.1 to v1.30.1 in Chapter 4.

    Regards,
    -Chris

  • jordanofried
    jordanofried Posts: 4

    @chrispokorni, I think I didn't get it. My kubernetes is on v1.27.1, but my kubeadm is on v1.30.1. How will I be able to upgrade my kubernetes to 1.28.1 when the kubeadm "only supports deploying clusters with the control plane version >= 1.29.0". Do I have to downgrade the kubeadm?

  • chrispokorni
    chrispokorni Posts: 2,301

    Hi @jordanofried,

    Do I have to downgrade the kubeadm?

    Yes.

    Please follow the official docs to upgrade the cluster from v1.27 to v1.28, then from v1.28 to v1.29.
    The upgrade from v1.29 to v1.30 can be completed based on lab exercise 4.1, or based on the official docs.

    However, bootstrapping a new cluster on v1.29 as presented in lab exercises 3.1, 3.2 and 3.3 will save you some time and trouble.

    Regards,
    -Chris

Categories

Upcoming Training