EN: Read in English
Dunia K4: Nota, Loker & Pakej · Cabaran bos
Satu aplikasi, tiga dapur
Anda akan belajar: jalankan satu aplikasi di dev, staging dan prod, setiap satu dengan tetapan dan dulang sendiri.
Teks BM belum disemak oleh penutur asli.
Disemak dengan Kubernetes 1.37 pada 31 Okt 2026
Masalahnya
kind-dev namespace defaultBos: satu kedai, tiga dapur. Dev: 1 dulang, log debug. Staging: 2 dulang, info. Prod: 3 dulang, warn. Satu base, tiga nota lekat. Buka semuanya.
Cuba
Dapur 1: dev. Pratonton dahulu, kemudian buka.
kind-dev namespace defaultdev-control-planeBukaPengurusTiada dulang di sini.
dev-workerBukaTiada dulang di sini.
dev-worker2BukaTiada dulang di sini.
Petunjuk
Pratonton tak pernah ubah kluster. Kemudianapply -k yang ubah.Cuba
Dapur 2 ada masalah. Rakan sepasukan tambah suis cache pada nota staging. API server menolaknya. Baiki nota itu.
Baiki manifest ini, kemudian tekan Apply.
Cuba
Pembaikan anda sudah ada dalam fail. Buka staging, kemudian prod.
kind-dev namespace defaultdev-control-planeBukaPengurusTiada dulang di sini.
dev-workerBukaTiada dulang di sini.
dev-worker2BukaTiada dulang di sini.
Semak
Base kata LOG_LEVEL: debug. Nota staging kata info. Apa dulang staging cetak untuk printenv LOG_LEVEL?
Pilih satu jawapan.
Semak
kind-dev namespace defaultTiga zon, tiga pesanan: 1, 2 dan 3 dulang. Staging baca nota yang anda baiki: true.
Cuba
Sebelum buat apa-apa pada prod, jadikan prod zon “anda di sini”. Kemudian senaraikan dulangnya.
kind-dev namespace defaultdev-control-planeBukaPengurusTiada dulang di sini.
dev-workerBukaTiada dulang di sini.
dev-worker2BukaTiada dulang di sini.
Petunjuk
Perhatikan bar merah jambu di atas berubah.Semak
Langkah selamat atau berisiko? Leret setiap satu.
Leret ke kanan untuk bagus, ke kiri untuk perlu baiki. Atau guna butang.
Pratonton dengan kubectl kustomize sebelum apply -k.
Anda berjaya!
Kini anda boleh jalankan satu aplikasi di tiga dapur, ikut cara masing-masing.
Nak tahu lebih (pilihan)
Pasukan sebenar simpan folder ini dalam Git. Perubahan pada overlays/prod melalui pull request. Dalam Dunia K7, alat GitOps akan apply untuk anda.
Latihan sebenar (pilihan), pada kluster kind untuk latihan:
Misi sebenar
kubectl apply -k overlays/devkubectl apply -k overlays/stagingkubectl apply -k overlays/prodkubectl get deployments -A -l app=shopkubectl delete -k overlays/prod
0 daripada 6 langkah siap · Tanda anda disimpan.
English
Boss: one shop, three kitchens. Dev: 1 tray, debug logs. Staging: 2 trays, info. Prod: 3 trays, warn. One base, three sticky notes. Open them all.
Kitchen 1: dev. Preview it, then open it.
apply -k does.Kitchen 2 has a problem. A teammate added a cache switch to staging’s note. The API server refuses it. Fix the note.
Your fix is in the files now. Open staging, then prod.
The base says LOG_LEVEL: debug. Staging’s note says info. What does a staging tray print for printenv LOG_LEVEL?
Three zones, three orders: 1, 2 and 3 trays. Staging read your fixed note: true.
Before any work on prod, make prod your “you are here” zone. Then list its trays.
Safe move or risky? Swipe each one.
You can now run one app in three kitchens, each its own way.
Anda dah siapkan ini. Latihan lagi pun bagus!
Dokumentasi rasmi: Declarative management with Kustomize · Kubernetes: ConfigMaps · Namespaces
Anda dah belajar 25 minit. Rehat sekejap bantu otak anda.
Pecutan selesai! Fokus yang hebat. Regangkan badan seminit?