Sebelum memulai
Anda memerlukan:
- Cluster yang ada dengan Kf terinstal.
- Akses ke komputer yang menginstal
gcloud
,kf
, dankubectl
.
Memvalidasi penginstalan Kf yang ada
Dapatkan kredensial autentikasi untuk berinteraksi dengan cluster:
gcloud container clusters get-credentials CLUSTER_NAME \ --zone CLUSTER_ZONE \ --project CLUSTER_PROJECT_ID
Jalankan
kf debug
dan validasikan kecocokan versi server Kf dan Kf CLI.- Versi CLI tercantum di bagian
Kf Client
. - Versi server Kf tercantum di bagian
kf["app.kubernetes.io/version"]
.
$ kf debug ... Version: Kf Client: v2.0.0 Server version: v1.17.13-gke.1401 kf["app.kubernetes.io/version"]: v2.0.0 ...
Jika nilai klien Kf dan server Kf tidak cocok, download dan instal versi Kf CLI yang cocok dengan versi server, lalu ulangi pemeriksaan dengan CLI baru. Versi CLI harus cocok dengan versi server sebelum Anda melanjutkan.
- Versi CLI tercantum di bagian
Jalankan
kf doctor
untuk memeriksa status cluster Anda. Pastikan semua pengujian lulus sebelum Anda melanjutkan.$ kf doctor ... === RUN doctor/user === RUN doctor/user/ContainerRegistry --- PASS: doctor/user --- PASS: doctor/user/ContainerRegistry ...
Jika Anda melihat pesan
Error: environment failed checks
, ikuti panduan dalam outputdoctor
untuk menyelesaikan masalah dan coba lagi perintah tersebut hingga berhasil.
Upgrade
Untuk mengupgrade Kf, lakukan langkah-langkah berikut:
- Siapkan lingkungan lokal dan upgrade.
- Mengupgrade dependensi Kf.
- Upgrade Kf dan verifikasi bahwa upgrade berhasil.
Menyiapkan upgrade
Jalankan
kf version
untuk mendapatkan versi Kf saat ini.$ kf version kf version v2.0.0 linux
Temukan Kf versi terbaru berikutnya dari halaman download.
Download file YAML rilis Kf dan simpan sebagai
kf-release.yaml
.Download versi Kf untuk OS Anda dan beri nama
kf-next
.Jalankan
chmod
untuk membuatkf-next
dapat dieksekusi:chmod +x kf-next
Jalankan
kf-next version
untuk memastikan versi yang didownload cocok dengan versi Kf yang ingin Anda instal:$ kf-next version kf version v2.1.0 linux
Buat cadangan configmap
config-defaults
dengan menjalankan:kubectl get configmap config-defaults -o yaml -n kf > config-defaults-backup.yaml
Jalankan
kubectl diff -f kf-release.yaml
dan periksa perubahan yang akan dilakukan upgrade pada cluster Anda.Edit
kf-release.yaml
dan ubah untuk mempertahankan perubahan yang ingin Anda pertahankan.Misalnya, jika Anda menetapkan properti configmap
config-defaults
spaceDefaultToV3Stack
ke salah div2.0.0
Kf, rilisv2.1.0
akan memiliki nilai defaulttrue
.Jalankan
kubectl diff -f kf-release.yaml
lagi untuk memastikan perubahan yang Anda buat menghasilkan output yang diharapkan.
Mengupgrade dependensi Kf
Buka halaman download dan temukan matriks dependensi untuk versi Kf yang akan Anda upgrade.
Mengupgrade Tekton:
Buka halaman Rilis Tekton.
Temukan versi Tekton yang tercantum dalam matriks dependensi Kf.
Jalankan perintah di bagian judul "Installation one-liner" untuk mengupgrade Tekton.
Mengupgrade Cloud Service Mesh:
Di dropdown versi, pilih versi Cloud Service Mesh yang tercantum dalam matriks dependensi Kf.
Ikuti panduan untuk mengupgrade ASM.
Mengupgrade dan memverifikasi Kf
Instal komponen Kf yang diupgrade menggunakan konfigurasi rilis yang diubah:
kubectl apply -f kf-release.yaml
Jalankan
doctor
untuk memastikan versi yang baru diinstal berfungsi dengan baik:kf-next doctor --retries=12 --delay=5s
Perintah ini akan menjalankan pemeriksaan cluster beberapa kali. Wajar jika beberapa upaya gagal saat pengontrol baru dimulai.
Jika perintah gagal dengan pesan
Error: environment failed checks
, ikuti panduan dalam outputdoctor
untuk menyelesaikan masalah dan coba lagi perintah hingga berhasil.Ganti
kf
CLI yang ada di sistem Anda dengankf-next
CLI.chmod +x kf-next
mv kf-next $(which kf)
Bandingkan file
config-defaults-backup.yaml
dengankubectl diff -f config-defaults-backup.yaml
untuk memastikan cluster Anda masih dikonfigurasi dengan benar.Misalnya, jika Anda mempertahankan semua perubahan dari versi Kf lama, dan menyetujui penggunaan buildpack baru yang dipaketkan dengan versi Kf berikutnya:
$ kubectl diff -f config-defaults-backup.yaml diff -u -N /tmp/LIVE/v1.ConfigMap.kf.config-defaults /tmp/MERGED/v1.ConfigMap.kf.config-defaults --- /tmp/LIVE/v1.ConfigMap.kf.config-defaults +++ /tmp/MERGED/v1.ConfigMap.kf.config-defaults @@ -131,6 +131,8 @@ enable_route_services: false spaceBuildpacksV2: | - - name: new_buildpack - url: https://github.com/cloudfoundry/new-buildpack - name: staticfile_buildpack url: https://github.com/cloudfoundry/staticfile-buildpack - name: java_buildpack exit status 1