Puncte:0

eroare kubelet, starea blocată pe „Activ: se activează (repornire automată)”

drapel it

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.

Joe S avatar
drapel it
@SYN Mulțumesc pentru sugestie, care m-a ajutat să rezolv problema.
SYN avatar
drapel hk
SYN
API-ul kubernetes este inaccesibil, conform „versiunii kubectl”. Verificați serviciul (sau podul) API-ul kubernetes. Apoi verificați „journalctl -fu kubelet”, care ar fi mai grăitor decât systemctl status kubelet pe care l-ați partajat până acum. Ar fi o mulțime de jurnale, căutați un prefix „E” (erori).

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.