Kubeadm join to control node from worker node failing with api server error
Hi,
I following the chapter 2 exercise and getting following error while joining to master node,
I am using Virtualbox in my local system to configure control/worker node,
Virtualbox version : 7.0.12
Ubuntu : 20.04
user: root
FYI : I have reset my cluster and token multiple times and still getting the same error.
oot@k8s-worker:/home/vboxuser# kubeadm join 10.0.2.15:6443 --token iws0jd.mgsxezm7b4qktodl --discovery-token-ca-cert-hash sha256:22bc9c5b582ca41b8ca43694e32a8b1ef5586742996384e178d73f0302e21196
[preflight] Running pre-flight checks
[WARNING Swap]: swap is enabled; production deployments should disable swap unless testing the NodeSwap feature gate of the kubelet
error execution phase preflight: couldn't validate the identity of the API Server: Get "https://10.0.2.15:6443/api/v1/namespaces/kube-public/configmaps/cluster-info?timeout=10s": dial tcp 10.0.2.15:6443: connect: connection refused
To see the stack trace of this error execute with --v=5 or higher
root@k8s-worker:/home/vboxuser#
Best Answers
-
Hi @krishnasan,
The swap warning seems odd because the k8sWorker.sh script is expected to disable swap on the worker node. Did you happen to notice any errors or failures during the execution of that script?
Are the private IP addresses of vbox VMs on the same subnet? Is each VM set with one bridged adapter, with promiscuous mode enabled to allow all traffic? Are the VMs of 2 vCPUs, 6-8 GB RAM and 20 GB disk?
To generate a valid join command with a new token, on the control plane run as
root(or prefix withsudoif running asvboxusernon-root user):root@cp:~$
kubeadm token create --print-join-commandAfter an unsuccessful join, the worker node needs to be reset by
rootwith (or prefix withsudoif run asvboxusernon-root user):root@worker:~$
kubeadm resetThen run the entire
joincommand again asroot(or prefix withsudoif run asvboxusernon-root user):root@worker:~$
kubeadm join ...Regards,
-Chris0 -
Hi @chrispokorni,
Created a new VirtualBox's with the promiscuous mode enabled solved the issue.
When I follow the Lab 2.3 basic pod creation, the Pod is creating in the worker node though I enabled taint in the control node.

Is this expected behavior?
0 -
Hi @krishnasan,
Removing the control plane taint from the cp node enables it for user pod scheduling, thus being treated as a worker node by the kube-scheduler agent.
In earlier labs it is expected to have user pods scheduled on the worker node, but in later lab exercises the behavior may be more random when both nodes (cp and worker) will evenly share cluster workload.
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)