kubernetes / release

Release infrastructure for Kubernetes and related components
Apache License 2.0
485 stars 502 forks source link

kubelet-1.18.4-0 cannot be installed alongside cri-o on fedora 32 #1371

Open davemac30 opened 4 years ago

davemac30 commented 4 years ago

What happened:

Tried to install kubelet-1.18.4-0 RPM on a Fedora 32 box which had cri-o installed. Got the following error:

Error:
 Problem: problem with installed package containernetworking-plugins-0.8.6-1.fc32.x86_64
  - package kubelet-1.18.4-0.x86_64 conflicts with kubernetes-cni provided by containernetworking-plugins-0.8.6-1.fc32.x86_64
  - package kubelet-1.18.4-0.x86_64 conflicts with kubernetes-cni provided by containernetworking-plugins-0.8.5-1.1.gitf5c3d1b.fc32.x86_64
  - conflicting requests

What you expected to happen:

As with previous versions of kubelet RPM (e.g. 1.18.3-0), I expected kubelet-1.18.4-0 to install without errors.

How to reproduce it (as minimally and precisely as possible):

On a clean, new vagrant box based on fedora/32-cloud-base, run the following:

sudo dnf -y module enable cri-o:1.18
sudo dnf -y install cri-o
sudo dnf config-manager --add-repo https://packages.cloud.google.com/yum/repos/kubernetes-el7-\$basearch
sudo rpmkeys --import https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
sudo dnf -y install kubelet-1.18.4-0

Anything else we need to know?:

Environment:

Vagrant 2.2.9, VirtualBox 6.1.10, MacOS 10.15.5

Vagrantfile

# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure("2") do |config|

  config.vm.box = "fedora/32-cloud-base"

  config.vm.provider :virtualbox do |virtualbox|
    virtualbox.linked_clone = true
    virtualbox.customize ["modifyvm", :id, "--audio", "none"]
    virtualbox.memory = 1024
  end

end
saschagrunert commented 4 years ago

Hey @davemac30 👋, with the release of Kubernetes 1.18.4 we removed packaging kubernetes-cni, which means we probably can fix this error with https://github.com/kubernetes/release/pull/1367, too.

saschagrunert commented 4 years ago

Alright https://github.com/kubernetes/release/pull/1367#discussion_r443145331 clarifies that the solution is not as trivial as initially thought.

Calling for @dougsland 👋 do you have a suggested way how we can use both, the Fedora module and the packages on yum.k8s.io together?

cc @lsm5 @haircommander

dougsland commented 4 years ago

Alright #1367 (comment) clarifies that the solution is not as trivial as initially thought.

Calling for @dougsland do you have a suggested way how we can use both, the Fedora module and the packages on yum.k8s.io together?

cc @lsm5 @haircommander

I think it's hard to keep a statement that both repos will work 100% all the time without conflicts (as independent repos). @lsm5 what you say?

justaugustus commented 4 years ago

Potential fix being discussed here: https://github.com/kubernetes/release/pull/1375

justaugustus commented 4 years ago

@davemac30 -- We've published new packages. Can you try again w/ 1.18.4-1?

davemac30 commented 4 years ago

Seems to work fine - cri-o and kubelet installed together no problem:

[vagrant@localhost ~]$ sudo rpm -qa cri-o kubelet
cri-o-1.18.1-2.module_f32+9078+15f1cda4.x86_64
kubelet-1.18.4-1.x86_64

Thanks all for the speedy resolution!

jlpettersson commented 6 months ago

This still seem to be a problem.

I tried to install kubelet and cni-tools.

Error:
 Problem: conflicting requests
  - package kubelet-1.28.0-150500.1.1.aarch64 from kubernetes requires kubernetes-cni >= 1.2.0, but none of the providers can be installed

and if I let kubernetes-cni be installed when I have cni-tools I get:

Error: Transaction test error:
  file /opt/cni/bin/bandwidth from install of kubernetes-cni-1.2.0-150500.2.1.aarch64 conflicts with file from package cni-plugins-1.2.0-1.amzn2023.0.3.aarch64

The binaries are installed from https://pkgs.k8s.io/core:/stable:/v1.28/rpm/

haircommander commented 6 months ago

cni-plugins-1.2.0-1.amzn2023.0.3.aarch64 I think this may be something to take-up with the folks that put together your distro. is it Amazon Linux?

jlpettersson commented 6 months ago

@haircommander yes, it is Amazon Linux 2003.

But I will workaround by using curl instead of the yum repositories, it seems not to be a good way to install the kube binaries.

xmudrii commented 6 months ago

/reopen /assign I'll take a look into this

k8s-ci-robot commented 6 months ago

@xmudrii: Reopened this issue.

In response to [this](https://github.com/kubernetes/release/issues/1371#issuecomment-2079622131): >/reopen >/assign >I'll take a look into this Instructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md). If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes/test-infra](https://github.com/kubernetes/test-infra/issues/new?title=Prow%20issue:) repository.
k8s-triage-robot commented 3 months ago

The Kubernetes project currently lacks enough contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

You can:

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

k8s-triage-robot commented 2 months ago

The Kubernetes project currently lacks enough active contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

You can:

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle rotten

xmudrii commented 2 months ago

/remove-lifecycle rotten

xmudrii commented 2 months ago

I'm not working on this at the moment. /unassign