Cannot upgrade kubeadm to 1.30.0 via apt · Issue #3574 · kubernetes/release · GitHub
Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot upgrade kubeadm to 1.30.0 via apt #3574

Closed
martinwang2002 opened this issue Apr 18, 2024 · 10 comments
Closed

Cannot upgrade kubeadm to 1.30.0 via apt #3574

martinwang2002 opened this issue Apr 18, 2024 · 10 comments
Labels
kind/bug Categorizes issue or PR as related to a bug. needs-priority needs-sig Indicates an issue or PR lacks a `sig/foo` label and requires one. needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one.

Comments

@martinwang2002
Copy link

What happened?

Kubeadm cannot upgrade to version 1.30.0 because cri-tools is at 1.29.0

sudo apt upgrade kubeadm
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Calculating upgrade... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 kubeadm : Depends: cri-tools (>= 1.30.0) but 1.29.0-1.1 is to be installed
E: Broken packages

What did you expect to happen?

Maybe a release of cri-tools 1.30.0

How can we reproduce it (as minimally and precisely as possible)?

  1. change version in apt sources /etc/apt/sources.list.d/kubernetes.list
deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.30/deb/ /
  1. run apt update
sudo apt-mark unhold kubeadm && \
sudo apt-get update && sudo apt-get install -y kubeadm='1.30.x-*' && \
sudo apt-mark hold kubeadm

Anything else we need to know?

No response

Kubernetes version

$ kubectl version
kubectl version
Client Version: v1.30.0
Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3

Cloud provider

OS version

# On Linux:
$ cat /etc/os-release
PRETTY_NAME="Ubuntu 22.04.4 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.4 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy
$ uname -a
Linux instance 5.15.0-102-generic kubernetes/kubernetes#112-Ubuntu SMP Tue Mar 5 16:49:56 UTC 2024 aarch64 aarch64 aarch64 GNU/Linux

# On Windows:
C:\> wmic os get Caption, Version, BuildNumber, OSArchitecture
# paste output here

Install tools

Container runtime (CRI) and version (if applicable)

Related plugins (CNI, CSI, ...) and versions (if applicable)

@martinwang2002 martinwang2002 added the kind/bug Categorizes issue or PR as related to a bug. label Apr 18, 2024
@k8s-ci-robot k8s-ci-robot added the needs-sig Indicates an issue or PR lacks a `sig/foo` label and requires one. label Apr 18, 2024
@k8s-ci-robot
Copy link
Contributor

There are no sig labels on this issue. Please add an appropriate label by using one of the following commands:

  • /sig <group-name>
  • /wg <group-name>
  • /committee <group-name>

Please see the group list for a listing of the SIGs, working groups, and committees available.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@k8s-ci-robot k8s-ci-robot added the needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. label Apr 18, 2024
@k8s-ci-robot
Copy link
Contributor

This issue is currently awaiting triage.

If a SIG or subproject determines this is a relevant issue, they will accept it by applying the triage/accepted label and provide further guidance.

The triage/accepted label can be added by org members by writing /triage accepted in a comment.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@neolit123
Copy link
Member

/transfer release

@k8s-ci-robot k8s-ci-robot transferred this issue from kubernetes/kubernetes Apr 18, 2024
@neolit123
Copy link
Member

neolit123 commented Apr 18, 2024

kubeadm 1.30 depends on cri-tools 1.30:
https://github.com/kubernetes/release/blob/master/cmd/krel/templates/latest/metadata.yaml#L72-L76

can you show the list of dependencies of kubeadm 1.30 in your case:
https://askubuntu.com/questions/128524/how-to-list-dependent-packages-reverse-dependencies

manually installing cri-tools 1.30 should fix it but we better understand why this happens:
https://askubuntu.com/a/606896

@saschagrunert
Copy link
Member

saschagrunert commented Apr 18, 2024

We're planning to release cri-tools soon: kubernetes-sigs/cri-tools#1402

We have missed this time that we usually have to release it before Kubernetes, sorry about that.

@afbjorklund
Copy link

afbjorklund commented Apr 18, 2024

How did this work with the RC packages, wouldn't they also have been blocked ?

@xmudrii
Copy link
Member

xmudrii commented Apr 18, 2024

@afbjorklund RC (and alpha and beta) packages are using a dedicated prerelease repo that had both cri-tools and kubernetes-cni packages published at the start of the release cycle. However, we push those two packages at the end of the release cycle to the stable repo as that's the point when we know for sure what package versions we exactly need.

@afbjorklund
Copy link

afbjorklund commented Apr 18, 2024

I was able to install the cluster before by force-installing the old cri-tools 1.29.0-1.1 from the v1.29 package track.

And was able to upgrade it now, with the new version from v1.30. That also gets rid of the dockershim warning:

ERRO[0000] validate service connection: validate CRI v1 runtime API for endpoint "unix:///var/run/dockershim.sock": rpc error: code = Unavailable desc = connection error: desc = "transport: Error while dialing: dial unix /var/run/dockershim.sock: connect: no such file or directory"

Which was the feature I was looking for, in the new cri-tools (otherwise k8s 1.30 seemed to be happy with CRI 1.29)

crictl version v1.30.0

cri-tools/unknown,now 1.30.0-1.1 amd64 [installed]
kubernetes-cni/unknown,now 1.4.0-1.1 amd64 [installed]

@afbjorklund

This comment was marked as off-topic.

@martinwang2002
Copy link
Author

This is now resolved.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug Categorizes issue or PR as related to a bug. needs-priority needs-sig Indicates an issue or PR lacks a `sig/foo` label and requires one. needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one.
Projects
None yet
Development

No branches or pull requests

6 participants