LFD259 - Updated to v1.22.1 (10.14.2021)
Hi,
LFD259 has been updated to Kubernetes v1.22.1. There is new content and labs to match the updated CKAD exam domains and competencies. To ensure you have access to the latest materials, please clear your cache.
Regards,
Flavia
The Linux Foundation Training Team
Comments
-
The line for /etc/containers/storage.conf needs to be restored. The absence of those lines ends up with the "worker" node failing to start up critical containers.
diff --git a/SOLUTIONS/s_02/k8sSecond.sh b/SOLUTIONS/s_02/k8sSecond.sh index 44060c2..adc691f 100755 --- a/SOLUTIONS/s_02/k8sSecond.sh +++ b/SOLUTIONS/s_02/k8sSecond.sh @@ -49,6 +49,9 @@ sudo apt-get update # Install cri-o sudo apt-get install -y cri-o cri-o-runc podman buildah +# A bug fix to get past a cri-o update +sudo sed -i 's/,metacopy=on//g' /etc/containers/storage.conf + sleep 3 sudo systemctl daemon-reload
kube-system pod/calico-node-djwk2 0/1 Init:0/3 0 4m23s
kube-system pod/kube-proxy-dplzb 0/1 ContainerCreating 0 4m23s$ kubectl describe -n kube-system pod/calico-node-djwk2
Events: Type Reason Age From Message ---- ------ ---- ---- ------- Normal Scheduled 5m59s default-scheduler Successfully assigned kube-system/calico-node-djwk2 to worker Warning FailedCreatePodSandBox 5m56s kubelet Failed to create pod sandbox: rpc error: code = Unknown desc = failed to mount container k8s_POD_calico-node-djwk2_kube-system_7e9aa728-8fe9-4a29-bedf-40988dff8741_0 in pod sandbox k8s_calico-node-djwk2_kube-system_7e9aa728-8fe9-4a29-bedf-40988dff8741_0(9ba0a861831c3a59c3382e17221fc83a63c2240fe3d6e12f1e9ca9355915637e): error creating overlay mount to /var/lib/containers/storage/overlay/0ddf29c0abf8761cf2aa6c28c1f4022e3064636ecb9ea95c7b04bbe8f0bcd2e0/merged, mount_data="nodev,metacopy=on,lowerdir=/var/lib/containers/storage/overlay/l/LAOCFIHBLQ5ZHEGKPTYC6N36OP,upperdir=/var/lib/containers/storage/overlay/0ddf29c0abf8761cf2aa6c28c1f4022e3064636ecb9ea95c7b04bbe8f0bcd2e0/diff,workdir=/var/lib/containers/storage/overlay/0ddf29c0abf8761cf2aa6c28c1f4022e3064636ecb9ea95c7b04bbe8f0bcd2e0/work": invalid argument
$ kubectl describe -n kube-system pod/kube-proxy-dplzb
Events: Type Reason Age From Message ---- ------ ---- ---- ------- Normal Scheduled 7m33s default-scheduler Successfully assigned kube-system/kube-proxy-dplzb to worker Warning FailedCreatePodSandBox 7m30s kubelet Failed to create pod sandbox: rpc error: code = Unknown desc = failed to mount container k8s_POD_kube-proxy-dplzb_kube-system_7fc66509-09a3-46e2-b118-39a7fe9c3139_0 in pod sandbox k8s_kube-proxy-dplzb_kube-system_7fc66509-09a3-46e2-b118-39a7fe9c3139_0(9975181c1522f44afbb0b34af0f6bbadfc90e3cefff42cda4cc434fbb93c235b): error creating overlay mount to /var/lib/containers/storage/overlay/85b1b5186e0d6506db20d5a31b9ddbdea0627ff19e0c6a411d30f30a2d82b3de/merged, mount_data="nodev,metacopy=on,lowerdir=/var/lib/containers/storage/overlay/l/LAOCFIHBLQ5ZHEGKPTYC6N36OP,upperdir=/var/lib/containers/storage/overlay/85b1b5186e0d6506db20d5a31b9ddbdea0627ff19e0c6a411d30f30a2d82b3de/diff,workdir=/var/lib/containers/storage/overlay/85b1b5186e0d6506db20d5a31b9ddbdea0627ff19e0c6a411d30f30a2d82b3de/work": invalid argument
2 -
TL;DR: these are Ubuntu 18.04 VMs, running on a KVM hypervisor
Sure. These are Ubuntu 18.04 VMs, based off of upstream provided base cloud image. They are running on a Ubuntu 20.04 hypervisor.
https://cloud-images.ubuntu.com/releases/bionic/release/ubuntu-18.04-server-cloudimg-amd64.img
Here is the virt-install script (for the 'worker' VM; the 'cp' script is the same except for the --name argument):
export OS_QCOW2=/var/lib/libvirt/images/worker.qcow2 scp /home/ubuntu/_images/ubuntu-18.04-server-cloudimg-amd64.img root@colo4:$OS_QCOW2 ssh root@colo4 qemu-img resize $OS_QCOW2 20G virt-install \ --connect qemu+ssh://root@colo4/system \ --import \ --virt-type kvm \ --name worker \ --ram 8192 \ --cpu host-model \ --vcpus 2 \ --network bridge=br0,model=virtio \ --disk path=$OS_QCOW2,format=qcow2 \ --os-type=linux \ --os-variant ubuntu18.04 \ --autostart \ --autoconsole text \ --cloud-init user-data=./user-data,meta-data=./meta-data
Post virt-install, this is running the following scripts from the 10-13 tarball:
- LFD259/SOLUTIONS/s_02/k8scp.sh
- LFD259/SOLUTIONS/s_02/k8sSecond.sh
The problem arises after the 'kubeadm join ...' command. I am reproducing this right now. The absence of the 'sed' line results in:
$ kubectl get pod -n kube-system NAME READY STATUS RESTARTS AGE calico-kube-controllers-75f8f6cc59-wj5rf 1/1 Running 0 12m calico-node-4knm9 1/1 Running 0 12m calico-node-5w7cd 0/1 Init:0/3 0 9m27s coredns-78fcd69978-26rtv 1/1 Running 0 12m coredns-78fcd69978-84hhb 1/1 Running 0 12m etcd-cp 1/1 Running 0 12m kube-apiserver-cp 1/1 Running 0 12m kube-controller-manager-cp 1/1 Running 0 12m kube-proxy-62qw2 0/1 ContainerCreating 0 9m27s kube-proxy-zbq87 1/1 Running 0 12m kube-scheduler-cp 1/1 Running 0 12m
0 -
Starting from scratch again, and restoring the 3 lines as shown in the diff in my original response, the problem goes away; the two "stuck" pods are created after a minute or so.
k get pod -n kube-system -w
calico-node-d99gh 1/1 Running 0 66s
Let me know if more is needed from me on this, I'm happy to help.
2 -
@kingphil said:
The line for /etc/containers/storage.conf needs to be restored. The absence of those lines ends up with the "worker" node failing to start up critical containers.diff --git a/SOLUTIONS/s_02/k8sSecond.sh b/SOLUTIONS/s_02/k8sSecond.sh index 44060c2..adc691f 100755 --- a/SOLUTIONS/s_02/k8sSecond.sh +++ b/SOLUTIONS/s_02/k8sSecond.sh @@ -49,6 +49,9 @@ sudo apt-get update # Install cri-o sudo apt-get install -y cri-o cri-o-runc podman buildah +# A bug fix to get past a cri-o update +sudo sed -i 's/,metacopy=on//g' /etc/containers/storage.conf + sleep 3 sudo systemctl daemon-reload
kube-system pod/calico-node-djwk2 0/1 Init:0/3 0 4m23s
kube-system pod/kube-proxy-dplzb 0/1 ContainerCreating 0 4m23s$ kubectl describe -n kube-system pod/calico-node-djwk2
Events: Type Reason Age From Message ---- ------ ---- ---- ------- Normal Scheduled 5m59s default-scheduler Successfully assigned kube-system/calico-node-djwk2 to worker Warning FailedCreatePodSandBox 5m56s kubelet Failed to create pod sandbox: rpc error: code = Unknown desc = failed to mount container k8s_POD_calico-node-djwk2_kube-system_7e9aa728-8fe9-4a29-bedf-40988dff8741_0 in pod sandbox k8s_calico-node-djwk2_kube-system_7e9aa728-8fe9-4a29-bedf-40988dff8741_0(9ba0a861831c3a59c3382e17221fc83a63c2240fe3d6e12f1e9ca9355915637e): error creating overlay mount to /var/lib/containers/storage/overlay/0ddf29c0abf8761cf2aa6c28c1f4022e3064636ecb9ea95c7b04bbe8f0bcd2e0/merged, mount_data="nodev,metacopy=on,lowerdir=/var/lib/containers/storage/overlay/l/LAOCFIHBLQ5ZHEGKPTYC6N36OP,upperdir=/var/lib/containers/storage/overlay/0ddf29c0abf8761cf2aa6c28c1f4022e3064636ecb9ea95c7b04bbe8f0bcd2e0/diff,workdir=/var/lib/containers/storage/overlay/0ddf29c0abf8761cf2aa6c28c1f4022e3064636ecb9ea95c7b04bbe8f0bcd2e0/work": invalid argument
$ kubectl describe -n kube-system pod/kube-proxy-dplzb
Events: Type Reason Age From Message ---- ------ ---- ---- ------- Normal Scheduled 7m33s default-scheduler Successfully assigned kube-system/kube-proxy-dplzb to worker Warning FailedCreatePodSandBox 7m30s kubelet Failed to create pod sandbox: rpc error: code = Unknown desc = failed to mount container k8s_POD_kube-proxy-dplzb_kube-system_7fc66509-09a3-46e2-b118-39a7fe9c3139_0 in pod sandbox k8s_kube-proxy-dplzb_kube-system_7fc66509-09a3-46e2-b118-39a7fe9c3139_0(9975181c1522f44afbb0b34af0f6bbadfc90e3cefff42cda4cc434fbb93c235b): error creating overlay mount to /var/lib/containers/storage/overlay/85b1b5186e0d6506db20d5a31b9ddbdea0627ff19e0c6a411d30f30a2d82b3de/merged, mount_data="nodev,metacopy=on,lowerdir=/var/lib/containers/storage/overlay/l/LAOCFIHBLQ5ZHEGKPTYC6N36OP,upperdir=/var/lib/containers/storage/overlay/85b1b5186e0d6506db20d5a31b9ddbdea0627ff19e0c6a411d30f30a2d82b3de/diff,workdir=/var/lib/containers/storage/overlay/85b1b5186e0d6506db20d5a31b9ddbdea0627ff19e0c6a411d30f30a2d82b3de/work": invalid argument
I agree with this. I am facing the same issue.
I am using Virtualbox on Windows 11 Host with Ubuntu 18.04 Guest.2 -
How come the course still uses the "master" term?
0 -
The Linux Foundation is fully on board with the "inclusive naming initiative" (https://inclusivenaming.org/ and has systematically implemented its guidelines every where it can in courses. Unfortunately, there are quite a few upstream projects that still use "master" and it is impossible to eliminate its use completely until they do, at which point the courses automatically will not be using these terms. It takes time, and even though CNCF is an initiator of the inclusive naming project, quite a few CNCF projects still use "master".
0 -
Faced this issue in Lab 2.3 I am running the nodes on GCP, ubuntu 18.04LTS.
0 -
@kingphil said:
The line for /etc/containers/storage.conf needs to be restored. The absence of those lines ends up with the "worker" node failing to start up critical containers.diff --git a/SOLUTIONS/s_02/k8sSecond.sh b/SOLUTIONS/s_02/k8sSecond.sh index 44060c2..adc691f 100755 --- a/SOLUTIONS/s_02/k8sSecond.sh +++ b/SOLUTIONS/s_02/k8sSecond.sh @@ -49,6 +49,9 @@ sudo apt-get update # Install cri-o sudo apt-get install -y cri-o cri-o-runc podman buildah +# A bug fix to get past a cri-o update +sudo sed -i 's/,metacopy=on//g' /etc/containers/storage.conf + sleep 3 sudo systemctl daemon-reload
kube-system pod/calico-node-djwk2 0/1 Init:0/3 0 4m23s
kube-system pod/kube-proxy-dplzb 0/1 ContainerCreating 0 4m23s$ kubectl describe -n kube-system pod/calico-node-djwk2
```
Confirming this post! Guys, please fix it in the "k8sSecond.sh", I have wasted more than an hour to figure out why the steps are not working on VMware fusion.
0 -
Hi @vardanm,
The step works successfully in some tested cloud settings - AWS and GCP, while it seems to misbehave during local installations.
Regards,
-Chris0 -
I believe I am experiencing this same issue still. @serewicz
0 -
Hi @t.white.ucf,
Are you following the latest release of the lab guide? The "metacopy" reference is no longer part of any of the installation scripts. The course content release referenced by this discussion is close to two years old.
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
- 976 Programming and Development
- 310 Kernel Development
- 648 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)

