Anda dapat menskalakan sebagian besar layanan yang berjalan di Kubernetes dari command line atau dalam penggantian konfigurasi. Anda dapat menetapkan parameter penskalaan untuk layanan runtime hybrid Apigee dalam file overrides.yaml
.
Layanan | Diterapkan Sebagai | Penskalaan |
---|---|---|
Cassandra | ApigeeDatastore (CRD) | Lihat Penskalaan Cassandra. |
Ingress/LoadBalancer | Deployment | Anthos Service Mesh menggunakan Penskalaan Otomatis Pod Horizontal (HPA). |
Logger | DaemonSet | DaemonSet mengelola replika pod di semua node, sehingga akan diskalakan ketika Anda menskalakan pod itu sendiri. |
MART Apigee Connect Watcher |
ApigeeOrganization (CRD) | Untuk melakukan penskalaan melalui konfigurasi, tingkatkan nilai properti konfigurasi mart: replicaCountMin: 2 replicaCountMax: 1 watcher: replicaCountMin: 2 replicaCountMax: 1 connectAgent: replicaCountMin: 2 replicaCountMax: 1 Deployment ini menggunakan Autoscaler Pod Horizontal untuk penskalaan otomatis. Tetapkan properti Untuk informasi selengkapnya mengenai menetapkan properti konfigurasi, lihat Mengelola komponen bidang runtime. |
Runtime Sinkronisasi UDCA |
ApigeeEnvironment (CRD) | Untuk melakukan penskalaan melalui konfigurasi, tingkatkan nilai properti
replicaCountMin untuk stanza udca , synchronizer ,
dan/atau runtime
dalam file penggantian. Contoh:
synchronizer: replicaCountMin: 10 replicaCountMax: 1 runtime: replicaCountMin: 10 replicaCountMax: 1 udca: replicaCountMin: 10 replicaCountMax: 1 Catatan: Perubahan ini berlaku untuk SEMUA lingkungan di file penggantian. Jika Anda ingin menyesuaikan penskalaan untuk setiap lingkungan, lihat Konfigurasi lanjutan di bawah. Deployment ini menggunakan Horizontal Pod Autoscaler untuk penskalaan otomatis. Tetapkan properti Untuk informasi selengkapnya mengenai menetapkan properti konfigurasi, lihat Mengelola komponen bidang runtime. |
Konfigurasi lanjutan
Dalam beberapa skenario, Anda mungkin perlu menggunakan opsi penskalaan lanjutan. Contoh skenario mencakup:
- Menyetel opsi penskalaan yang berbeda untuk setiap lingkungan. Misalnya, jika env1 memiliki
minReplica
5 dan env2 memilikiminReplica
2. - Menyetel opsi penskalaan yang berbeda untuk setiap komponen dalam lingkungan. Misalnya,
dengan komponen
udca
memilikimaxReplica
dari 5 dan komponensynchronizer
memilikimaxReplica
2.
Contoh berikut menunjukkan cara menggunakan perintah kubernetes patch
untuk mengubah
properti maxReplicas
untuk komponen runtime
:
- Buat variabel lingkungan yang akan digunakan dengan perintah:
export ENV=my-environment-name export NAMESPACE=apigee #the namespace where apigee is deployed export COMPONENT=runtime #can be udca or synchronizer export MAX_REPLICAS=2 export MIN_REPLICAS=1
- Terapkan patch. Perhatikan bahwa contoh ini mengasumsikan bahwa
kubectl
ada diPATH
Anda:kubectl patch apigeeenvironment -n $NAMESPACE \ $(kubectl get apigeeenvironments -n $NAMESPACE -o jsonpath='{.items[?(@.spec.name == "'$ENV'" )]..metadata.name}') \ --patch "$(echo -e "spec:\n components:\n $COMPONENT:\n autoScaler:\n maxReplicas: $MAX_REPLICAS\n minReplicas: $MIN_REPLICAS")" \ --type merge
- Verifikasi perubahan tersebut:
kubectl get hpa -n $NAMESPACE