kubeadm init hangs in GCP
I am stuck at step 11 in LAB 3.1. I get timeout error message. It seems my kubelet is not running.But I am exactly folloeing the steps given LAB 3.1.Thanks for the help.
https://lms.quickstart.com/custom/858487/LAB_3.1.pdf
Step 11: kubeadm init --pod-network-cidr 10.244.0.0/16
#################################
GCP VM Instance
ubuntu-1604-xenial-v20180724
################################
root@kmst:~# kubeadm init --pod-network-cidr 10.244.0.0/16
[init] Using Kubernetes version: v1.9.9[init] Using Authorization modes: [Node RBAC][preflight] Running pre-flight checks. [WARNING FileExisting-crictl]: crictl not found in system path[certificates] Generated ca certificate and key.[certificates] Generated apiserver certificate and key.[certificates] apiserver serving cert is signed for DNS names [kmst kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local] and IPs [10.96.0.1 10.138.0.2][certificates] Generated apiserver-kubelet-client certificate and key.[certificates] Generated sa key and public key.[certificates] Generated front-proxy-ca certificate and key.[certificates] Generated front-proxy-client certificate and key.[certificates] Valid certificates and keys now exist in "/etc/kubernetes/pki"[kubeconfig] Wrote KubeConfig file to disk: "admin.conf"[kubeconfig] Wrote KubeConfig file to disk: "kubelet.conf"[kubeconfig] Wrote KubeConfig file to disk: "controller-manager.conf"[kubeconfig] Wrote KubeConfig file to disk: "scheduler.conf"[controlplane] Wrote Static Pod manifest for component kube-apiserver to "/etc/kubernetes/manifests/kube-apiserver.yaml"[controlplane] Wrote Static Pod manifest for component kube-controller-manager to "/etc/kubernetes/manifests/kube-controller-manager.yaml"[controlplane] Wrote Static Pod manifest for component kube-scheduler to "/etc/kubernetes/manifests/kube-scheduler.yaml"[etcd] Wrote Static Pod manifest for a local etcd instance to "/etc/kubernetes/manifests/etcd.yaml"[init] Waiting for the kubelet to boot up the control plane as Static Pods from directory "/etc/kubernetes/manifests".[init] This might take a minute or longer if the control plane images have to be pulled.
################################
GCP VM Instance logs:
Jul 30 08:02:36 kmst kubelet[10727]: W0730 08:02:36.633131 10727 status_manager.go:459] Failed to get status for pod "kube-apiserver-kmst_kube-system(240e2d8ec75db9f607a9a31f5374f462)": Get https://10.138.0.2:6443/api/v1/namespaces/kube-system/pods/kube-apiserver-kmst: net/http: TLS handshake timeout Jul 30 08:02:39 kmst kubelet[10727]: E0730 08:02:39.063159 10727 reflector.go:205] k8s.io/kubernetes/pkg/kubelet/kubelet.go:465: Failed to list *v1.Service: Get https://10.138.0.2:6443/api/v1/services?limit=500&resourceVersion=0: net/http: TLS handshake timeout Jul 30 08:02:39 kmst kubelet[10727]: E0730 08:02:39.228891 10727 kubelet.go:1607] Failed creating a mirror pod for "etcd-kmst_kube-system(408851a572c13f8177557fdb9151111c)": Post https://10.138.0.2:6443/api/v1/namespaces/kube-system/pods: net/http: TLS handshake timeout Jul 30 08:02:39 kmst kubelet[10727]: E0730 08:02:39.432891 10727 reflector.go:205] k8s.io/kubernetes/pkg/kubelet/config/apiserver.go:47: Failed to list *v1.Pod: Get https://10.138.0.2:6443/api/v1/pods?fieldSelector=spec.nodeName%3Dkmst&limit=500&resourceVersion=0: net/http: TLS handshake timeout Jul 30 08:02:39 kmst kubelet[10727]: E0730 08:02:39.435314 10727 reflector.go:205] k8s.io/kubernetes/pkg/kubelet/kubelet.go:474: Failed to list *v1.Node: Get https://10.138.0.2:6443/api/v1/nodes?fieldSelector=metadata.name%3Dkmst&limit=500&resourceVersion=0: net/http: TLS handshake timeout Jul 30 08:02:39 kmst kubelet[10727]: E0730 08:02:39.595262 10727 kubelet_node_status.go:383] Error updating node status, will retry: error getting node "kmst": Get https://10.138.0.2:6443/api/v1/nodes/kmst: net/http: TLS handshake timeout
Comments
-
Hi,
Similar errors are seen when there isn't enough vCPU available on the master instance. To fix the vCPU issue ensure that the instance type has at least 2 vCPUs. Also, enable all traffic by allowing full access, allowing HTTP/HTTPS, and check that the firewall is inactive/disabled:
sudo ufw statusRegards,
-Chris
0 -
Thanks Chris. Issue resolved with new master instance with given spec.
0 -
Same here:
[wait-control-plane] Waiting for the kubelet to boot up the control plane as static Pods from directory "/etc/kubernetes/manifests". This can take up to 4m0s
than:
Unfortunately, an error has occurred:
timed out waiting for the conditionThis error is likely caused by: - The kubelet is not running - The kubelet is unhealthy due to a misconfiguration of the node in some way (required cgroups disabled) If you are on a systemd-powered system, you can try to troubleshoot the error with the following commands: - 'systemctl status kubelet' - 'journalctl -xeu kubelet' Additionally, a control plane component may have crashed or exited when started by the container runtime. To troubleshoot, list all containers using your preferred container runtimes CLI. Here is one example how you may list all Kubernetes containers running in docker: - 'docker ps -a | grep kube | grep -v pause' Once you have found the failing container, you can inspect its logs with: - 'docker logs CONTAINERID'couldn't initialize a Kubernetes cluster'
Output of journalctl -xeu kubelet:
19445 kubelet_node_status.go:71] "Attempting to register node" node="master"
2197 19445 kubelet_node_status.go:93] "Unable to register node with API server" err="Post \"https://k8master:6
0904 19445 kubelet.go:2291] "Error getting node" err="node \"master\" not found"Firewall is off. I' using the recommended GC-Setup
0 -
EDIT:
SOLVED (it was a typo, forgot the "s" after k8")
apiVersion: kubeadm.k8s.io/v1beta2
kind: ClusterConfiguration
kubernetesVersion: 1.21.0
controlPlaneEndpoint: "k8smaster:6443"
networking:
podSubnet: 192.168.0.0/160
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
- 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
- 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
- 984 Software
- 376 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)
