Lingkungan saya:
CentOS7 linux
/etc/hosts:
192.168.0.106 master01
192.168.0.107 simpul02
192.168.0.108 simpul01
Pada mesin master01:
/etc/nama host:
master01
Pada mesin master01 saya menjalankan perintah sebagai berikut:
1)yum install docker-ce kubelet kubeadm kubectl
2) systemctl start docker.service
3)vim /etc/sysconfig/kubelet
EDIT filenya:
KUBELET_EXTRA_ARGS="--fail-swap-on=false"
4) systemctl aktifkan kubelet buruh pelabuhan
5)kubeadm init --kubernetes-version=v1.12.0 --pod-network-cidr=10.244.0.0/16 servicecidr=10.96.0.0/12 --ignore-preflight-errors=all
KEMUDIAN
E1002 23:32:36.072441 49157 kubelet.go:2236] simpul "master01" tidak ditemukan
E1002 23:32:36.172630 49157 kubelet.go:2236] simpul "master01" tidak ditemukan
E1002 23:32:36.273892 49157 kubelet.go:2236] simpul "master01" tidak ditemukan
time="2018-10-02T23:32:36+08:00" level=info msg="shim docker-containerd-shim start" address="/containerd-shim/moby/52fbcdb7864cdf8039ded99b501447f13ba81a3897579fb64581c855653f369a/debughim.shim.shim pid=49212
E1002 23:32:36.359984 49157 reflector.go:134] k8s.io/kubernetes/pkg/kubelet/kubelet.go:451: Gagal daftar *v1.Node: Dapatkan https://192.168.0.106 :6443/api/ v1/nodes?fieldSelector=metadata.name%3Dmaster01&limit=500&resourceVersion=0: tekan tcp 192.168.0.106:6443: sambungkan: sambungan ditolak
I1002 23:32:36.377368 49157 kubelet_node_status.go:276] Mengatur anotasi simpul untuk mengaktifkan pengontrol volume pasang/lepas
E1002 23:32:36.380290 49157 kubelet.go:2236] simpul "master01" tidak ditemukan
E1002 23:32:36.380369 49157 reflector.go:134] k8s.io/kubernetes/pkg/kubelet/config/apiserver.go:47: Gagal daftar *v1.Pod: Dapatkan https://192.168.0.106 :6443/ api/v1/pods?fieldSelector=spec.nodeName%3Dmaster01&limit=500&resourceVersion=0: tekan tcp 192.168.0.106:6443: sambungkan: sambungan ditolak
E1002 23:32:36.380409 49157 reflector.go:134] k8s.io/kubernetes/pkg/kubelet/kubelet.go:442: Gagal mendaftar *v1.Layanan: Dapatkan https://192.168.0.106 :6443/api/ v1/services?limit=500&resourceVersion=0: tekan tcp 192.168.0.106:6443: sambungkan: sambungan ditolak
time="2018-10-02T23:32:36+08:00" level=info msg="shim docker-containerd-shim dimulai" address="/containerd-shim/moby/f621eca36ce85e815172c37195ae7ac929112c84f3e37d16dd39c7e44ab13bock"/debug.shim. pid=49243
I1002 23:32:36.414930 49157 kubelet_node_status.go:70] Mencoba mendaftarkan node master01
E1002 23:32:36.416627 49157 kubelet_node_status.go:92] Tidak dapat mendaftarkan node "master01" dengan server API: Posting https://192.168.0.106 :6443/api/v1/nodes: dial tcp 192.168.0.106:6443: connect : koneksi ditolak
time="2018-10-02T23:32:36+08:00" level=info msg="shim docker-containerd-shim dimulai" address="/containerd-shim/moby/db3f5acb415581d85aef199bea3f85432437c7ef00d357dca1b5684ed95b5591"/shim. pid=49259
E1002 23:32:36.488013 49157 kubelet.go:2236] simpul "master01" tidak ditemukan
time="2018-10-02T23:32:36+08:00" level=info msg="shim docker-containerd-shim dimulai" address="/containerd-shim/moby/505110c39ed4cd5b3fd4fb863012017a71fa782671ead943491afbf38310ffe0/shim.seock" pid=49275
E1002 23:32:36.588919 49157 kubelet.go:2236] simpul "master01" tidak ditemukan
E1002 23:32:36.691338 49157 kubelet.go:2236] simpul "master01" tidak ditemukan
Aku telah mencoba berkali-kali!
Pesan kesalahan pertama: tidak dapat memuat file CA klien /etc/kubernetes/pki/ca.crt: open /etc/kubernetes/pki/ca.crt: no such file or directory
Pesan kesalahan pertama: tidak dapat memuat file CA klien /etc/kubernetes/pki/ca.crt: open /etc/kubernetes/pki/ca.crt: no such file or directory
hai, ini ada beberapa pertanyaan:
1) apakah kubeadm init selesai dan apakah itu mencetak token boostrap?
2) versi runtime kontainer?
3) apakah kubelet dan kubeadm versi 1.12?
/prioritas kebutuhan-lebih-bukti
perlu menjalankan systemctl start kubelet sebelum kubeadm init
Saya mengalami masalah yang sama, karena inti cangkir kurang dari 2
masalah yang sama
@javacppc bagaimana Anda menyelesaikan ini? Ketika saya menjalankan systemctl start kubelet saya mendapatkan error code
masalah yang sama dengan kubernetes 1.12.2.
@Javacppc bagaimana Anda menyelesaikan ini?
masalah yang sama
masalah yang sama
Hallo teman-teman,
Saya menghadapi masalah yang sama di sini, ketika saya memulai cluster, saya mendapat pesan dari token, tetapi saya tidak dapat menginstal cloud weave:
kubectl apply -f "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d '\n')"
The connection to the server 192.168.56.104:6443 was refused - did you specify the right host or port?
Ketika saya pergi ke log saya mendapat pesan tentang nama node:
Dec 02 22:27:55 kubemaster5 kubelet[2838]: E1202 22:27:55.128645 2838 kubelet.go:2236] node "kubemaster5" not found
Adakah yang bisa tolong kirimkan saya cahaya?
Terima kasih!
masalah saya terpecahkan dan sebenarnya itu bukan bug, itu karena apiserver gagal memulai karena suatu alasan.
"apiserver gagal memulai karena suatu alasan"? Bisakah Anda memberikan beberapa detail??
Saya memecahkan masalah saya beberapa hari yang lalu. Perbarui dari 1.11.4 -> 1.12.3. Aku mendapat:
api-server
- berjalan di antarmuka virtual tertentu dengan jaringannya sendiri. ( baja-logam ).kubeadm init/join
dengan flag apiserver-advertise-address
itu dimulai pada antarmuka tertentu, tetapi paket dengan pengaturan/pemeriksaan kesehatan berjalan melalui rute standar tabel perutean (antarmuka default). Membantu parameter bind-address
di /etc/kubernetes/manifests/kube-apiserver.yaml
dengan mengikat ke IP antarmuka virtual.flannel
- situasi yang sama dengan jaringan setelah membuat controller
, scheduler
pod. Penyebaran DNS gagal karena connection refused
ke clusterIP server api 10.96.0.1:443
. (tabel perutean default) Saya menetapkan node-ip
node cluster dengan menandai --node-ip
di /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
dengan IP antarmuka virtual.Setelah ini saya sudah menyiapkan node dengan versi 1.12.3. Informasi yang paling membantu ada di docker logs + kubectl logs
masalah yang sama di sini dengan v1.13.0
Masalah yang sama di sini dengan Kubernetes v1.13.0
CentOS 7
docker-ce 18.06 (versi tervalidasi terbaru)
buruh pelabuhan: aktif, berjalan
kubelet: aktif, berlari
selinux: dinonaktifkan
firewalld: dinonaktifkan
KESALAHAN adalah:
kubelet[98023]: E1212 21:10:01.708004 98023 kubelet.go:2266] node "node1" not found
/etc/hosts berisi simpul, dapat di-pinge, dapat dijangkau -- sebenarnya melakukan pekerja tunggal master-tunggal (yaitu simpul tercemar).
Di mana K8S mencari nilai ini? di /etc/hosts?
Saya dapat memecahkan masalah dan memberikan lebih banyak bukti jika diperlukan.
-> apakah kubeadm init selesai dan apakah itu mencetak token boostrap?
Itu selesai dengan kesalahan panjang:
[certs] Generating "etcd/server" certificate and key
[certs] etcd/server serving cert is signed for DNS names [node1 localhost] and IPs [10.10.128.186 127.0.0.1 ::1]
[certs] Generating "etcd/peer" certificate and key
[certs] etcd/peer serving cert is signed for DNS names [node1 localhost] and IPs [10.10.128.186 127.0.0.1 ::1]
[certs] Generating "etcd/healthcheck-client" certificate and key
[certs] Generating "apiserver-etcd-client" certificate and key
[certs] Generating "sa" key and public key
[kubeconfig] Using kubeconfig folder "/etc/kubernetes"
[kubeconfig] Writing "admin.conf" kubeconfig file
[kubeconfig] Writing "kubelet.conf" kubeconfig file
[kubeconfig] Writing "controller-manager.conf" kubeconfig file
[kubeconfig] Writing "scheduler.conf" kubeconfig file
[control-plane] Using manifest folder "/etc/kubernetes/manifests"
[control-plane] Creating static Pod manifest for "kube-apiserver"
[control-plane] Creating static Pod manifest for "kube-controller-manager"
[control-plane] Creating static Pod manifest for "kube-scheduler"
[etcd] Creating static Pod manifest for local etcd in "/etc/kubernetes/manifests"
[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
[kubelet-check] Initial timeout of 40s passed.
Unfortunately, an error has occurred:
timed out waiting for the condition
This 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, e.g. docker.
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'
error execution phase wait-control-plane: couldn't initialize a Kubernetes cluster
CATATAN: Tak satu pun dari perintah yang disarankan setelah batas waktu melaporkan sesuatu yang layak disebutkan di sini.
versi kubelet dan kubeadm?
---> 1.13.0
kubeadm versi: &version.Info{Mayor:"1", Minor:"13", GitVersion:"v1.13.0", GitCommit:"ddf47ac13c1a9483ea035a79cd7c10005ff21a6d", GitTreeState:"clean", BuildDate:"2018-12-03T21:02: 01Z", GoVersion:"go1.11.2", Kompilator:"gc", Platform:"linux/amd64"}
Juga, bukankah seharusnya menyetel pesan kesalahan yang lebih baik daripada "simpul tidak ditemukan" dengan sedikit kejelasan/verbositas di log kube?
Terima kasih
Masalah yang sama...
$ systemctl status kubelet
● kubelet.service - kubelet: The Kubernetes Node Agent
Loaded: loaded (/lib/systemd/system/kubelet.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/kubelet.service.d
└─10-kubeadm.conf
Active: active (running) since Fri 2018-12-14 19:05:47 UTC; 2min 2s ago
Docs: https://kubernetes.io/docs/home/
Main PID: 9114 (kubelet)
Tasks: 23 (limit: 4915)
CGroup: /system.slice/kubelet.service
└─9114 /usr/bin/kubelet --bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf --config=/var/lib/kubelet/config.yaml --cgroup-d
Dec 14 19:07:49 pineview kubelet[9114]: E1214 19:07:49.862262 9114 kuberuntime_manager.go:657] createPodSandbox for pod "kube-scheduler-pineview_kube-system(7f99b6875de942b000954351c4a
Dec 14 19:07:49 pineview kubelet[9114]: E1214 19:07:49.862381 9114 pod_workers.go:186] Error syncing pod 7f99b6875de942b000954351c4ac09b5 ("kube-scheduler-pineview_kube-system(7f99b687
Dec 14 19:07:49 pineview kubelet[9114]: E1214 19:07:49.906855 9114 remote_runtime.go:96] RunPodSandbox from runtime service failed: rpc error: code = Unknown desc = failed to start san
Dec 14 19:07:49 pineview kubelet[9114]: E1214 19:07:49.906944 9114 kuberuntime_sandbox.go:65] CreatePodSandbox for pod "etcd-pineview_kube-system(b7841e48f3e7b81c3cda6872104ba3de)" fai
Dec 14 19:07:49 pineview kubelet[9114]: E1214 19:07:49.906981 9114 kuberuntime_manager.go:657] createPodSandbox for pod "etcd-pineview_kube-system(b7841e48f3e7b81c3cda6872104ba3de)" fa
Dec 14 19:07:49 pineview kubelet[9114]: E1214 19:07:49.907100 9114 pod_workers.go:186] Error syncing pod b7841e48f3e7b81c3cda6872104ba3de ("etcd-pineview_kube-system(b7841e48f3e7b81c3c
Dec 14 19:07:49 pineview kubelet[9114]: E1214 19:07:49.933627 9114 kubelet.go:2236] node "pineview" not found
Dec 14 19:07:50 pineview kubelet[9114]: E1214 19:07:50.033880 9114 kubelet.go:2236] node "pineview" not found
Dec 14 19:07:50 pineview kubelet[9114]: E1214 19:07:50.134064 9114 kubelet.go:2236] node "pineview" not found
Dec 14 19:07:50 pineview kubelet[9114]: E1214 19:07:50.184943 9114 event.go:212] Unable to write event: 'Post https://192.168.1.235:6443/api/v1/namespaces/default/events: dial tcp 192.
Masalah yang sama:
Ubuntu 18.04.1 LTS
Kubernetes v1.13.1 (menggunakan cri-o 1.11)
Ikuti petunjuk penginstalan di kubernetes.io:
https://kubernetes.io/docs/setup/independent/install-kubeadm/
https://kubernetes.io/docs/setup/cri/#cri -o
systemctl enable kubelet.service
kubeadm init --pod-network-cidr=192.168.0.0/16 --cri-socket=/var/run/crio/crio.sock
/etc/hosts
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
127.0.1.1 master01.mydomain.tld master01
::1 master01.mydomain.tld master01
/etc/hostname
systemctl status kubelet
● kubelet.service - kubelet: The Kubernetes Node Agent
Loaded: loaded (/lib/systemd/system/kubelet.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/kubelet.service.d
└─10-kubeadm.conf
Active: active (running) since Tue 2018-12-18 16:19:54 CET; 20min ago
Docs: https://kubernetes.io/docs/home/
Main PID: 10148 (kubelet)
Tasks: 21 (limit: 2173)
CGroup: /system.slice/kubelet.service
└─10148 /usr/bin/kubelet --bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf --config=/var/lib/kubelet/config.yaml --container-runtime=remote --container-runtime-endpoint=/var/run/crio/crio.sock --resolv-conf=/run/systemd/resolve/resolv.conf
Dec 18 16:40:52 master01 kubelet[10148]: E1218 16:40:52.795313 10148 kubelet.go:2266] node "master01" not found
Dec 18 16:40:52 master01 kubelet[10148]: E1218 16:40:52.896277 10148 kubelet.go:2266] node "master01" not found
Dec 18 16:40:52 master01 kubelet[10148]: E1218 16:40:52.997864 10148 kubelet.go:2266] node "master01" not found
Dec 18 16:40:53 master01 kubelet[10148]: E1218 16:40:53.098927 10148 kubelet.go:2266] node "master01" not found
Dec 18 16:40:53 master01 kubelet[10148]: E1218 16:40:53.200355 10148 kubelet.go:2266] node "master01" not found
Dec 18 16:40:53 master01 kubelet[10148]: E1218 16:40:53.281586 10148 reflector.go:134] k8s.io/kubernetes/pkg/kubelet/config/apiserver.go:47: Failed to list *v1.Pod: Get https://192.168.178.27:6443/api/v1/pods?fieldSelector=spec.nodeName%3Dmaster01limit=500&resourceVersion=0: dial tcp 192.168.178.27:6443: connect: connection refused
Dec 18 16:40:53 master01 kubelet[10148]: E1218 16:40:53.282143 10148 reflector.go:134] k8s.io/kubernetes/pkg/kubelet/kubelet.go:444: Failed to list *v1.Service: Get https://192.168.178.27:6443/api/v1/services?limit=500&resourceVersion=0: dial tcp 192.168.178.27:6443: connect: connection refused
Dec 18 16:40:53 master01 kubelet[10148]: E1218 16:40:53.283945 10148 reflector.go:134] k8s.io/kubernetes/pkg/kubelet/kubelet.go:453: Failed to list *v1.Node: Get https://192.168.178.27:6443/api/v1/nodes?fieldSelector=metadata.name%3Dmaster01limit=500&resourceVersion=0: dial tcp 192.168.178.27:6443: connect: connection refused
Dec 18 16:40:53 master01 kubelet[10148]: E1218 16:40:53.301468 10148 kubelet.go:2266] node "master01" not found
Dec 18 16:40:53 master01 kubelet[10148]: E1218 16:40:53.402256 10148 kubelet.go:2266] node "master01" not found
@fhemberger saya menemukan masalah saya. Itu menggunakan snap
untuk menginstal Docker. Jika saya menghapusnya dan menginstal ulang menggunakan apt
, maka kubeadm berfungsi dengan baik.
@cjbottaro Saya tidak menggunakan Docker sama sekali kecuali cri-o.
masalah yang sama di sini dengan v1.13.1
Jika Anda menggunakan systemd dan cri-o, pastikan untuk menyetelnya sebagai driver cgroup di /var/lib/kubelet/config.yaml
(atau berikan cuplikan di bawah ini sebagai bagian dari kubeadm init --config=config.yaml
).
apiVersion: kubelet.config.k8s.io/v1beta1
kind: KubeletConfiguration
cgroupDriver: systemd
Jika Anda melihat ini di log kubelet Anda:
remote_runtime.go:96] RunPodSandbox from runtime service failed: rpc error: code = Unknown desc = cri-o configured with systemd cgroup manager, but did not receive slice as parent: /kubepods/besteffort/…
Saya bertemu masalah yang sama hari ini.
Saya memperbaikinya dengan menghapus rm -rf /var/lib/kubelet/ dan menginstal ulang
@JishanXing terima kasih! Ini juga menyelesaikan masalah saya untuk menjalankan di Raspbian Sketch lite
Saya memperbaikinya dengan menghapus /etc/systemd/system/kubelet.service.d/20-etcd-service-manager.conf
Akan lebih baik menggunakan perintah kubeadm reset
.
@fhemberger bagaimana menyelesaikannya pertanyaan yang sama, terima kasih
Saya menemui masalah yang sama ketika saya memutakhirkan k8s dari 1.13.3 ke 1.13.4 ...
Saya menyelesaikannya setelah saya mengedit /etc/kubernetes/manifests/kube-scheduler.yaml
. Ubah versi gambar
image: k8s.gcr.io/kube-scheduler:v1.13.3 ==> image: k8s.gcr.io/kube-scheduler:v1.13.4
sama dengan kube-controller-manager.yaml dan kube-apiserver.yaml.
Cara terbaru adalah menambahkan opsi --image-repository registry.aliyuncs.com/google_containers , versi k8s saya adalah 1.14.0, docker Versi: 18.09.2,
` kubeadm init --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.14.0 --pod-network-cidr=192.168.0.0/16
[init] Menggunakan versi Kubernetes: v1.14.0
[preflight] Menjalankan pemeriksaan pra-penerbangan
[PERINGATAN IsDockerSystemdCheck]: mendeteksi "cgroupfs" sebagai driver cgroup Docker. Driver yang disarankan adalah "systemd". Silakan ikuti panduan di https://kubernetes.io/docs/setup/cri/
[preflight] Diperlukan pengambilan gambar untuk menyiapkan cluster Kubernetes
[preflight] Ini mungkin memakan waktu satu atau dua menit, tergantung pada kecepatan koneksi internet Anda
[preflight] Anda juga dapat melakukan tindakan ini sebelumnya menggunakan 'kubeadm config images pull'
[kubelet-start] Menulis file lingkungan kubelet dengan flag ke file "/var/lib/kubelet/kubeadm-flags.env"
[kubelet-start] Menulis konfigurasi kubelet ke file "/var/lib/kubelet/config.yaml"
[kubelet-start] Mengaktifkan layanan kubelet
[certs] Menggunakan folder certificateDir "/etc/kubernetes/pki"
[certs] Membuat sertifikat dan kunci "front-proxy-ca"
[certs] Membuat sertifikat dan kunci "proxy-klien depan"
[sertifikat] Menghasilkan sertifikat dan kunci "ca"
[certs] Membuat sertifikat dan kunci "apiserver"
[certs] apiserver serve cert ditandatangani untuk nama DNS [jin-virtual-machine kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local] dan IP [10.96.0.1 192.168.232.130]
[certs] Membuat sertifikat dan kunci "apiserver-kubelet-client"
[certs] Membuat sertifikat dan kunci "etcd/ca"
[certs] Membuat sertifikat dan kunci "etcd/server"
[certs] etcd/server serve cert ditandatangani untuk nama DNS [jin-virtual-machine localhost] dan IP [192.168.232.130 127.0.0.1 ::1]
[certs] Membuat sertifikat dan kunci "etcd/peer"
[certs] etcd/peer serve cert ditandatangani untuk nama DNS [jin-virtual-machine localhost] dan IP [192.168.232.130 127.0.0.1 ::1]
[certs] Membuat sertifikat dan kunci "apiserver-etcd-client"
[certs] Membuat sertifikat dan kunci "etcd/healthcheck-client"
[sertifikat] Menghasilkan kunci "sa" dan kunci publik
[kubeconfig] Menggunakan folder kubeconfig "/etc/kubernetes"
[kubeconfig] Menulis file kubeconfig "admin.conf"
[kubeconfig] Menulis "kubelet.conf" file kubeconfig
[kubeconfig] Menulis file kubeconfig "controller-manager.conf"
[kubeconfig] Menulis file kubeconfig "scheduler.conf"
[control-plane] Menggunakan folder manifes "/etc/kubernetes/manifests"
[control-plane] Membuat manifes Pod statis untuk "kube-apiserver"
[control-plane] Membuat manifes Pod statis untuk "kube-controller-manager"
[control-plane] Membuat manifes Pod statis untuk "kube-scheduler"
[etcd] Membuat manifes Pod statis untuk etcd lokal di "/etc/kubernetes/manifests"
[wait-control-plane] Menunggu kubelet mem-boot control plane sebagai Pod statis dari direktori "/etc/kubernetes/manifests". Ini bisa memakan waktu hingga 4m0s
[apiclient] Semua komponen bidang kontrol sehat setelah 17.004356 detik
[upload-config] menyimpan konfigurasi yang digunakan dalam ConfigMap "kubeadm-config" di Namespace "kube-system"
[kubelet] Membuat ConfigMap "kubelet-config-1.14" di namespace kube-system dengan konfigurasi untuk kubelet di cluster
[upload-certs] Melewati fase. Silakan lihat --experimental-upload-certs
[mark-control-plane] Menandai node jin-virtual-machine sebagai control-plane dengan menambahkan label "node-role.kubernetes.io/master=''"
[mark-control-plane] Menandai node jin-virtual-machine sebagai control-plane dengan menambahkan taints [node-role.kubernetes.io/ master:NoSchedule ]
[bootstrap-token] Menggunakan token: xusir0.o4kzo3qqjyjnzphl
[bootstrap-token] Mengonfigurasi token bootstrap, ConfigMap info cluster, Peran RBAC
[bootstrap-token] mengonfigurasi aturan RBAC untuk memungkinkan token Node Bootstrap memposting CSR agar node mendapatkan kredensial sertifikat jangka panjang
[bootstrap-token] mengonfigurasi aturan RBAC untuk memungkinkan pengontrol csrapprover secara otomatis menyetujui CSR dari Token Bootstrap Node
[bootstrap-token] mengonfigurasi aturan RBAC untuk memungkinkan rotasi sertifikat untuk semua sertifikat klien node di cluster
[bootstrap-token] membuat ConfigMap "cluster-info" di namespace "kube-public"
[addons] Addon penting yang diterapkan: CoreDNS
[addons] Addon penting yang diterapkan: kube-proxy
Control-plane Kubernetes Anda telah berhasil diinisialisasi!
Untuk mulai menggunakan kluster, Anda harus menjalankan yang berikut ini sebagai pengguna biasa:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
Anda sekarang harus men-deploy jaringan pod ke cluster.
Jalankan "kubectl apply -f [podnetwork].yaml" dengan salah satu opsi yang tercantum di:
https://kubernetes.io/docs/concepts/cluster-administration/addons/
Kemudian Anda dapat bergabung dengan sejumlah node pekerja dengan menjalankan yang berikut pada masing-masing sebagai root:
kubeadm bergabung 192.168.232.130:6443 --token xusir0.o4kzo3qqjyjnzphl
--discovery-token-ca-cert-hash sha256:022048b22926a2cb2f8295ce2e3f1f6fa7ffe1098bc116f7d304a26bcfb78656
`
Mengalami masalah yang sama dengan kubernetes v1.14.1 dan cri-o v1.14.0 pada VM GCP Ubuntu 18.04. Hal-hal bekerja dengan baik saat menggunakan buruh pelabuhan. referensi: https://github.com/cri-o/cri-o/issues/2357
Masalah saya adalah dengan driver cgroup yang berbeda. CRIO menggunakan systemd secara default, kubelet menggunakan cgroupfs secara default.
cat /etc/crio/crio.conf | grep cgroup
# cgroup_manager is the cgroup management implementation to be used
cgroup_manager = "systemd"
Jika itu kasus Anda, lihat https://kubernetes.io/docs/setup/independent/install-kubeadm/#configure -cgroup-driver-used-by-kubelet-on-master-node
Tulis saja filenya
echo "KUBELET_EXTRA_ARGS=--cgroup-driver=systemd" > /etc/default/kubelet
dan jalankan kubeadm init setelah itu. Atau ubah cgroup_manager menjadi cgroupfs
tidak seperti docker, cri-o dan containerd sedikit lebih rumit untuk dikelola dalam hal deteksi driver cgroup, tetapi ada beberapa rencana untuk mendukungnya dari kubeadm.
buruh pelabuhan sudah ditangani.
Jadi ternyata tidak ada solusi selain mereset cluster $(yes | kubeadm reset), yang menurut saya bukan solusi!
Mengubah repo gambar berhasil untuk saya, tetapi ini bukan perbaikan yang bagus.
--image-repository registry.aliyuncs.com/google_containers
kasus saya berhasil dengan ini
sed -i 's/cgroup-driver=systemd/cgroup-driver=cgroupfs/g' /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
Saya memiliki masalah yang sama. Saya menggunakan kubeadm init --config=init-config.yaml
dan gagal, file ini dihasilkan oleh kubeadm. ada bidang advertiseAddress default adalah 1.2.3.4 di file , yang membuat etcd contianer mulai gagal. ketika saya mengubah ke 127.0.0.1, etcd contianer mulai berhasil dan kubeadm init sukses
untuk mengatasi masalah ini, gunakan docker ps -a
daftar semua wadah periksa apakah beberapa dari mereka keluar, jika demikian, gunakan docker logs CONTIANER_ID
lihat apa yang terjadi. semoga membantu
Halo semua, ada yang punya solusi? Masalah yang sama di sini, tetapi menggunakan k3s .
@MateusMac Anda mungkin harus membuka laporan bug terhadap k3 juga.
Bekerja selama seminggu untuk mendapatkan kubeadm
bekerja
Ubuntu 18.04
buruh pelabuhan 18.06-2-ce
k8s 1.15.1
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
Fails with:
[etcd] Creating static Pod manifest for local etcd in "/etc/kubernetes/manifests"
[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
[kubelet-check] Initial timeout of 40s passed.
Unfortunately, an error has occurred:
timed out waiting for the condition
This 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, e.g. docker.
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'
error execution phase wait-control-plane: couldn't initialize a Kubernetes cluster
Log kubelet menunjukkan bahwa ia tidak dapat menemukan node untuk melewati base pertama:
warproot<strong i="15">@warp02</strong>:~$ systemctl status kubelet
● kubelet.service - kubelet: The Kubernetes Node Agent
Loaded: loaded (/lib/systemd/system/kubelet.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/kubelet.service.d
└─10-kubeadm.conf
Active: active (running) since Sun 2019-08-04 18:22:26 AEST; 5min ago
Docs: https://kubernetes.io/docs/home/
Main PID: 12569 (kubelet)
Tasks: 27 (limit: 9830)
CGroup: /system.slice/kubelet.service
└─12569 /usr/bin/kubelet --bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf --config=/var/lib/kubelet/config.yaml --cgroup-dri
Aug 04 18:28:03 warp02 kubelet[12569]: E0804 18:28:03.322762 12569 kuberuntime_sandbox.go:68] CreatePodSandbox for pod "kube-scheduler-warp02_kube-system(ecae9d12d3610192347be3d1aa5aa552)"
Aug 04 18:28:03 warp02 kubelet[12569]: E0804 18:28:03.322806 12569 kuberuntime_manager.go:692] createPodSandbox for pod "kube-scheduler-warp02_kube-system(ecae9d12d3610192347be3d1aa5aa552)
Aug 04 18:28:03 warp02 kubelet[12569]: E0804 18:28:03.322872 12569 pod_workers.go:190] Error syncing pod ecae9d12d3610192347be3d1aa5aa552 ("kube-scheduler-warp02_kube-system(ecae9d12d36101
Aug 04 18:28:03 warp02 kubelet[12569]: E0804 18:28:03.373094 12569 kubelet.go:2248] node "warp02" not found
Aug 04 18:28:03 warp02 kubelet[12569]: E0804 18:28:03.375587 12569 reflector.go:125] k8s.io/client-go/informers/factory.go:133: Failed to list *v1beta1.CSIDriver: Get https://10.1.1.4:6443
Aug 04 18:28:03 warp02 kubelet[12569]: E0804 18:28:03.473295 12569 kubelet.go:2248] node "warp02" not found
Aug 04 18:28:03 warp02 kubelet[12569]: E0804 18:28:03.573567 12569 kubelet.go:2248] node "warp02" not found
Aug 04 18:28:03 warp02 kubelet[12569]: E0804 18:28:03.575495 12569 reflector.go:125] k8s.io/client-go/informers/factory.go:133: Failed to list *v1beta1.RuntimeClass: Get https://10.1.1.4:6
Aug 04 18:28:03 warp02 kubelet[12569]: E0804 18:28:03.590886 12569 event.go:249] Unable to write event: 'Post https://10.1.1.4:6443/api/v1/namespaces/default/events: dial tcp 10.1.1.4:6443
Aug 04 18:28:03 warp02 kubelet[12569]: E0804 18:28:03.673767 12569 kubelet.go:2248] node "warp02" not found
Saya harus mencatat bahwa saya memiliki beberapa NIC pada mesin bare-metal ini:
warproot<strong i="6">@warp02</strong>:~$ ifconfig
docker0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 172.17.0.1 netmask 255.255.0.0 broadcast 172.17.255.255
inet6 fe80::42:feff:fe65:37f prefixlen 64 scopeid 0x20<link>
ether 02:42:fe:65:03:7f txqueuelen 0 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 6 bytes 516 (516.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
enp35s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.0.0.2 netmask 255.255.255.0 broadcast 10.0.0.255
inet6 fe80::32b5:c2ff:fe02:410b prefixlen 64 scopeid 0x20<link>
ether 30:b5:c2:02:41:0b txqueuelen 1000 (Ethernet)
RX packets 46 bytes 5821 (5.8 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 70 bytes 7946 (7.9 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
enp6s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.1.1.4 netmask 255.255.255.0 broadcast 10.1.1.255
inet6 fd42:59ff:1166:0:25a7:3617:fee6:424e prefixlen 64 scopeid 0x0<global>
inet6 fe80::1a03:73ff:fe44:5694 prefixlen 64 scopeid 0x20<link>
inet6 fd9e:fdd6:9e01:0:1a03:73ff:fe44:5694 prefixlen 64 scopeid 0x0<global>
ether 18:03:73:44:56:94 txqueuelen 1000 (Ethernet)
RX packets 911294 bytes 1361047672 (1.3 GB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 428759 bytes 29198065 (29.1 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 17
ib0: flags=4099<UP,BROADCAST,MULTICAST> mtu 4092
unspec A0-00-02-10-FE-80-00-00-00-00-00-00-00-00-00-00 txqueuelen 256 (UNSPEC)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
ib1: flags=4099<UP,BROADCAST,MULTICAST> mtu 4092
unspec A0-00-02-20-FE-80-00-00-00-00-00-00-00-00-00-00 txqueuelen 256 (UNSPEC)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 25473 bytes 1334779 (1.3 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 25473 bytes 1334779 (1.3 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Saya tidak tahu apakah itu masalah, tetapi saya menyiapkan file /etc/hosts
sebagai
warproot<strong i="7">@warp02</strong>:~$ cat /etc/hosts
127.0.0.1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
# add our host name
10.1.1.4 warp02 warp02.ad.xxx.com
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
# add our ipv6 host name
fd42:59ff:1166:0:25a7:3617:fee6:424e warp02 warp02.ad.xxx.com
warproot<strong i="8">@warp02</strong>:~$
Jadi, sudah diatur (saya pikir) untuk melihat NIC 10.1.1.4 sebagai "jaringan" untuk k8s
nslookup terhadap nama-simpul tampaknya berfungsi dengan baik:
warproot<strong i="13">@warp02</strong>:~$ nslookup warp02
Server: 127.0.0.53
Address: 127.0.0.53#53
Non-authoritative answer:
Name: warp02.ad.xxx.com
Address: 10.1.1.4
Name: warp02.ad.xxx.com
Address: fd42:59ff:1166:0:25a7:3617:fee6:424e
warproot<strong i="14">@warp02</strong>:~$
Saya telah melalui dokumentasi instalasi kubeadm
beberapa kali.
Aneh. Itu hanya tidak dapat menemukan jaringan.
Bingung.
Untuk versi 1.15.3
saya dapat memperbaikinya di Ubuntu 18.04 dengan menambahkan
kind: InitConfiguration
nodeRegistration:
kubeletExtraArgs:
cgroup-driver: "systemd"
ke konfigurasi kubeadm saya dan kemudian menjalankan kubeadm init
Saya memiliki masalah yang sama di sini, dengan versi 1.15.3, di Ubuntu 18.04
@kris-nova Saya akan sangat menghargai jika Anda dapat menentukan di mana file konfigurasi ini berada :-)
PEMBARUAN: Saya tidak tahu mengapa, tetapi itu berfungsi sekarang, tanpa mengubah konfigurasi apa pun!
(catatan: Saya tidak tahu apakah ini terkait, tetapi saya memperbarui buruh pelabuhan dari v.19.03.1 ke v.19.03.2, sebelum mencoba lagi kubeadm init
)
Saya mendapatkan kesalahan di bawah ini saat menjalankan kubeadm init yaitu nodexx not found..
[ root@node01 ~]# journalctl -xeu kubelet
07 Nov 10:34:02 node01 kubelet[2968]: E1107 10:34:02.682095 2968 kubelet.go:2267] node "node01" tidak ditemukan
07 Nov 10:34:02 node01 kubelet[2968]: E1107 10:34:02.782554 2968 kubelet.go:2267] node "node01" tidak ditemukan
07 Nov 10:34:02 node01 kubelet[2968]: E1107 10:34:02.829142 2968 reflector.go:123] k8s.io/client-go/informers/factory.go:134: Gagal mendaftar *v1beta1.CSID
07 Nov 10:34:02 node01 kubelet[2968]: E1107 10:34:02.884058 2968 kubelet.go:2267] node "node01" tidak ditemukan
07 Nov 10:34:02 node01 kubelet[2968]: E1107 10:34:02.984510 2968 kubelet.go:2267] node "node01" tidak ditemukan
07 Nov 10:34:03 node01 kubelet[2968]: E1107 10:34:03.030884 2968 reflector.go:123]
Dipecahkan melalui:
masalah yang sama
Dalam kasus saya yang disebabkan oleh penyimpangan waktu di master node, _yang terjadi setelah pemadaman listrik_.
Saya telah memperbaikinya dengan berlari
# Correcting the time as mentioned here https://askubuntu.com/a/254846/861548
sudo service ntp stop
sudo ntpdate -s time.nist.gov
sudo service ntp start
# Then restarting the kubelet
sudo systemctl restart kubelet.service
# I also had to run daemon-reload as I got the following warning
# Warning: The unit file, source configuration file or drop-ins of kubelet.service changed on disk. Run 'systemctl daemon-reload' to reload units.
sudo systemctl daemon-reload
# I also made another restart, which I don't know whether needed or not
sudo systemctl restart kubelet.service
saya memperbaiki masalah yang sama node "xxxx" not found
coba lihat log kontainer menggunakan log docker container_id , lalu saya melihat apiserver mencoba menghubungkan 127.0.0.1:2379 , edit file · /etc/kubernetes/manifests/etcd.yaml , mulai ulang, masalah diperbaiki
Komentar yang paling membantu
Masalah yang sama di sini dengan Kubernetes v1.13.0
CentOS 7
docker-ce 18.06 (versi tervalidasi terbaru)
buruh pelabuhan: aktif, berjalan
kubelet: aktif, berlari
selinux: dinonaktifkan
firewalld: dinonaktifkan
KESALAHAN adalah:
kubelet[98023]: E1212 21:10:01.708004 98023 kubelet.go:2266] node "node1" not found
/etc/hosts berisi simpul, dapat di-pinge, dapat dijangkau -- sebenarnya melakukan pekerja tunggal master-tunggal (yaitu simpul tercemar).
Di mana K8S mencari nilai ini? di /etc/hosts?
Saya dapat memecahkan masalah dan memberikan lebih banyak bukti jika diperlukan.
-> apakah kubeadm init selesai dan apakah itu mencetak token boostrap?
Itu selesai dengan kesalahan panjang:
CATATAN: Tak satu pun dari perintah yang disarankan setelah batas waktu melaporkan sesuatu yang layak disebutkan di sini.
versi kubelet dan kubeadm?
---> 1.13.0
kubeadm versi: &version.Info{Mayor:"1", Minor:"13", GitVersion:"v1.13.0", GitCommit:"ddf47ac13c1a9483ea035a79cd7c10005ff21a6d", GitTreeState:"clean", BuildDate:"2018-12-03T21:02: 01Z", GoVersion:"go1.11.2", Kompilator:"gc", Platform:"linux/amd64"}
Juga, bukankah seharusnya menyetel pesan kesalahan yang lebih baik daripada "simpul tidak ditemukan" dengan sedikit kejelasan/verbositas di log kube?
Terima kasih