Peta dunia

 

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

Anda di sini: kluster kind-dev namespace default
ls overlays tunjuk dev, prod dan staging. Kustomization staging letak semua dalam namespace staging, dengan 2 replika dan satu patch tetapan. Output terminal: $ ls overlays dev prod staging $ cat overlays/staging/kustomization.yaml apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization namespace: staging resources: - ../../base - namespace.yaml replicas: - name: shop count: 2 patches: - path: settings-patch.yaml

Bos: 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.

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

Dapur 2 ada masalah. Rakan sepasukan tambah suis cache pada nota staging. API server menolaknya. Baiki nota itu.

Baiki manifest ini, kemudian tekan Apply.

settings-patch.yaml8 baris

Cuba

Pembaikan anda sudah ada dalam fail. Buka staging, kemudian prod.

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)

Semak

Base kata LOG_LEVEL: debug. Nota staging kata info. Apa dulang staging cetak untuk printenv LOG_LEVEL?

Pilih satu jawapan.

Semak

Anda di sini: kluster kind-dev namespace default
get deployments untuk semua namespace tunjuk shop di dev 1/1, prod 3/3 dan staging 2/2. Dulang staging cetak true untuk CACHE. Output terminal: $ kubectl get deployments -A -l app=shop NAMESPACE NAME READY UP-TO-DATE AVAILABLE AGE dev shop 1/1 1 1 17s prod shop 3/3 3 3 17s staging shop 2/2 2 2 17s $ kubectl exec -n staging deploy/shop -- printenv CACHE true

Tiga 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.

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)

Semak

Langkah selamat atau berisiko? Leret setiap satu.

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

1 / 4

Pratonton dengan kubectl kustomize sebelum apply -k.

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

  1. kubectl apply -k overlays/dev
  2. kubectl apply -k overlays/staging
  3. kubectl apply -k overlays/prod
  4. kubectl get deployments -A -l app=shop
  5. kubectl delete -k overlays/prod

0 daripada 6 langkah siap · Tanda anda disimpan.