kubeadm init
kubeadm init --config=kubeadm-config.yaml --upload-certs | tee kubeadm-init.out
W0206 18:09:08.995885 39990 strict.go:54] error unmarshaling configuration schema.GroupVersionKind{Group:"kubeadm.k8s.io", Version:"v1beta2", Kind:"ClusterConfiguration"}: error unmarshaling JSON: while decoding JSON: json: cannot unmarshal number into Go struct field ClusterConfiguration.networking of type v1beta2.Networking
v1beta2.ClusterConfiguration.Networking: readObjectStart: expect { or n, but found 6, error found in #10 byte of ...|working":6,"podSubne|..., bigger context ...|ation","kubernetesVersion":"1.16.1","networking":6,"podSubnet":"192.168.0.0/16"}|...
To see the stack trace of this error execute with --v=5 or higher
who could help me.
Comments
-
Hi @etofran810,
Similar errors have been reported when the
kubeadm-config.yamlfile was not properly formatted. During the copy/paste process, the line numbers (1 through 6) may get copied over, causing errors during the YAML to JSON conversion. In other cases, the last line of the file may end up left-aligned, when it should be indented two spaces to the right.Please review your file and ensure there are no line numbers, and that all fields are specified and indented as expected.
Regards,
-Chris0 -
ok , I modified file and now I have the follow error
error converting YAML to JSON: yaml: line 6: mapping values are not allowed in this context
apiVersion: kubeadm.k8s.io/v1beta2
kind: ClusterConfiguration
kubernetesVersion: 1.16.1 #<-- Use the word stable for newest version
controlPlaneEndpoint: "k8smaster:6443" #<-- Use the node alias not the IP
networking: 6
podSubnet: 192.168.0.0/16my IP is ens33 inet 192.168.116.130/24
0 -
Your file includes extra characters, producing YAML parsing errors.
Also, thepodSubnet: ...line seems to not be indented as expected, but it could be just the forum editor removing the two expected blank spaces when pasting the text in the comment field.It also appears that your host IP overlaps the pod subnet. This could cause serious issues when bootstrapping your cluster. In order to avoid such issues, I would suggest modifying either your host IPs in your hypervisor's configuration, OR keep the host IPs as they are but modify the
podSubnet:value in thekubeadm-config.yamlfile together with the value ofCALICO_IP4POOL_CIDRin thecalico.yamlfile, which is presented in the YAML code block of step 9 of lab exercise 3.1.Regards,
-Chris0 -
Hi @chrispokorni,
Sorry to comment on this old thread but seeing same issue while trying to run a command:
kubeadm init --config=kubeadm-config.yaml --upload-certs | tee kubeadm-init.out****result is an error, like below:****
_root@cp:~# kubeadm init --config=kubeadm-config.yaml --upload-certs | tee kubeadm-init.out
could not interpret GroupVersionKind; unmarshal error: error converting YAML to JSON: yaml: line 4: could not find expected ':'
To see the stack trace of this error execute with --v=5 or higher
root@cp:~# _The kubeadm-config.yaml contents is below and I see same while comparing to the PDF that is in the course.

Could you please point me what is wrong with this content that the command is complaining about?
Thanks,
Gaurav0 -
It had a number (1 through 6) in the contents and was seeing same error. I didn't had a space in line 4 betwen ':' and quote before and was seeing same error. Now removed numbers and gave a space and same error. Actually I have tried multiple times and could get it work. However, if I just run a command:
sudo kubeadm init --pod-network-cidr=192.168.0.0/16
then I am able to proceed further.
0 -
Hi @gaurav4978,
As you can see, YAML syntax for Kubernetes follows very strict rules for spacing, indentation, and it is case sensitive.
The line numbers, expected space after ':', the missing 2 spaces before 'podSubnet', they all collectively caused YAML to JSON conversion error message.
These errors are common when the content is extracted from the PDF lab guide via copy/paste. In order to prevent these types of issues, you have a SOLUTIONS tarball that you may have downloaded in an earlier step, which includes config files, scripts, and definition files needed for labs. I would recommend navigating through the content of the SOLUTIONS subdirectory to familiarize yourself and find desired artifacts.
The short command to
initthe control-plane works as a last resort, but it does not initialize the cluster in a manner consistent with the exercises in the lab guide, and you will get to see different results for some steps, while others may not work as intended. This is why thekubeadm-config.yamlfile was provided, to customize the cluster's bootstrapping process.Regards,
-Chris0 -
Thanks Chris!
I have heard about this "SOLUTIONS tarball" being used before. But I am noob on this that I could not locate it at all.
This is how it looks on my end in web GUI. Could you help me to point where I should be looking to find this file, scripts, profiles whatever it is.
Thank you!0 -
Hi @gaurav4978,
If you compare closely the YAML content provided earlier with the content from the PDF, you will see there are differences critical to the expected format of the
kubeadm-config.yamlfile.If you read carefully the Overview section of Lab Exercise 3.1, you will find instructions on how to download the tarball and how to extract it.
Regards,
-Chris0 -
hi, I neep help, I have executed kubeadm init and have the follow issue
I modified the file and now is ok
0 -
Hi there,
Hi all,
I'm facing a similar problem and can't seem to get past it. Here's how my file looks like:
root...~# cat kubeadm-config.yaml
apiVersion: kubeadm.k8s.io/v1beta3
kind: ClusterConfiguration
kubernetesVersion: 1.24.1
controlPlaneEndpoint: "k8scp:6443"
networking:
podSubnet: 192.168.0.0/16root...~# kubeadm init --config=kubeadm-config.yaml --upload-certs | tee kubeadm-init.out
[init] Using Kubernetes version: v1.24.1
[preflight] Running pre-flight checks
[WARNING SystemVerification]: missing optional cgroups: blkio
error execution phase preflight: [preflight] Some fatal errors occurred:
[ERROR CRI]: container runtime is not running: output: time="2023-03-05T02:28:30Z" level=fatal msg="validate service connection: CRI v1 runtime API is not implemented for endpoint \"unix:///var/run/containerd/containerd.sock\": rpc error: code = Unimplemented desc = unknown service runtime.v1.RuntimeService"
, 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 higherThanks for any tips
0 -
Hi @edsonz,
Your issue seems to be different, related to the runtime configuration.
Please download the latest release of the lab guide from 03-01-2023, and follow the updated installation steps, paying close attention to the containerd runtime installation and configuration steps prior to installing Kubernetes components and initializing the control plane.
Regards,
-Chris1 -
One small addition from me as I encountered the same issue during the course.
I had the same error with example below:--- apiVersion: kubeadm.k8s.io/v1beta4 kind: ClusterConfiguration kubernetesVersion: 1.34 controlPlaneEndpoint: k8scp:6443 networking: podSubnet: 192.168.0.0/16
And the issue was that kubernetesVersion shouldn't be a number and was treated as one. Need to put it inside quotes or add .0 there.
Working version:--- apiVersion: kubeadm.k8s.io/v1beta4 kind: ClusterConfiguration kubernetesVersion: 1.34.0 controlPlaneEndpoint: k8scp:6443 networking: podSubnet: 192.168.0.0/16
0 -
Hi @gskornowicz,
You are correct, proper syntax is very important in configuration manifests. Remember to inspect the working manifests supplied to you in the SOLUTIONS tarball.
Regards,
-Chris0
Categories
- All Categories
- 177 LFX Mentorship
- 177 LFX Mentorship: Linux Kernel
- 750 Linux Foundation IT Professional Programs
- 373 Cloud Engineer IT Professional Program
- 169 Advanced Cloud Engineer IT Professional Program
- 74 DevOps IT Professional Program - Discontinued
- 4 DevOps & GitOps IT Professional Program
- 99 Cloud Native Developer IT Professional Program
- 7.6K Training Courses & Learning Paths
- 1 AI & ML Training
- 1 Blockchain & Decentralized Identity Training
- 4 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
- 1 System Administration Training
- 1 System Engineering Training
- 1 Web & Application Development Training
- 792 Hardware
- 202 Drivers
- 68 I/O Devices
- 37 Monitors
- 95 Multimedia
- 173 Networking
- 91 Printers & Scanners
- 87 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
- 106 Mobile Computing
- 18 Android
- 73 Development
- 1.2K New to Linux
- 1K Getting Started with Linux
- 392 Off Topic
- 121 Introductions
- 181 Small Talk
- 29 Study Material
- 955 Programming and Development
- 310 Kernel Development
- 627 Software Development
- 983 Software
- 375 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)
