Lab 2.2 - 'kubadm init' fails
Hello,
When deploying a Control Plane Node using kubeadm (exercise 2.2), I'm launching 'sudo kubeadm init --config=$(find / -name kubeadm.yaml 2>/dev/null )' (command taken from k8scp.sh) which ultimately fails with:
I1129 18:10:45.586621 1407 checks.go:855] pulling: k8s.gcr.io/coredns:v1.8.4
[preflight] Some fatal errors occurred:
[ERROR ImagePull]: failed to pull image k8s.gcr.io/coredns:v1.8.4: output: time="2021-11-29T18:10:48+01:00" level=fatal msg="pulling image: rpc error: code = Unknown desc = reading manifest v1.8.4 in k8s.gcr.io/coredns: manifest unknown: Failed to fetch \"v1.8.4\" from request \"/v2/coredns/manifests/v1.8.4\"."
, error: exit status 1
Any suggestion to fix it ?
Thanks.
Answers
-
Hi @fbui,
Is it possible there is a firewall that blocks access to the Google Container Registry? This could be a guest system firewall, and/or an infrastructure level firewall (at hypervisor level, VPC, etc.). Sometimes corporate VPNs may block such connection attempts.
Regards,
-Chris0 -
Hi,
I turned the firewall off as advised in the exercise preliminary, so I don't think the problem is related.
Pulling the image manually gave me the same error:
crictl -r unix:///var/run/crio/crio.sock pull k8s.gcr.io/coredns:v1.8.4 FATA[0000] pulling image: rpc error: code = Unknown desc = reading manifest v1.8.4 in k8s.gcr.io/coredns: manifest unknown: Failed to fetch "v1.8.4" from request "/v2/coredns/manifests/v1.8.4".
It seems that the issue is more related to the version of the manifest.
0 -
Hi @fbui,
Your
pullcommand seems to be incomplete.I attempted to bootstrap a control-plane node following all the steps from the lab guide as provided - and it was successful. I also tried to pull the image with
crictlandpodmanand none of them complained either:sudo crictl pull k8s.gcr.io/coredns/coredns:v1.8.4sudo podman image pull k8s.gcr.io/coredns/coredns:v1.8.4If these are not successful, I would start by looking at the networking configuration of the VMs, the local hypervisor or the cloud VPC, any associated firewalls, security groups, etc. I would also recommend watching the AWS/GCP setup videos from the introductory chapter, as they include essential tips for setting up the environment.
Regards,
-Chris0 -
Hi,
Both commands
crictl pull k8s.gcr.io/coredns/coredns:v1.8.4podman image pull k8s.gcr.io/coredns/coredns:v1.8.4succeeded.
Therefore it seems that the issue is due to
sudo kubeadm init --config=$(find / -name kubeadm.yaml 2>/dev/null )The command (taken from k8scp.sh) launches crictl using the wrong path, ie
k8s.gcr.io/coredns:v1.8.4instead ofk8s.gcr.io/coredns/coredns:v1.8.40 -
Hi @fbui,
Can you provide the line where
crictlis called from yourkubeadm.yamlfile? In my version of the lab guide and SOLUTIONS there is no such call, but it all works as expected every single time I run thekubeadm initcommand.Since this behavior cannot be reproduced, can you describe your environment? What VM's are you using, on what platform (what hypervisor, what cloud, what instance types, CPU, MEM, OS), what type of VM networking you have configured, any firewalls, etc? Do you have a history of commands all the way up to the step where you noticed the error? Can you provide the
cp.outfile?Regards,
-Chris0 -
I have the same issue on ubuntu-1804-lts (running in GCP), uploaded the cp.out file, could you pls help?
$ sudo kubeadm init --config=$(find / -name kubeadm.yaml 2>/dev/null )
W0320 23:41:47.568929 8885 utils.go:69] The recommended value for "resolvConf" in "KubeletConfiguration" is: /run/systemd/resolve/resolv.conf; the provided value is: /run/systemd/resolve/resolv.conf
[init] Using Kubernetes version: v1.23.1
[preflight] Running pre-flight checks
error execution phase preflight: [preflight] Some fatal errors occurred:
[ERROR CRI]: container runtime is not running: output: time="2022-03-20T23:41:49Z" level=fatal msg="connect: connect endpoint 'unix:///var/run/crio/crio.sock', make sure you are running as root and the endpoint has been started: context deadline exceeded"
, error: exit status 1
[preflight] If you know what you are doing, you can make a check non-fatal with--ignore-preflight-errors=...
To see the stack trace of this error execute with --v=5 or higher0 -
@bvssnraju, @fbui You must use Ubuntu 20.04 as the base OS.
0 -
Thanks, @ankovi > @akovi said:
@bvssnraju, @fbui You must use Ubuntu 20.04 as the base OS.
I think this is quite an important one. Did you consider adding a remark on the lab page?
I was confused when the cluster stopped working for me without a reason.Also, did you notice that for Ubuntu 20.04 there is a warning message when running the init script?
Warning: policy/v1beta1 PodDisruptionBudget is deprecated in v1.21+, unavailable in v1.25+; use policy/v1 PodDisruptionBudget
poddisruptionbudget.policy/calico-kube-controllers created0 -
Hello there,
I'm also experiencing this kind of problem.
My setup is:
- Vagrant VirtualBox Ubuntu 20.04
- apparmor stopped and disabled
- ENV prepared with company proxy, all (http|https|no)_proxy variables set
Running
kubeadm init ...fails to pull the necessary images whereas podman instead is able to pull them.I finally ended up in
1. runningkubeadm initand let it fail
2. pull the image with podman
3. repeat at 1.Any advise to overcome this is highly appreciated
0 -
Hi @juetten,
What errors did you see while
kubeadm initwas running?After the cluster initialized, were you able to run the basicpod application and the firstpod deployment as instructed by Lab exercises 2.3 and 2.5 respectively?
Regards,
-Chris0
Categories
- All Categories
- 177 LFX Mentorship
- 177 LFX Mentorship: Linux Kernel
- 754 Linux Foundation IT Professional Programs
- 374 Cloud Engineer IT Professional Program
- 170 Advanced Cloud Engineer IT Professional Program
- 74 DevOps IT Professional Program - Discontinued
- 5 DevOps & GitOps IT Professional Program
- 100 Cloud Native Developer IT Professional Program
- 7.6K Training Courses & Learning Paths
- 2 AI & ML Training
- 1 Blockchain & Decentralized Identity Training
- 5 Cloud & Containers Training
- 1 Cybersecurity Training
- 2 DevOps & Site-Reliability Training
- 1 Linux Kernel Development Training
- 1 Networking Training
- 2 Open Source Best Practice Training
- 2 System Administration Training
- 1 System Engineering Training
- 1 Web & Application Development Training
- 794 Hardware
- 202 Drivers
- 68 I/O Devices
- 37 Monitors
- 95 Multimedia
- 173 Networking
- 91 Printers & Scanners
- 89 Storage
- 769 Linux Distributions
- 81 Debian
- 68 Fedora
- 22 Linux Mint
- 13 Mageia
- 24 openSUSE
- 150 Red Hat Enterprise
- 31 Slackware
- 13 SUSE Enterprise
- 356 Ubuntu
- 465 Linux System Administration
- 31 Cloud Computing
- 73 Command Line/Scripting
- Github systems admin projects
- 98 Linux Security
- 78 Network Management
- 101 System Management
- 46 Web Management
- 112 Mobile Computing
- 20 Android
- 77 Development
- 1.2K New to Linux
- 1K Getting Started with Linux
- 393 Off Topic
- 121 Introductions
- 182 Small Talk
- 29 Study Material
- 977 Programming and Development
- 310 Kernel Development
- 649 Software Development
- 990 Software
- 382 Applications
- 182 Command Line
- 5 Compiling/Installing
- 68 Games
- 317 Installation
- Archived
- 2 LFD140 Class Forum
- 1.4K LFS258 Class Forum
Upcoming Training
-
August 20, 2018
Kubernetes Administration (LFS458)
-
August 20, 2018
Linux System Administration (LFS301)
-
August 27, 2018
Open Source Virtualization (LFS462)
-
August 27, 2018
Linux Kernel Debugging and Security (LFD440)