Prosedur ini mencakup upgrade dari Apigee Hybrid versi 1.10.x ke Apigee Hybrid versi 1.12.0 dan dari rilis hybrid 1.12.x sebelumnya ke versi 1.12.0.
Gunakan prosedur yang sama untuk upgrade versi minor (misalnya versi 1.10 hingga 1.12) dan untuk upgrade rilis patch (misalnya 1.12.0 hingga 1.12.0).
Jika Anda melakukan upgrade dari Apigee Hybrid versi 1.9 atau yang lebih lama, Anda harus mengupgrade ke versi hybrid 1.10 terlebih dahulu sebelum mengupgrade ke versi 1.12.0. Lihat petunjuk untuk Mengupgrade Apigee Hybrid ke versi 1.10.
Ringkasan upgrade ke versi 1.12.0
Prosedur untuk mengupgrade Apigee Hybrid diatur dalam bagian berikut:
Prasyarat
Petunjuk upgrade ini mengasumsikan bahwa Anda telah menginstal Apigee Hybrid versi 1.10.x dan ingin mengupgradenya ke versi 1.12.0. Jika Anda melakukan update dari versi sebelumnya, lihat petunjuk untuk Mengupgrade Apigee Hybrid ke versi 1.10.
Diagram Helm dan apigeectl
Pada versi 1.11, Anda dapat memilih untuk menginstal dan mengelola Apigee Hybrid dengan diagram Helm atau apigeectl
. Apigee merekomendasikan penggunaan Helm untuk mengelola penginstalan Anda.
Bermigrasi ke v1.12 dengan Helm dari v1.10 dengan apigeectl
Untuk mengupgrade ke Apigee Hybrid v1.12 yang dikelola oleh Helm dari penginstalan hybrid v1.10 yang dikelola dengan apigeectl
:
- Pertama, migrasikan Helm penginstalan v1.10 dengan mengikuti petunjuk di Memigrasikan diagram Apigee Hybrid ke diagram Helm dari apigeectl.
- Ikuti petunjuk untuk diagram Helm di bawah untuk mengupgrade penginstalan Anda.
Persiapan untuk mengupgrade ke versi 1.12
Mencadangkan penginstalan hybrid (direkomendasikan)
Helm
- Petunjuk ini menggunakan variabel lingkungan APIGEE_HELM_CHARTS_HOME untuk direktori
dalam sistem file tempat Anda menginstal diagram Helm. Jika perlu, ubah direktori
ke direktori ini dan tentukan variabel dengan perintah berikut:
Linux
export APIGEE_HELM_CHARTS_HOME=$PWD
echo $APIGEE_HELM_CHARTS_HOME
Mac OS
export APIGEE_HELM_CHARTS_HOME=$PWD
echo $APIGEE_HELM_CHARTS_HOME
Windows
set APIGEE_HELM_CHARTS_HOME=%CD%
echo %APIGEE_HELM_CHARTS_HOME%
- Buat salinan cadangan direktori
$APIGEE_HELM_CHARTS_HOME/
versi 1.10 Anda. Anda dapat menggunakan proses pencadangan apa pun. Misalnya, Anda dapat membuat filetar
dari seluruh direktori dengan:tar -czvf $APIGEE_HELM_CHARTS_HOME/../apigee-helm-charts-v1.10-backup.tar.gz $APIGEE_HELM_CHARTS_HOME
- Cadangkan database Cassandra dengan mengikuti petunjuk dalam pencadangan dan pemulihan Cassandra.
- Jika Anda menggunakan file sertifikat layanan (
.json
) dalam penggantian untuk mengautentikasi akun layanan, pastikan file sertifikat akun layanan Anda berada di direktori chart Helm yang benar. Diagram Helm tidak dapat membaca file di luar setiap direktori diagram.Langkah ini tidak diperlukan jika Anda menggunakan secret Kubernetes atau Workload Identity untuk mengautentikasi akun layanan.
Tabel berikut menampilkan tujuan untuk setiap file akun layanan, bergantung pada jenis penginstalan Anda:
Produksi
Akun layanan Nama file default Direktori chart helm apigee-cassandra
PROJECT_ID-apigee-cassandra.json
$APIGEE_HELM_CHARTS_HOME/apigee-datastore/
apigee-logger
PROJECT_ID-apigee-logger.json
$APIGEE_HELM_CHARTS_HOME/apigee-telemetry/
apigee-mart
PROJECT_ID-apigee-mart.json
$APIGEE_HELM_CHARTS_HOME/apigee-org/
apigee-metrics
PROJECT_ID-apigee-metrics.json
$APIGEE_HELM_CHARTS_HOME/apigee-telemetry/
apigee-runtime
PROJECT_ID-apigee-runtime.json
$APIGEE_HELM_CHARTS_HOME/apigee-env
apigee-synchronizer
PROJECT_ID-apigee-synchronizer.json
$APIGEE_HELM_CHARTS_HOME/apigee-env/
apigee-udca
PROJECT_ID-apigee-udca.json
$APIGEE_HELM_CHARTS_HOME/apigee-org/
apigee-watcher
PROJECT_ID-apigee-watcher.json
$APIGEE_HELM_CHARTS_HOME/apigee-org/
Non-produksi
Buat salinan file akun layanan
apigee-non-prod
di setiap direktori berikut:Akun layanan Nama file default Direktori chart helm apigee-non-prod
PROJECT_ID-apigee-non-prod.json
$APIGEE_HELM_CHARTS_HOME/apigee-datastore/
$APIGEE_HELM_CHARTS_HOME/apigee-telemetry/
$APIGEE_HELM_CHARTS_HOME/apigee-org/
$APIGEE_HELM_CHARTS_HOME/apigee-env/
-
Pastikan bahwa file sertifikat dan kunci TLS Anda (
.crt
,.key
, dan/atau.pem
) berada di direktori$APIGEE_HELM_CHARTS_HOME/apigee-virtualhost/
.
apigeectl
Contoh dalam petunjuk ini menggunakan struktur direktori berikut. Penginstalan Anda mungkin berbeda. Sesuaikan petunjuk dengan struktur penginstalan.
hybrid-v1.12-root-directory/ └── apigeectl/ └── config/ └── plugins/ └── templates/ └── tools/ └── hybrid-files/ └── overrides/ └── service-accounts/ └── certs/ hybrid-v1.10-root-directory/
- Petunjuk ini menggunakan variabel lingkungan APIGEECTL_HOME untuk direktori dalam sistem file tempat Anda menginstal
apigeectl
. Jika perlu, ubah direktori ke direktoriapigeectl
dan tentukan variabel dengan perintah berikut:Linux
export APIGEECTL_HOME=$PWD
echo $APIGEECTL_HOME
Mac OS
export APIGEECTL_HOME=$PWD
echo $APIGEECTL_HOME
Windows
set APIGEECTL_HOME=%CD%
echo %APIGEECTL_HOME%
- Buat salinan cadangan direktori
$APIGEECTL_HOME/
versi 1.10 Anda. Contoh:tar -czvf $APIGEECTL_HOME/../apigeectl-v1.10-backup.tar.gz $APIGEECTL_HOME
- Cadangkan database Cassandra dengan mengikuti petunjuk dalam pencadangan dan pemulihan Cassandra.
Mengupgrade versi Kubernetes Anda
Periksa versi platform Kubernetes Anda dan jika perlu, upgrade platform Kubernetes Anda ke versi yang didukung oleh hybrid 1.10 dan hybrid 1.12. Ikuti dokumentasi platform Anda jika memerlukan bantuan.
Menginstal runtime hybrid 1.12.0
Helm
Bersiap untuk upgrade diagram Helm
- Mendapatkan diagram Helm Apigee.
Diagram campuran Apigee dihosting di Google Artifact Registry:
oci://us-docker.pkg.dev/apigee-release/apigee-hybrid-helm-charts
Dengan menggunakan perintah
pull
, salin semua diagram Helm hybrid Apigee ke penyimpanan lokal Anda dengan perintah berikut:export CHART_REPO=oci://us-docker.pkg.dev/apigee-release/apigee-hybrid-helm-charts
export CHART_VERSION=1.12.0
helm pull $CHART_REPO/apigee-operator --version $CHART_VERSION --untar
helm pull $CHART_REPO/apigee-datastore --version $CHART_VERSION --untar
helm pull $CHART_REPO/apigee-env --version $CHART_VERSION --untar
helm pull $CHART_REPO/apigee-ingress-manager --version $CHART_VERSION --untar
helm pull $CHART_REPO/apigee-org --version $CHART_VERSION --untar
helm pull $CHART_REPO/apigee-redis --version $CHART_VERSION --untar
helm pull $CHART_REPO/apigee-telemetry --version $CHART_VERSION --untar
helm pull $CHART_REPO/apigee-virtualhost --version $CHART_VERSION --untar
- Instal cert-manager jika perlu.
Jika Anda perlu mengupgrade versi pengelola sertifikat, instal versi baru dengan perintah berikut:
kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.11.1/cert-manager.yaml
- Instal CRD Apigee yang telah diupdate:
-
Gunakan fitur uji coba
kubectl
dengan menjalankan perintah berikut:kubectl apply -k apigee-operator/etc/crds/default/ --server-side --force-conflicts --validate=false --dry-run=server
-
Setelah memvalidasi dengan perintah dry-run, jalankan perintah berikut:
kubectl apply -k apigee-operator/etc/crds/default/ --server-side --force-conflicts --validate=false
- Validasi penginstalan dengan perintah
kubectl get crds
:kubectl get crds | grep apigee
Output Anda akan terlihat seperti berikut:
apigeedatastores.apigee.cloud.google.com 2023-10-09T14:48:30Z apigeedeployments.apigee.cloud.google.com 2023-10-09T14:48:30Z apigeeenvironments.apigee.cloud.google.com 2023-10-09T14:48:31Z apigeeissues.apigee.cloud.google.com 2023-10-09T14:48:31Z apigeeorganizations.apigee.cloud.google.com 2023-10-09T14:48:32Z apigeeredis.apigee.cloud.google.com 2023-10-09T14:48:33Z apigeerouteconfigs.apigee.cloud.google.com 2023-10-09T14:48:33Z apigeeroutes.apigee.cloud.google.com 2023-10-09T14:48:33Z apigeetelemetries.apigee.cloud.google.com 2023-10-09T14:48:34Z cassandradatareplications.apigee.cloud.google.com 2023-10-09T14:48:35Z
-
-
Periksa label pada node cluster. Secara default, Apigee menjadwalkan pod data pada node dengan label
cloud.google.com/gke-nodepool=apigee-data
, dan pod runtime dijadwalkan pada node dengan labelcloud.google.com/gke-nodepool=apigee-runtime
. Anda dapat menyesuaikan label kumpulan node dalam fileoverrides.yaml
.Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi node pool khusus.
Menginstal diagram Helm hybrid Apigee
- Jika belum, buka direktori
APIGEE_HELM_CHARTS_HOME
Anda. Jalankan perintah berikut dari direktori tersebut. - Upgrade Operator/Pengontrol Apigee:
Uji coba:
helm upgrade operator apigee-operator/ \ --install \ --create-namespace \ --namespace apigee-system \ -f OVERRIDES_FILE \ --dry-run
Upgrade diagram:
helm upgrade operator apigee-operator/ \ --install \ --create-namespace \ --namespace apigee-system \ -f OVERRIDES_FILE
Verifikasi penginstalan Operator Apigee:
helm ls -n apigee-system
NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION operator apigee-system 3 2023-06-26 00:42:44.492009 -0800 PST deployed apigee-operator-1.12.0 1.12.0
Pastikan aplikasi aktif dan berjalan dengan memeriksa ketersediaannya:
kubectl -n apigee-system get deploy apigee-controller-manager
NAME READY UP-TO-DATE AVAILABLE AGE apigee-controller-manager 1/1 1 1 7d20h
- Upgrade datastore Apigee:
Uji coba:
helm upgrade datastore apigee-datastore/ \ --install \ --namespace apigee \ -f OVERRIDES_FILE \ --dry-run
Upgrade diagram:
helm upgrade datastore apigee-datastore/ \ --install \ --namespace apigee \ -f OVERRIDES_FILE
Pastikan
apigeedatastore
aktif dan berjalan dengan memeriksa statusnya:kubectl -n apigee get apigeedatastore default
NAME STATE AGE default running 2d
- Upgrade telemetri Apigee:
Uji coba:
helm upgrade telemetry apigee-telemetry/ \ --install \ --namespace apigee \ -f OVERRIDES_FILE \ --dry-run
Upgrade diagram:
helm upgrade telemetry apigee-telemetry/ \ --install \ --namespace apigee \ -f OVERRIDES_FILE
Verifikasi bahwa aplikasi aktif dan berjalan dengan memeriksa statusnya:
kubectl -n apigee get apigeetelemetry apigee-telemetry
NAME STATE AGE apigee-telemetry running 2d
- Upgrade Apigee Redis:
Uji coba:
helm upgrade redis apigee-redis/ \ --install \ --namespace apigee \ -f OVERRIDES_FILE \ --dry-run
Upgrade diagram:
helm upgrade redis apigee-redis/ \ --install \ --namespace apigee \ -f OVERRIDES_FILE
Verifikasi bahwa aplikasi aktif dan berjalan dengan memeriksa statusnya:
kubectl -n apigee get apigeeredis default
NAME STATE AGE default running 2d
- Upgrade pengelola ingress Apigee:
Uji coba:
helm upgrade ingress-manager apigee-ingress-manager/ \ --install \ --namespace apigee \ -f OVERRIDES_FILE \ --dry-run
Upgrade diagram:
helm upgrade ingress-manager apigee-ingress-manager/ \ --install \ --namespace apigee \ -f OVERRIDES_FILE
Pastikan aplikasi aktif dan berjalan dengan memeriksa ketersediaannya:
kubectl -n apigee get deployment apigee-ingressgateway-manager
NAME READY UP-TO-DATE AVAILABLE AGE apigee-ingressgateway-manager 2/2 2 2 2d
- Upgrade organisasi Apigee:
Uji coba:
helm upgrade ORG_NAME apigee-org/ \ --install \ --namespace apigee \ -f OVERRIDES_FILE \ --dry-run
Upgrade diagram:
helm upgrade ORG_NAME apigee-org/ \ --install \ --namespace apigee \ -f OVERRIDES_FILE
Verifikasi bahwa SDK ini aktif dan berjalan dengan memeriksa statusnya dari masing-masing organisasi:
kubectl -n apigee get apigeeorg
NAME STATE AGE apigee-org1-xxxxx running 2d
- Upgrade lingkungan.
Anda harus menginstal lingkungan satu per satu. Tentukan lingkungan dengan
--set env=
ENV_NAME:Uji coba:
helm upgrade ENV_RELEASE_NAME apigee-env/ \ --install \ --namespace apigee \ --set env=ENV_NAME \ -f OVERRIDES_FILE \ --dry-run
- ENV_RELEASE_NAME adalah nama yang sebelumnya Anda gunakan untuk menginstal diagram
apigee-env
. Pada v1.10 hybrid, biasanyaapigee-env-ENV_NAME
. Pada Hybrid v1.11 dan yang lebih baru, biasanya ENV_NAME. - ENV_NAME adalah nama lingkungan yang Anda upgrade.
- OVERRIDES_FILE adalah file pengganti baru untuk v.1.12.0
Upgrade diagram:
helm upgrade ENV_RELEASE_NAME apigee-env/ \ --install \ --namespace apigee \ --set env=ENV_NAME \ -f OVERRIDES_FILE
Verifikasi bahwa server tersebut aktif dan berjalan dengan memeriksa status lingkungan masing-masing:
kubectl -n apigee get apigeeenv
NAME STATE AGE GATEWAYTYPE apigee-org1-dev-xxx running 2d
- ENV_RELEASE_NAME adalah nama yang sebelumnya Anda gunakan untuk menginstal diagram
-
Upgrade grup lingkungan (
virtualhosts
).- Anda harus mengupgrade satu grup lingkungan (virtualhost) dalam satu waktu. Tentukan grup lingkungan dengan
--set envgroup=
ENV_GROUP_NAME. Ulangi perintah berikut untuk setiap grup env yang disebutkan dalam file fallback.yaml:Uji coba:
helm upgrade ENV_GROUP_RELEASE_NAME apigee-virtualhost/ \ --install \ --namespace apigee \ --set envgroup=ENV_GROUP_NAME \ -f OVERRIDES_FILE \ --dry-run
ENV_GROUP_RELEASE_NAME adalah nama yang sebelumnya Anda gunakan untuk menginstal diagram
apigee-virtualhost
. Pada v1.10 hybrid, biasanyaapigee-virtualhost-ENV_GROUP_NAME
. Pada Hybrid v1.11 dan yang lebih baru, biasanya ENV_GROUP_NAME.Upgrade diagram:
helm upgrade ENV_GROUP_RELEASE_NAME apigee-virtualhost/ \ --install \ --namespace apigee \ --set envgroup=ENV_GROUP_NAME \ -f OVERRIDES_FILE
- Periksa status ApigeeRoute (AR).
Menginstal
virtualhosts
akan membuat ApigeeRouteConfig (ARC) secara internal membuat ApigeeRoute (AR) setelah Apigee watcher mengambil detail terkait grup env dari bidang kontrol. Oleh karena itu, periksa apakah status AR yang sesuai sedang berjalan:kubectl -n apigee get arc
NAME STATE AGE apigee-org1-dev-egroup 2d
kubectl -n apigee get ar
NAME STATE AGE apigee-org1-dev-egroup-xxxxxx running 2d
- Anda harus mengupgrade satu grup lingkungan (virtualhost) dalam satu waktu. Tentukan grup lingkungan dengan
apigeectl
-
Simpan nomor versi terbaru dalam variabel menggunakan perintah berikut:
Linux
export VERSION=$(curl -s \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/current-version.txt?ignoreCache=1)
Mac OS
export VERSION=$(curl -s \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/current-version.txt)
Windows
for /f "tokens=*" %a in ('curl -s ^ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/current-version.txt') ^ do set VERSION=%a
-
Periksa apakah variabel telah diisi dengan nomor versi menggunakan perintah berikut. Jika ingin menggunakan versi lain, Anda dapat menyimpannya dalam variabel lingkungan.
echo $VERSION
Anda akan melihat versi hybrid Apigee terbaru:
1.12.0
- Pastikan Anda berada di direktori dasar hybrid (induk direktori tempat
file
apigeectl
yang dapat dieksekusi berada):cd $APIGEECTL_HOME/..
-
Download paket rilis untuk sistem operasi Anda menggunakan perintah berikut. Pastikan untuk memilih platform Anda di tabel berikut:
Linux
Linux 64 bit:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_linux_64.tar.gz
Mac OS
Mac 64 bit:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_mac_64.tar.gz
Windows
Windows 64 bit:
curl -LO ^ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/%VERSION%/apigeectl_windows_64.zip
- Ganti nama direktori
apigeectl/
Anda saat ini menjadi nama direktori cadangan. Contoh:Linux
mv $APIGEECTL_HOME/ $APIGEECTL_HOME-v1.10/
Mac OS
mv $APIGEECTL_HOME/ $APIGEECTL_HOME-v1.10/
Windows
rename %APIGEECTL_HOME% %APIGEECTL_HOME%-v1.10
-
Ekstrak konten file gzip yang didownload ke direktori dasar hybrid Anda. Direktori dasar hybrid adalah direktori tempat direktori
apigeectl-v1.10
yang diganti namanya berada:Linux
tar xvzf filename.tar.gz -C ./
Mac OS
tar xvzf filename.tar.gz -C ./
Windows
tar xvzf filename.zip -C ./
-
Secara default, konten tar diperluas ke direktori dengan versi dan platform dalam namanya. Misalnya:
./apigeectl_1.12.0-xxxxxxx_linux_64
. Ganti nama direktori tersebut menjadiapigeectl
menggunakan perintah berikut:Linux
mv apigeectl_1.12.0-xxxxxxx_linux_64 apigeectl
Mac OS
mv apigeectl_1.12.0-xxxxxxx_mac_64 apigeectl
Windows
rename apigeectl_1.12.0-xxxxxxx_windows_64 apigeectl
-
Ubah ke direktori
apigeectl
:cd ./apigeectl
Direktori ini adalah direktori utama
apigeectl
. Di sinilah perintah yang dapat dieksekusiapigeectl
berada. - Petunjuk ini menggunakan variabel lingkungan
$APIGEECTL_HOME
untuk direktori dalam sistem file tempat utilitasapigeectl
diinstal. Jika perlu, ubah direktori ke direktoriapigeectl
dan tentukan variabel dengan perintah berikut:Linux
export APIGEECTL_HOME=$PWD
echo $APIGEECTL_HOME
Mac OS
export APIGEECTL_HOME=$PWD
echo $APIGEECTL_HOME
Windows
set APIGEECTL_HOME=%CD%
echo %APIGEECTL_HOME%
- Verifikasi versi
apigeectl
dengan perintahversion
:./apigeectl version
Version: 1.12.0
- Buat direktori
hybrid-base-directory/hybrid-files
, lalu pindahkan ke dalamnya. Direktorihybrid-files
adalah tempat file konfigurasi seperti file penggantian, sertifikat, dan akun layanan berada. Contoh:Linux
mkdir $APIGEECTL_HOME/../hybrid-files
cd $APIGEECTL_HOME/../hybrid-files
Mac OS
mkdir $APIGEECTL_HOME/../hybrid-files
cd $APIGEECTL_HOME/../hybrid-files
Windows
mkdir %APIGEECTL_HOME%/../hybrid-files
cd %APIGEECTL_HOME%/../hybrid-files
- Pastikan
kubectl
disetel ke konteks yang benar menggunakan perintah berikut. Konteks saat ini harus disetel ke cluster tempat Anda mengupgrade Apigee Hybrid.kubectl config get-contexts | grep \*
- Dalam direktori
hybrid-files
:-
Perbarui link simbolis berikut ke
$APIGEECTL_HOME
. Link ini memungkinkan Anda menjalankan perintahapigeectl
yang baru diinstal dari dalam direktorihybrid-files
:ln -nfs
$APIGEECTL_HOME
/tools toolsln -nfs
$APIGEECTL_HOME
/config configln -nfs
$APIGEECTL_HOME
/templates templatesln -nfs
$APIGEECTL_HOME
/plugins plugins -
Untuk memeriksa apakah symlink sudah dibuat dengan benar, jalankan perintah berikut dan pastikan
jalur link mengarah ke lokasi yang benar:
ls -l | grep ^l
-
Perbarui link simbolis berikut ke
- Lakukan inisialisasi uji coba untuk memeriksa error:
${APIGEECTL_HOME}/apigeectl init -f OVERRIDES_FILE --dry-run=client
Dengan OVERRIDES_FILE adalah nama file penggantian Anda, misalnya
./overrides/overrides.yaml
. - Jika tidak ada error, lakukan inisialisasi hybrid 1.12.0:
$APIGEECTL_HOME/apigeectl init -f OVERRIDES_FILE
- Periksa status inisialisasi:
$APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
Jika berhasil, output-nya akan mengatakan:
All containers ready.
kubectl describe apigeeds -n apigee
Pada output, cari
State: running
. - Periksa apakah ada error dengan uji coba perintah
apply
menggunakan flag--dry-run
:$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE --dry-run=client
- Jika tidak ada error, terapkan penggantian Anda. Pilih dan ikuti petunjuk untuk lingkungan produksi atau lingkungan non-produksi, bergantung pada penginstalan Anda.
Produksi
Untuk lingkungan produksi, upgrade setiap komponen hybrid satu per satu, dan periksa status komponen yang diupgrade sebelum melanjutkan ke komponen berikutnya.
- Pastikan Anda berada di direktori
hybrid-files
. - Terapkan penggantian untuk mengupgrade Cassandra:
$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE --datastore
- Periksa penyelesaian:
$APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
Lanjutkan ke langkah berikutnya hanya jika pod sudah siap.
- Terapkan penggantian Anda untuk mengupgrade komponen Telemetry dan memeriksa penyelesaian:
$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE --telemetry
$APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
- Tampilkan komponen Redis:
$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE --redis
- Terapkan penggantian Anda untuk mengupgrade komponen tingkat organisasi (MART, Watcher, dan Apigee Connect) dan periksa penyelesaiannya:
$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE --org
$APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
- Terapkan penggantian untuk mengupgrade lingkungan. Anda memiliki dua pilihan:
- Lingkungan menurut lingkungan: Terapkan penggantian Anda ke satu lingkungan dalam satu waktu dan periksa penyelesaiannya. Ulangi langkah ini untuk setiap lingkungan:
$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE --env ENV_NAME
$APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
Dengan ENV_NAME adalah nama lingkungan yang Anda upgrade.
- Semua lingkungan sekaligus: Terapkan penggantian ke semua lingkungan sekaligus dan periksa penyelesaiannya:
$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE --all-envs
$APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
- Lingkungan menurut lingkungan: Terapkan penggantian Anda ke satu lingkungan dalam satu waktu dan periksa penyelesaiannya. Ulangi langkah ini untuk setiap lingkungan:
- Terapkan penggantian untuk mengupgrade komponen
virtualhosts
dan memeriksa penyelesaian:$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE --settings virtualhosts
$APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
Non-produksi
Di sebagian besar lingkungan non-produksi, demo, atau eksperimental, Anda dapat menerapkan penggantian ke semua komponen sekaligus. Jika lingkungan non-produksi Anda besar dan kompleks atau sangat meniru lingkungan produksi, Anda dapat menggunakan petunjuk untuk mengupgrade lingkungan produksi.
- Pastikan Anda berada di direktori
hybrid-files
. $APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE
- Periksa statusnya:
$APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
- Pastikan Anda berada di direktori
Instal 1.12.0-hotfix.1
Gunakan perintah berikut untuk menginstal rilis hotfix, 1.12.0-hotfix.1
. Untuk informasi selengkapnya, lihat hybrid 1.11.1-hotfix.1 dalam catatan rilis Apigee.
- Buka file penggantian.
- Pertama, perbarui file penggantian Anda. Ikuti petunjuk yang sesuai untuk alat yang Anda gunakan untuk mengelola Apigee Hybrid, Helm, atau
apigeectl
:Helm
- Di stanza
istiod
, ubah versi tag gambar (jika ada) ke versi1.17.8
. Contoh:istiod: image: url: "gcr.io/apigee-release/hybrid/apigee-asm-istiod" tag: "1.17.8-asm.20-distroless"
- Di stanza
apigeeIngressGateway
, ubah versi tag gambar (jika ada) ke versi1.17.8
. Contoh:apigeeIngressGateway: image: url: "gcr.io/apigee-release/hybrid/apigee-asm-ingress" tag: "1.17.8-asm.20-distroless"
- Simpan file.
apigeectl
- Di stanza
istiod
, ubah versi tag gambar (jika ada) ke versi1.17.8
. Contoh:istiod: image: url: "gcr.io/apigee-release/hybrid/apigee-asm-istiod" tag: "1.17.8-asm.20-distroless"
- Bergantung pada cara yang dipilih untuk menginstal Apigee Hybrid, Anda mungkin memiliki stanza
ingressGateway
atauingressGateways
. Temukan stanza yang muncul di file penggantian Anda dan ubah versi tag gambar (jika ada) ke versi1.17.8
. Misalnya, jika Anda memiliki stanzaingressGateway
:ingressGateway: image: url: "gcr.io/apigee-release/hybrid/apigee-asm-ingress" tag: "1.17.8-asm.20-distroless"
atau, jika Anda memiliki stanza
ingressGateways
:ingressGateways: - name: gateway1 image: url: "gcr.io/apigee-release/hybrid/apigee-asm-ingress" tag: "1.17.8-asm.20-distroless" ... - name: gateway2 image: url: "gcr.io/apigee-release/hybrid/apigee-asm-ingress" tag: "1.17.8-asm.20-distroless" ...
- Simpan file.
- Di stanza
- Selanjutnya, terapkan perubahan. Ikuti petunjuk yang sesuai untuk alat yang Anda gunakan untuk mengelola Apigee Hybrid, Helm, atau
apigeectl
:Helm
- Instal diagram
apigee-ingress-manager
dengan perintah berikut:helm upgrade ingress-manager apigee-ingress-manager/ \ --install \ --namespace "YOUR_APIGEE_NAMESPACE" \ --atomic \ -f OVERRIDES_FILE
- Instal diagram
apigee-org
dengan perintah berikut:helm upgrade ORG_NAME apigee-org/ \ --install \ --namespace "YOUR_APIGEE_NAMESPACE" \ --atomic \ -f OVERRIDES_FILE
- Verifikasi status pod Anda:
kubectl get pods -n YOUR_APIGEE_NAMESPACE
apigeectl
- Jalankan perintah berikut untuk melakukan inisialisasi komponen
istiod
:$APIGEECTL_HOME/apigeectl init -f OVERRIDES_FILE
$APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
- Jalankan perintah berikut untuk menerapkan perubahan pada komponen ingress Apigee. Jika Anda memiliki
lebih dari satu organisasi, ulangi perintah ini untuk setiap organisasi:
$APIGEECTL_HOME/apigeectl apply --org -f OVERRIDES_FILE
$APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
- Verifikasi status pod Anda:
kubectl get pods -n YOUR_APIGEE_NAMESPACE
- Instal diagram
Me-roll back upgrade
Ikuti langkah-langkah berikut untuk me-roll back upgrade sebelumnya:
Helm
Untuk melakukan rollback ke versi sebelumnya, gunakan diagram diagram dan file penggantian dari penginstalan sebelumnya.
- Buat variabel lingkungan berikut:
- PREVIOUS_HELM_CHARTS_HOME: Direktori tempat diagram Helm hybrid Apigee sebelumnya diinstal. Ini adalah versi yang Anda gunakan kembali.
- Me-roll back host virtual. Ulangi perintah berikut untuk setiap grup lingkungan yang disebutkan dalam file penggantian.
helm upgrade ENV_GROUP_RELEASE_NAME $PREVIOUS_HELM_CHARTS_HOME/apigee-virtualhost/ \ --namespace apigee \ --atomic \ --set envgroup=ENV_GROUP_NAME \ -f PREVIOUS_OVERRIDES_FILE
ENV_GROUP_RELEASE_NAME adalah nama yang sebelumnya Anda gunakan untuk menginstal diagram
apigee-virtualhost
. Pada v1.10 hybrid, biasanyaapigee-virtualhost-ENV_GROUP_NAME
. Pada Hybrid v1.11 dan yang lebih baru, biasanya ENV_GROUP_NAME. - Roll back Env. Ulangi perintah berikut untuk setiap lingkungan yang disebutkan dalam file penggantian.
helm upgrade apigee-env-ENV_NAME $PREVIOUS_HELM_CHARTS_HOME/apigee-env/ \ --install \ --namespace apigee \ --atomic \ --set env=ENV_NAME \ -f PREVIOUS_OVERRIDES_FILE
ENV_RELEASE_NAME adalah nama yang sebelumnya Anda gunakan untuk menginstal diagram
apigee-env
. Pada v1.10 hybrid, biasanyaapigee-env-ENV_NAME
. Pada Hybrid v1.11 dan yang lebih baru, biasanya ENV_NAME. - Melakukan roll back Org:
helm upgrade ORG_NAME $PREVIOUS_HELM_CHARTS_HOME/apigee-org/ \ --install \ --namespace apigee \ --atomic \ -f PREVIOUS_OVERRIDES_FILE
- Roll back Ingress Manager:
helm upgrade ingress-manager $PREVIOUS_HELM_CHARTS_HOME/apigee-ingress-manager/ \ --install \ --namespace apigee \ --atomic \ -f PREVIOUS_OVERRIDES_FILE
- Melakukan roll back Redis:
helm upgrade redis $PREVIOUS_HELM_CHARTS_HOME/apigee-redis/ \ --install \ --namespace apigee \ --atomic \ -f PREVIOUS_OVERRIDES_FILE
- Roll back Apigee Telemetry:
helm upgrade telemetry $PREVIOUS_HELM_CHARTS_HOME/apigee-telemetry/ \ --install \ --namespace apigee \ --atomic \ -f PREVIOUS_OVERRIDES_FILE
- Melakukan roll back Apigee Datastore (komponen database Cassandra):
helm upgrade datastore $PREVIOUS_HELM_CHARTS_HOME/apigee-datastore/ \ --install \ --namespace apigee \ --atomic \ -f PREVIOUS_OVERRIDES_FILE
- Roll back Pengontrol Apigee:
helm upgrade operator $PREVIOUS_HELM_CHARTS_HOME/apigee-operator/ \ --install \ --namespace apigee-system \ --atomic \ -f PREVIOUS_OVERRIDES_FILE
- Roll back CRD hybrid Apigee:
kubectl apply -k $PREVIOUS_HELM_CHARTS_HOME/apigee-operator/etc/crds/default/ --server-side --force-conflicts --validate=false
apigeectl
- Bersihkan tugas yang sudah selesai untuk namespace runtime hybrid, dengan NAMESPACE adalah namespace yang ditentukan dalam file penggantian Anda, jika Anda menentukan namespace. Jika tidak, namespace default-nya
adalah
apigee
:kubectl delete job -n NAMESPACE \ $(kubectl get job -n NAMESPACE \ -o=jsonpath='{.items[?(@.status.succeeded==1)].metadata.name}')
- Bersihkan tugas yang sudah selesai untuk namespace
apigee-system
:kubectl delete job -n apigee-system \ $(kubectl get job -n apigee-system \ -o=jsonpath='{.items[?(@.status.succeeded==1)].metadata.name}')
- Ubah variabel
APIGEECTL_HOME
agar mengarah ke direktori yang berisiapigeectl
versi sebelumnya. Contoh:export APIGEECTL_HOME=PATH_TO_PREVIOUS_APIGEECTL_DIRECTORY
- Jalankan perintah berikut di direktori root penginstalan yang ingin Anda roll back.
Pastikan untuk menggunakan file penggantian asli untuk versi yang ingin Anda roll back:
- Di direktori hybrid file, jalankan
apigeectl apply
:$APIGEECTL_HOME
/apigeectl apply -f ORIGINAL_OVERRIDES_FILEDengan ORIGINAL_OVERRIDES_FILE adalah jalur relatif dan nama file dari file penggantian untuk penginstalan hybrid versi sebelumnya, misalnya,
./overrides/overrides1.10.yaml
. - Periksa status pod Anda:
kubectl -n NAMESPACE get pods
Dengan NAMESPACE sebagai namespace hybrid Apigee Anda.
- Periksa status
apigeeds
:kubectl describe apigeeds -n apigee
Output Anda akan terlihat seperti ini:
Status: Cassandra Data Replication: Cassandra Pod Ips: 10.8.2.204 Cassandra Ready Replicas: 1 Components: Cassandra: Last Successfully Released Version: Revision: v1-f8aa9a82b9f69613 Version: v1 Replicas: Available: 1 Ready: 1 Total: 1 Updated: 1 State: running Scaling: In Progress: false Operation: Requested Replicas: 0 State: running
Lanjutkan ke langkah berikutnya hanya saat pod
apigeeds
berjalan. - Jalankan perintah berikut untuk mencatat nilai jumlah replika baru Anda untuk pemroses pesan setelah upgrade. Jika nilai ini tidak cocok dengan nilai yang telah Anda tetapkan sebelumnya, ubah nilai dalam file penggantian agar cocok dengan konfigurasi Anda sebelumnya.
apigeectl apply -f ORIGINAL_OVERRIDES_FILE --dry-run=client --print-yaml --env ENV_NAME 2>/dev/null |grep "runtime:" -A 25 -B 1| grep "autoScaler" -A 2
Output Anda akan terlihat seperti ini:
autoScaler: minReplicas: 2 maxReplicas: 10
- Jalankan
apigeectl init
:$APIGEECTL_HOME
/apigeectl init -f ORIGINAL_OVERRIDES_FILE
- Di direktori hybrid file, jalankan