Peta dunia

 

EN: Read in English

Dunia K9: Pentadbir Kluster

Static pod dan folder manifest

Anda akan belajar: cara pejabat berjalan daripada fail, dan cara pulihkan bahagian yang hilang.

Teks BM belum disemak oleh penutur asli.

Disemak dengan Kubernetes 1.37 pada 1 Nov 2026

Masalahnya

Anda di sini: kluster kind-dev namespace default
Pod tray Pending. Dalam kube-system, tiada pod kube-scheduler dijumpai. Output terminal: $ kubectl get pods NAME READY STATUS RESTARTS AGE tray 0/1 Pending 0 12s $ kubectl get pods -n kube-system -l component=kube-scheduler No resources found in kube-system namespace.

Dulang baharu menunggu dalam Pending, tanpa sebarang event. Pod scheduler pun hilang. Siapa ambil semula staf pejabat?

Cuba

Pejabat tak boleh ambil pekerja untuk dirinya. Jadi kubelet di gerainya hidupkan mereka daripada fail: static pod: Dulang yang penyelia gerai hidupkan sendiri, daripada fail dalam /etc/kubernetes/manifests, tanpa tanya pejabat.. Taip ssh dev-control-plane, kemudian ls /etc/kubernetes/manifests.

Anda di sini: kluster kind-dev namespace default
Gerai: 3. Dulang: 0 (0 sedia). Menunggu gerai: 0.
dev-control-planeBukaPengurus

Tiada dulang di sini.

dev-workerBuka

Tiada dulang di sini.

dev-worker2Buka

Tiada dulang di sini.

Masa: +0s (dipercepat)

Cuba

Pejabat tunjuk setiap static pod sebagai mirror pod: Gambar baca-sahaja sebuah static pod di pejabat. Padam gambar itu tidak hentikan pod sebenar.: gambar baca-sahaja. Tekan dua baris: “daripada fail”, dan pemiliknya.

Tekan 2 baris yang buktikan ia static pod.

0 daripada 2 dijumpai

Teka

Anda padam mirror pod itu dengan kubectl. Apa jadi?

Pilih satu jawapan.

Tengok

Anda di sini: kluster kind-dev namespace default
Mirror pod dipadam. Tiga saat kemudian, kube-scheduler-dev-control-plane muncul semula, Running, umur 3s. Output terminal: $ kubectl delete pod kube-scheduler-dev-control-plane -n kube-system pod "kube-scheduler-dev-control-plane" deleted from kube-system namespace $ sleep 3 $ kubectl get pods -n kube-system -l component=kube-scheduler NAME READY STATUS RESTARTS AGE kube-scheduler-dev-control-plane 1/1 Running 0 3s

Hilang, kemudian kembali dengan umur baharu. Gambarnya berubah. Kad tugasnya tidak.

Cuba

Seseorang pindahkan kad tugas scheduler ke /root. Letak semula. Hati-hati: folder ini jalankan pejabat. Ubah apa yang perlu sahaja.

Anda di sini: kluster kind-dev namespace default
Gerai: 3. Dulang: 0 (0 sedia). Menunggu gerai: 1.
dev-control-planeBukaPengurus

Tiada dulang di sini.

dev-workerBuka

Tiada dulang di sini.

dev-worker2Buka

Tiada dulang di sini.

Menunggu gerai
  • trayPending
Masa: +0s (dipercepat)

Semak

Tabiat baik dalam folder manifests? Leret ke kanan untuk baik.

Leret ke kanan untuk bagus, ke kiri untuk perlu baiki. Atau guna butang.

1 / 4

Salin fail ke /root sebelum anda ubah

Salin fail ke /root sebelum anda ubah

Semak

Static pod atau pod biasa? Lihat namanya.

Seret kad ke dalam kotak. Atau ketik kad, kemudian ketik kotak.

      Anda berjaya!

      Kini anda boleh cari static pod dan pulihkan yang hilang.

      Nak tahu lebih (pilihan)

      Folder itu datang dari tetapan kubelet: staticPodPath dalam /var/lib/kubelet/config.yaml. Worker pun ada folder ini, cuma kosong. Fail yang bermula dengan titik dilangkau. Simpan sandaran di luar, contohnya dalam /etc/kubernetes/backup/.

      Misi sebenar

      1. kubectl config current-context
      2. docker exec dev-worker sh -c 'printf "apiVersion: v1\nkind: Pod\nmetadata:\n name: static-web\nspec:\n containers:\n - name: web\n image: nginx:1.29-alpine\n" > /etc/kubernetes/manifests/static-web.yaml'
      3. kubectl get pods -o wide
      4. kubectl delete pod static-web-dev-worker
      5. docker exec dev-worker rm /etc/kubernetes/manifests/static-web.yaml

      0 daripada 5 langkah siap · Tanda anda disimpan.