Update berkelanjutan

Apigee Hybrid mendukung dua jenis update. Yang pertama adalah pembaruan langsung saat Anda menerapkan perubahan konfigurasi dan sistem hybrid akan memulai rolling Kubernetes . Di Kubernetes, update berkelanjutan memungkinkan update Deployment dilakukan tanpa nol periode nonaktif dengan mengupdate instance Pod secara bertahap dengan instance baru.

Apigee Hybrid juga mendukung update bergaya canary atau AB. Dalam update AB, revisi baru sudah di-deploy; namun, pada awalnya sebagian kecil lalu lintas data diarahkan ke sana. Seiring waktu, data ini persentase akan meningkat sampai semua lalu lintas masuk ke revisi.

Pembaruan yang diterapkan

Untuk memicu update di tempat, cukup ubah setelan yang diinginkan di file penggantian dan terapkan data tersebut ke cluster. Misalnya, Anda ingin mengubah runtime saat ini memori dari 1Gi ke 5Gi:

Berikut adalah konfigurasi awal:

...
runtime:
  replicaCountMin: 2
  replicaCountMax: 20
  resources:
    requests:
      cpu: 1000m
      memory: 1Gi
...

Dalam konfigurasi baru, memori diubah menjadi 5Gi:

...
runtime:
  replicaCountMin: 2
  replicaCountMax: 20
  resources:
    requests:
      cpu: 1000m
      memory: 5Gi
...

Ketika Anda menerapkan perubahan, pod yang diperbarui akan dimulai dan menggantikan pod yang ada. Karena fitur update berkelanjutan Kubernetes, klien tidak akan mengalami periode nonaktif.

Cara melakukan update A/B

Untuk melakukan update AB, gunakan tag revision di file penggantian Anda. Sebagai contoh, Anda ingin mengubah memori runtime saat ini dari 1Gi menjadi 5Gi:

Dalam konfigurasi saat ini, revision disetel ke blue:

...
revision: blue
...
runtime:
  replicaCountMin: 2
  replicaCountMax: 20
  resources:
    requests:
      cpu: 1000m
      memory: 1Gi
...

Dalam konfigurasi baru, jika Anda mengubah revision menjadi green, berarti Anda memberi Anda ingin melakukan update berkelanjutan saat perubahan diterapkan. Nilai yang Anda tetapkan revision tidak menjadi masalah; Anda dapat gunakan string apa pun yang Anda inginkan, selama Anda mengubahnya dari nilai sebelumnya ke sesuatu yang lain.

...
revision: green
...
runtime:
  replicaCountMin: 2
  replicaCountMax: 20
  resources:
    requests:
      cpu: 1000m
      memory: 5Gi
...

Saat Anda menerapkan perubahan, akan ada sebagian kecil traffic ke revisi baru. Seiring waktu, lebih banyak traffic masuk ke revisi baru hingga mencapai 100%. Pada saat itu, revisi lama akan dihapus.

Untuk memicu peluncuran AB, tambahkan tag revision jika tidak ada, atau ubah nilai tag revision jika sudah ada. Anda tidak perlu melakukan perubahan lain pada file penggantian untuk memicu peluncuran AB.

Tabel berikut berisi jadwal peluncuran AB:

Tahap Persentase traffic Waktu tunggu
1 5% 60 detik
2 20% 10 detik
3 100% 10 detik

Dalam rilis saat ini, persentase dan waktu tunggu tidak dapat dikonfigurasi.