EN: Read in English
Dunia K3: Kaunter & Pintu
HTTPRoute: papan tanda ke gerai
Anda akan belajar: hantar setiap laluan ke Service yang betul dengan peraturan HTTPRoute.
Teks BM belum disemak oleh penutur asli.
Disemak dengan Kubernetes 1.37 pada 31 Okt 2026
Masalahnya
kind-dev namespace defaultAPI menu tinggal di /api. Tapi setiap pesanan sampai ke kaunter kedai. Kedai tiada /api/menu, jadi ia kata 404.
Tengok
Ketik setiap titik pada garis masa.
HTTPRoute: Papan tanda di pintu masuk: laluan mana pergi ke Service mana. pegang papan tanda. Setiap peraturan ialah satu laluan, kemudian satu Service. Papan paling khusus menang.
Cuba
routes.yaml tambah papan tanda ini. Apply, kemudian minta /api/menu sekali lagi.
- matches:
- path:
type: PathPrefix
value: /api
backendRefs:
- name: api
port: 80kind-dev namespace defaultentrance 172.18.0.200/ → shopapi2/2 sediashop3/3 sedia
dev-control-planeBukaPengurusTiada dulang di sini.
dev-workerBuka- api·w7hql
- shop·hl847
- shop·qcgst
dev-worker2Buka- api·lrtxv
- shop·pm62t
Semak
Mei tulis papan /api sendiri. Ia tak boleh apply. Baikinya.
Baiki manifest ini, kemudian tekan Apply.
Maksudnya: laluan mesti bermula dengan /.
Teka
Silap mana yang buat pintu masuk jawab 500? Cuba setiap kerosakan, satu demi satu.
Rosakkan satu hop supaya pengguna dapat: 500 Internal Server Error.
- Pelayar webGET /api/menu di port 80
- Gateway (pintu masuk)entrance mendengar di :80
- HTTPRoute (papan tanda)/api → api:80
- Service (nombor giliran)api: port 80 → 8080
- EndpointSlice (dulang sedia)2 sedia daripada 2
- Pod (dulang)api-6d8f7b9c5d-k2x8p mendengar di :8080
Petunjuk
Papan tanda yang tunjuk ke Service yang tak wujud.Semak
Dua papan: PathPrefix /api dan PathPrefix /. Ke mana setiap pesanan pergi?
Seret kad ke dalam kotak. Atau ketik kad, kemudian ketik kotak.
Anda berjaya!
Kini anda boleh hantar setiap laluan ke Service yang betul.
Nak tahu lebih (pilihan)
Peraturan juga boleh padankan hostname dan header. Dua backendRefs dengan weight, contohnya 90 dan 10, jadi canary. Filter boleh hala HTTP ke HTTPS. kubectl describe httproute tunjuk ResolvedRefs: Service yang hilang tunjuk BackendNotFound.
Latihan sebenar (pilihan), di kluster kind anda dengan controller Gateway:
Misi sebenar
kubectl describe httproute
0 daripada 4 langkah siap · Tanda anda disimpan.
English
The menu API lives at /api. But every order lands at the shop counter. The shop has no /api/menu, so it says 404.
An HTTPRoute holds the signboards. Each rule is a path, then a Service. The most specific sign wins.
routes.yaml adds this sign. Apply it, then ask for /api/menu again.
- matches:
- path:
type: PathPrefix
value: /api
backendRefs:
- name: api
port: 80
Mei wrote her own /api sign. It won’t apply. Fix it.
Plain words: a path must start with /.
Which mistake makes the entrance answer 500? Try the breaks, one at a time.
Two signs: PathPrefix /api and PathPrefix /. Where does each order go?
You can now send each path to the right Service.
Anda dah siapkan ini. Latihan lagi pun bagus!
Dokumentasi rasmi: Gateway API: HTTPRoute · Gateway API: panduan HTTP routing
Anda dah belajar 25 minit. Rehat sekejap bantu otak anda.
Pecutan selesai! Fokus yang hebat. Regangkan badan seminit?