0Pricing
DevOps Bootcamp · Pelajaran

Strategi Deployment: Blue-Green dan Canary

Jangan berhenti pada pembaruan bergulir; pelajari cara merilis dengan aman menggunakan pola deployment blue-green dan canary di Kubernetes.

Strategi Deployment: Blue-Green dan Canary adalah pelajaran DevOps Bootcamp gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar DevOps Bootcamp, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus DevOps Bootcamp mencakup 4 pelajaran total.

Mengapa Tidak Hanya Pembaruan Bergulir?

Pembaruan bergulir mengganti Pod secara bertahap, tetapi mencampur versi lama dan baru selama peralihan. Untuk rilis yang berisiko, Anda mungkin ingin mengendalikan sepenuhnya pengguna mana yang melihat versi baru.

Strategi biru-hijau dan kanari memberi Anda kendali tersebut.

Gagasan Biru-Hijau

Dalam penerapan biru-hijau, Anda menjalankan dua lingkungan yang identik:

  • Biru = versi yang sedang aktif
  • Hijau = versi baru, sudah diterapkan sepenuhnya tetapi belum menerima lalu lintas

Anda mengalihkan lalu lintas dari biru ke hijau sekaligus.

Dua Penerapan, Satu Layanan

Setiap versi memiliki Penerapan sendiri dengan label versi. Satu Layanan memilih warna yang sedang aktif.

apiVersion: apps/v1
kind: Deployment
metadata:
  name: app-blue
spec:
  replicas: 3
  selector:
    matchLabels:
      app: web
      version: blue
  template:
    metadata:
      labels:
        app: web
        version: blue
    spec:
      containers:
      - name: web
        image: myapp:1.0

Mengalihkan Lalu Lintas

Untuk mengaktifkan versi hijau, Anda cukup mengubah selektor Layanan agar menunjuk ke versi hijau. Peralihannya berlangsung seketika.

kubectl patch service web -p '{"spec":{"selector":{"app":"web","version":"green"}}}'

Kelebihan dan Kekurangan Biru-Hijau

  • Kelebihan: pemulihan seketika dengan beralih kembali ke biru
  • Kelebihan: tidak ada pencampuran versi selama rilis
  • Kekurangan: memerlukan sumber daya dua kali lipat selama masa tumpang tindih

Gagasan Kanari

Rilis kanari mengirimkan sebagian kecil lalu lintas ke versi baru terlebih dahulu. Jika metrik terlihat sehat, Anda meningkatkan skalanya secara bertahap.

Nama ini berasal dari burung kenari yang digunakan para penambang untuk mendeteksi bahaya lebih awal.

Kanari dengan Jumlah Replika

Kanari sederhana menggunakan dua Penerapan yang berbagi label Layanan yang sama. Lalu lintas terbagi kira-kira sesuai rasio replika.

# stable: 9 replicas, canary: 1 replica => ~10% to canary
kubectl scale deployment app-stable --replicas=9
kubectl scale deployment app-canary --replicas=1

Meningkatkan Porsi Kanari

Saat keyakinan Anda meningkat, geser rasionya ke arah kanari, lalu hentikan versi lama setelah versi tersebut menangani seluruh lalu lintas.

kubectl scale deployment app-canary --replicas=5
kubectl scale deployment app-stable --replicas=5
# later, fully promote
kubectl scale deployment app-canary --replicas=10
kubectl scale deployment app-stable --replicas=0

Mengamati Kanari

Tujuan utama kanari adalah pengamatan. Pantau tingkat kesalahan, latensi, dan log sebelum meningkatkan porsinya.

kubectl get pods -l version=canary
kubectl logs -l version=canary --tail=50

Memilih Strategi

  • Biru-hijau: paling tepat jika Anda menginginkan peralihan yang bersih dan seketika serta pemulihan cepat
  • Kanari: paling tepat jika Anda ingin membatasi dampak kegagalan dan memvalidasi dengan lalu lintas nyata
  • Bergulir: pilihan bawaan yang baik untuk pembaruan rutin berisiko rendah

Alat di Luar kubectl

Untuk pembagian lalu lintas yang sangat terperinci (misalnya tepat 5%), tim menggunakan mesh layanan seperti Istio atau alat pengiriman bertahap seperti Argo Rollouts dan Flagger, yang mengotomatiskan analisis kanari.

Pemeriksaan Singkat

Pilih pernyataan yang paling tepat menggambarkan rilis kanari.

Rangkuman

Anda telah membandingkan strategi rilis tingkat lanjut. Biru-hijau mengalihkan seluruh lalu lintas secara seketika antara dua lingkungan untuk pemulihan cepat, sedangkan kanari mengalihkan lalu lintas secara bertahap untuk membatasi risiko. Keduanya dibangun di atas komponen dasar Penerapan dan Layanan yang sudah Anda kenal.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Strategi Deployment: Blue-Green dan Canary” gratis?

Ya — teks lengkap “Strategi Deployment: Blue-Green dan Canary” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus DevOps Bootcamp, upgrade ke CoddyKit PRO. Kursus DevOps Bootcamp mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Strategi Deployment: Blue-Green dan Canary”?

Jangan berhenti pada pembaruan bergulir; pelajari cara merilis dengan aman menggunakan pola deployment blue-green dan canary di Kubernetes. Kamu berlatih DevOps Bootcamp dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai DevOps Bootcamp?

Tidak diperlukan pengalaman sebelumnya. DevOps Bootcamp di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.

Berapa lama pelajaran “Strategi Deployment: Blue-Green dan Canary” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran DevOps Bootcamp ini?

Ya. Setiap pelajaran DevOps Bootcamp menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Memahami Deployment
  2. Menskalakan Aplikasi dengan ReplicaSets
  3. Pembaruan Bergulir dan Pengembalian Versi
  4. Strategi Deployment: Blue-Green dan Canary
← Kembali ke DevOps Bootcamp