Mă confrunt cu asta eroare kubelet pe clusterul meu k8s care rulează CentOS 7. Această eroare a apărut după ce am repornit recent nodurile clusterului. Nu m-am confruntat cu o problemă similară anterior, am repornit mașinile.
Am încercat să alerg swapoff -a
pentru a dezactiva schimbul, dar nu rezolvă problema.
Iată systemctl status kubelet -l
Buturuga:
[root@test-master ~]# systemctl status kubelet -l
â kubelet.service - kubelet: Agentul nodului Kubernetes
Încărcat: încărcat (/usr/lib/systemd/system/kubelet.service; activat; prestabilit furnizor: dezactivat)
Drop-in: /usr/lib/systemd/system/kubelet.service.d
ââ10-kubeadm.conf
Activ: se activează (repornire automată) (Rezultat: cod de ieșire) din Luni 2022-05-30 13:59:51 +08; acum 822 ms
Documente: https://kubernetes.io/docs/
Proces: 9325 ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_CONFIG_ARGS $KUBELET_KUBEADM_ARGS $KUBELET_EXTRA_ARGS (code=exited, status=1/FAILURE)
PID principal: 9325 (cod=ieșit, stare=1/Eșec)
May 30 13:59:51 test-master kubelet[9325]: Insecure values: TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_ECDSA_WITH_RC4_128_SHA, TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_RC4_128_SHA, TLS_RSA_WITH_3DES_EDE_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_RC4_128_SHA. (DEPRECAT: Acest parametru ar trebui setat prin fișierul de configurare specificat de indicatorul --config al Kubelet. Consultați https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/ pentru mai multe informații.)
30 mai 13:59:51 test-master kubelet[9325]: --tls-min-version șir Versiune TLS minimă acceptată. Valori posibile: VersionTLS10, VersionTLS11, VersionTLS12, VersionTLS13 (DEPRECAT: Acest parametru ar trebui setat prin fișierul de configurare specificat de indicatorul --config al Kubelet. Consultați https://kubernetes.io/docs/tasks/administer-cluster/kubelet- config-file/ pentru mai multe informații.)
30 mai 13:59:51 test-master kubelet[9325]: --tls-private-key-file șir Fișier care conține cheia privată x509 care se potrivește --tls-cert-file. (DEPRECAT: Acest parametru ar trebui setat prin fișierul de configurare specificat de indicatorul --config al Kubelet. Consultați https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/ pentru mai multe informații.)
30 mai 13:59:51 test-master kubelet[9325]: --topology-manager-policy string Politica Topology Manager de utilizat. Valori posibile: 'none', 'best-effort', 'restricted', 'single-numa-node'. (implicit „niciunul”) (DEPRECAT: Acest parametru ar trebui setat prin fișierul de configurare specificat de indicatorul --config al Kubelet. Consultați https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/ pentru mai multe informatii.)
30 mai 13:59:51 test-master kubelet[9325]: --topology-manager-scope string Domeniul la care s-au aplicat indicii de topologie. Topology Manager colectează indicii de la furnizorii de indicii și le aplică la un domeniu definit pentru a asigura admiterea podului. Valori posibile: „container”, „pod”. („container” implicit) (DEPRECAT: Acest parametru ar trebui setat prin fișierul de configurare specificat de indicatorul --config al Kubelet. Consultați https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/ pentru mai multe informatii.)
30 mai 13:59:51 test-master kubelet[9325]: -v, --v Număr de nivel pentru nivelul de nivel de jurnal
30 mai 13:59:51 test-master kubelet[9325]: --version version[=true] Tipăriți informațiile despre versiune și ieșiți
30 mai 13:59:51 test-master kubelet[9325]: --vmodule pattern=N,... listă separată prin virgulă de pattern=N setări pentru înregistrarea filtrată prin fișiere (funcționează numai pentru formatul jurnalului de text)
30 mai 13:59:51 test-master kubelet[9325]: --volume-plugin-dir șir Calea completă a directorului în care să căutați pluginuri suplimentare de volum terță parte (implicit „/usr/libexec/kubernetes/kubelet -plugins/volume/exec/") (DEPRECAT: Acest parametru ar trebui setat prin fișierul de configurare specificat de indicatorul --config al Kubelet. Consultați https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config -file/ pentru mai multe informații.)
30 mai 13:59:51 test-master kubelet[9325]: --volume-stats-agg-period duration Specifică intervalul pentru ca kubelet să calculeze și să memoreze în cache utilizarea volumului discului pentru toate podurile și volumele. Pentru a dezactiva calculele de volum, setați un număr negativ. (implicit 1m0s) (DEPRECAT: Acest parametru ar trebui setat prin fișierul de configurare specificat de indicatorul --config al Kubelet. Consultați https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/ pentru mai multe informație.)
Acesta este conținutul /usr/lib/systemd/system/kubelet.service.d/10-kubeadm.conf
menționat în jurnalul anterior:
[root@test-master ~]# cat /usr/lib/systemd/system/kubelet.service.d/10-kubeadm.conf
# Notă: acest dropin funcționează numai cu kubeadm și kubelet v1.11+
[Serviciu]
Environment="KUBELET_KUBECONFIG_ARGS=--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf"
Environment="KUBELET_CONFIG_ARGS=--config=/var/lib/kubelet/config.yaml"
# Acesta este un fișier pe care „kubeadm init” și „kubeadm join” îl generează în timpul execuției, populând variabila KUBELET_KUBEADM_ARGS în mod dinamic
EnvironmentFile=-/var/lib/kubelet/kubeadm-flags.env
# Acesta este un fișier pe care utilizatorul îl poate folosi pentru suprascrieri ale argumentelor kubelet ca ultimă soluție. De preferință, utilizatorul ar trebui să folosească
# obiectul .NodeRegistration.KubeletExtraArgs din fișierele de configurare. KUBELET_EXTRA_ARGS ar trebui să provină din acest fișier.
EnvironmentFile=-/etc/sysconfig/kubelet
ExecStart=
ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_CONFIG_ARGS $KUBELET_KUBEADM_ARGS $KUBELET_EXTRA_ARGS
Am incercat si eu sa adaug Environment="KUBELET_SYSTEM_PODS_ARGS=--pod-manifest-path=/etc/kubernetes/manifests --allow-privileged=true --fail-swap-on=false"
la dosarul menționat Aici impreuna cu systemctl daemon-reload
și systemctl reporniți kubelet
dar nu ajută.
Din păcate, nu sunt exact sigur de versiunea serverului, dar ar trebui să fie aceeași cu a mea versiunea client [v1.23.3].
[root@test-master ~]# versiune kubectl
Versiune client: version.Info{Major:"1", Minor:"23", GitVersion:"v1.23.3", GitCommit:"816c97ab8cff8a1c72eccca1026f7820e93e0d25", GitTreeState:"clean", BuildDate:"1:-252-02:"2020 17Z", GoVersion:"go1.17.6", Compiler:"gc", Platforma:"linux/amd64"}
Conexiunea la serverul 10.17.98.171:6443 a fost refuzată - ați specificat gazda sau portul potrivit?
Există oricum să îmi pot salva clusterul fără a fi nevoie să resetați întregul cluster? Sper să pot accesa implementările mele care rulau anterior în cluster.
Actualizați:
Am încercat să găsesc mesajele de eroare în jurnal folosind journalctl -fu kubelet
și acesta este cel mai apropiat lucru pe care îl pot găsi.
31 mai 08:58:12 test-master systemd[1]: timpul de reținere kubelet.service s-a încheiat, repornirea programării.
31 mai 08:58:12 test-master systemd[1]: Kubelet oprit: Agentul nodului Kubernetes.
31 mai 08:58:12 test-master systemd[1]: S-a pornit kubelet: Agentul nodului Kubernetes.
31 mai 08:58:12 test-master kubelet[5280]: Eroare: nu s-a putut analiza kubelet steag: necunoscut steag: --network-plugin
De asemenea, aici este al meu versiunea lui kubelet Kubernetes v1.24.1
.
Se pare că are legătură cu această problemă pe GitHub, https://github.com/kubernetes/website/issues/33640.