EN: Read in English
Dunia K9: Pentadbir Kluster
Baiki CoreDNS dan kube-proxy
Anda akan belajar: bezakan masalah buku telefon (CoreDNS) daripada masalah pelari (kube-proxy), dan baiki yang pertama.
Teks BM belum disemak oleh penutur asli.
Disemak dengan Kubernetes 1.37 pada 1 Nov 2026
Masalahnya
Dari dulang client, panggil shop guna IP Service-nya berjaya. Panggil guna nama shop gagal. Apa yang rosak?
Pilih satu jawapan.
Tengok
kind-dev namespace defaultSetiap dulang tanya buku telefon di 10.96.0.10. Nombor itu ialah Service kube-dns. Di belakangnya ada dulang CoreDNS: Buku telefon medan selera: ia tukar nama seperti shop kepada IP Service..
Cuba
Bahagian mana yang anda syak? Susun setiap petunjuk.
Seret kad ke dalam kotak. Atau ketik kad, kemudian ketik kotak.
Cuba
Seseorang kecilkan CoreDNS kepada 0 “untuk jimat”. Pulihkan buku telefon: 2 dulang sedia. Nota: kluster latihan ini masih jawab nama sementara itu. Kluster sebenar tidak.
kind-dev namespace defaultshop3/3 sedia
dev-control-planeBukaPengurusTiada dulang di sini.
dev-workerBuka- shop·5pldw
- shop·r9q8j
dev-worker2Buka- client
- shop·j89pb
Petunjuk
CoreDNS ialah Deployment dalamkube-system. Besarkan semula kepada 2.Tengok
kind-dev namespace defaultkube-proxy: Jalan di setiap gerai dan hantar trafik nombor pesanan (Service) ke dulang yang betul. ialah pelari di setiap gerai. Ia tukar IP Service kepada alamat dulang sebenar. DaemonSet pastikan satu bagi setiap gerai.
Teka
Anda padam dulang kube-proxy di dev-worker2. Apa berlaku seterusnya?
Pilih satu jawapan.
Semak
Nama gagal. Susun tangga DNS ikut urutan, seperti panduan rasmi.
Anak tangga pertama di atas. Susun ikut turutan. Guna anak panah, atau seret.
- kubectl logs -n kube-system -l k8s-app=kube-dns
- kubectl exec client -- cat /etc/resolv.conf
- kubectl get endpointslice -l kubernetes.io/service-name=kube-dns -n kube-system
- kubectl get pods -n kube-system -l k8s-app=kube-dns
- kubectl exec client -- nslookup shop
Anda berjaya!
Kini anda boleh bezakan masalah CoreDNS daripada masalah kube-proxy.
Nak tahu lebih (pilihan)
CoreDNS baca peraturannya (Corefile) dari ConfigMap coredns. Di mana cerita ini tak tepat: medan selera sebenar satu bangunan. Gerai kluster boleh berada di bilik, atau cloud, berbeza. Dan kluster latihan ini masih jawab nama walaupun CoreDNS tidak berjalan.
Misi sebenar
kubectl -n kube-system scale deployment coredns --replicas=0kubectl run dnstest --image=busybox:1.37 --rm -it --restart=Never -- nslookup kubernetes.defaultkubectl -n kube-system scale deployment coredns --replicas=2
0 daripada 3 langkah siap · Tanda anda disimpan.
English
From the client tray, calling the shop by its Service IP works. Calling it by the name shop fails. What is broken?
Every tray asks the phone book at 10.96.0.10. That number is the kube-dns Service. Behind it run the CoreDNS trays.
Which part do you suspect? Sort each clue.
Someone scaled CoreDNS to 0 “to save money”. Bring the phone book back: 2 ready trays. Note: this practice cluster still answers names meanwhile. A real one would not.
kube-system. Scale it back to 2.kube-proxy is the runner on every stall. It turns a Service IP into a real tray’s address. A DaemonSet keeps one per stall.
You delete the kube-proxy tray on dev-worker2. What happens next?
Names fail. Put the DNS ladder in order, like the official guide.
You can now tell a CoreDNS problem from a kube-proxy one.
Anda dah siapkan ini. Latihan lagi pun bagus!
Dokumentasi rasmi: Kubernetes: debugging DNS resolution · Kubernetes: DNS for Services and Pods · Kubernetes: debug Services · kube-proxy
Anda dah belajar 25 minit. Rehat sekejap bantu otak anda.
Pecutan selesai! Fokus yang hebat. Regangkan badan seminit?