-1
Ich besuche einen Coursera-Kurs für CKA Prep und im Rahmen dessen stellen wir eine Instanz eines Knotens auf Amazon EC2 bereit, installieren die Container-Laufzeit (in diesem Fall containerd) und jetzt bin ich bei dem Schritt, bei dem ich kubeadmn und kubectl installieren muss. Wenn ich diesen Befehl ausführe:
sudo yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
Ich bekomme Folgendes:
Error: Package: kubeadm-1.28.1-150500.1.1.x86_64 (kubernetes)
Requires: cri-tools >= 1.28.0
Available: cri-tools-1.25.0-1.amzn2.0.1.x86_64 (amzn2-core)
cri-tools = 1.25.0-1.amzn2.0.1
Available: cri-tools-1.26.1-1.amzn2.0.1.x86_64 (amzn2-core)
cri-tools = 1.26.1-1.amzn2.0.1
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
Also ... ich habe versucht, auf diese Site zu gehen (https://github.com/kubernetes-sigs/cri-tools) und lade die aktuellsten Versionen von Crictl und Critest herunter, aber wenn ich denselben Befehl ausführe (den oben), erhalte ich den gleichen Fehler.
Ich habe auch versucht, das obige auszuführen, indem ich am Ende den Modifikator --skip-broken hinzugefügt habe, und das ermöglicht mir die Ausführung ohne Fehler ... ABER es installiert auch nicht wirklich kubeadm oder kubectl. Es ist also nicht sehr hilfreich. Ich habe auch versucht, den RPM-Befehl auszuführen. Das schien nichts zu bewirken.
Kann mir jemand helfen? Ich habe in einem Kubernetes-Forum eine Diskussion darüber gesehen, dass Kubeadmn nicht von Cri-Tools abhängig sein sollte, aber das hilft mir in meiner aktuellen Situation nicht weiter. Irgendeine Hilfe/Vorschlag?
Antwort1
Sie können versuchen, ein RPM-Repository mit den neuesten Versionen der CRI-O Container Runtime-Pakete hinzuzufügen.
Wenn Sie ein RHEL 7-basiertes System verwenden, fügen Sie das Repository wie folgt hinzu:
VERSION=1.28
sudo curl -L -o /etc/yum.repos.d/devel:kubic:libcontainers:stable.repo https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable/CentOS_7/devel:kubic:libcontainers:stable.repo
sudo curl -L -o /etc/yum.repos.d/devel:kubic:libcontainers:stable:cri-o:${VERSION}.repo https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable:cri-o:${VERSION}/CentOS_7/devel:kubic:libcontainers:stable:cri-o:${VERSION}.repo
Für RHEL 8-basierte Systeme fügen Sie hinzu:
VERSION=1.28
OS=CentOS_8
curl -L -o /etc/yum.repos.d/devel:kubic:libcontainers:stable.repo https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/$OS/devel:/kubic:/libcontainers:/stable.repo
curl -L -o /etc/yum.repos.d/devel:kubic:libcontainers:stable:cri-o:$VERSION.repo https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable:/cri-o:/$VERSION/$OS/devel:kubic:libcontainers:stable:cri-o:$VERSION.repo
Dann installieren cri-o
und cri-tools
verpacken Sie:
sudo yum install cri-o cri-tools
Und versuchen Sie die Installation erneut. Sie sollte erfolgreich sein.
Antwort2
Ich bin auf dasselbe Problem gestoßen, bei dem die Ausgabe Folgendes lautete
1 packages excluded due to repository priority protections
Erst nachdem ich die Yum-Repository-Prioritäten deaktiviert hatte, konnte ich Repo-Pakete von https://pkgs.k8s.io/core:/stable:/v1.28/rpm
meiner AMZN-Linux-2-Box abrufen.
Ähnliche Frage hier gestellt:https://serverfault.com/questions/312472/what-does-that-mean-packages-excluded-due-to-repository-priority-protections
[root@ip-172-31-89-230 system]# sudo yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
Loaded plugins: extras_suggestions, langpacks, priorities, update-motd
1 packages excluded due to repository priority protections
Resolving Dependencies
--> Running transaction check
---> Package kubeadm.x86_64 0:1.28.2-150500.1.1 will be installed
Antwort3
Sie müssen das Plugin über die Befehlszeile von Yum mit dieser Zeile deaktivieren:
--disableplugin=priorities
Führen Sie diesen Befehl aus:
sudo yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes --disableplugin=priorities