EN: Read in English
Dunia K3: Kaunter & Pintu
NetworkPolicy dan plugin CNI
Anda akan belajar: kunci pintu pod secara lalai, dan benarkan hanya pod pilihan anda.
Teks BM belum disemak oleh penutur asli.
Disemak dengan Kubernetes 1.37 pada 31 Okt 2026
Masalahnya
kind-dev namespace defaultDulang orang asing masuk terus ke dapur kedai. Secara lalai, setiap pintu dalam kluster terbuka.
Tengok
NetworkPolicy: Senarai tetamu di pintu pod: pod mana boleh masuk, dipilih ikut label. ialah senarai tetamu di pintu pod. Tiada dalam senarai? Pintu kekal tertutup. Hidupkan kunci, kemudian hantar pesanan.
Rosakkan satu hop supaya pengguna dapat: tamat masa (timeout).
- Pelayar webGET / di port 80
- Gateway (pintu masuk)entrance mendengar di :80
- HTTPRoute (papan tanda)/ → shop:80
- Service (nombor giliran)shop: port 80 → 80
- EndpointSlice (dulang sedia)2 sedia daripada 2
- Pod (dulang)shop-94c9756fd-8tghh mendengar di :80
Petunjuk
Kunci itu buang paket. Tiada siapa kata tidak, jadi pelanggan hanya menunggu.Teka
Anda apply policy ini. Bolehkah client masih sampai ke kedai?
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: deny-all
spec:
podSelector: {}
policyTypes:
- IngressPilih satu jawapan.
Cuba
Setiap pintu kini berkunci. Benarkan client sahaja masuk semula dengan allow-client.yaml.
kind-dev namespace defaultshop3/3 sedia
dev-control-planeBukaPengurusTiada dulang di sini.
dev-workerBuka- shop·6n92s
- shop·pfz6p
- stranger
dev-worker2Buka- client
- shop·c24gr
Senarai tetamunya:
ingress:
- from:
- podSelector:
matchLabels:
app: client
ports:
- port: 80Semak
Kunci ini tak boleh apply. Baca kata-kata kubectl, kemudian baiki.
Baiki manifest ini, kemudian tekan Apply.
Maksudnya: Kubernetes kenal Ingress dan Egress, dengan huruf besar sahaja.
Tengok
Policy hanya kata-kata. plugin CNI (CNI plugin): Laluan pejalan kaki medan selera: plugin rangkaian yang beri IP kepada pod dan kuatkuasakan NetworkPolicy., laluan pejalan kaki medan selera, yang jadikannya nyata. Plugin mana yang buat begitu?
Seret kad ke dalam kotak. Atau ketik kad, kemudian ketik kotak.
Semak
Nilai setiap tabiat.
Leret ke kanan untuk bagus, ke kiri untuk perlu baiki. Atau guna butang.
Mulakan namespace dengan deny-all, kemudian benarkan ikut label.
Anda berjaya!
Kini anda boleh kunci pintu pod, dan benarkan hanya pod yang betul.
Nak tahu lebih (pilihan)
Di mana cerita ini tak tepat: Service bukan kaunter sebenar. Tiada siapa berdiri di situ; setiap gerai cuma tukar alamat. Pintu berkunci tak berbunyi: paket yang dibuang hilang begitu sahaja, jadi anda nampak timeout. Policy bertambah: mana-mana peraturan allow yang sepadan buka pintu. Peraturan egress boleh sekat DNS juga.
Latihan sebenar (pilihan), di kind 0.24 ke atas:
Misi sebenar
kubectl get networkpolicy
0 daripada 4 langkah siap · Tanda anda disimpan.
English
A stranger tray walks straight into the shop kitchen. By default, every door in the cluster is open.
A NetworkPolicy is a guest list on a pod’s door. Nobody on the list? The door stays shut. Turn on the lock, then send an order.
You apply this policy. Can the client still reach the shop?
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: deny-all
spec:
podSelector: {}
policyTypes:
- Ingress
Every door is locked now. Let only the client back in with allow-client.yaml.
Its guest list:
ingress:
- from:
- podSelector:
matchLabels:
app: client
ports:
- port: 80
This lock won’t apply. Read kubectl’s words, then fix it.
Plain words: Kubernetes knows Ingress and Egress, with capitals only.
A policy is only words. The CNI plugin, the food court’s walkways, makes them real. Which plugins do that?
Judge each habit.
You can now lock pod doors, and let in only the right pods.
Anda dah siapkan ini. Latihan lagi pun bagus!
Dokumentasi rasmi: Kubernetes: Network Policies · Kubernetes: plugin rangkaian
Anda dah belajar 25 minit. Rehat sekejap bantu otak anda.
Pecutan selesai! Fokus yang hebat. Regangkan badan seminit?