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 di
file overrides.yaml
.
Layanan | Diterapkan Sebagai | Penskalaan |
---|---|---|
Cassandra | ApigeeDatastore (CRD) | Lihat Menskalakan Cassandra. |
Ingress/LoadBalancer | Deployment | Anthos Service Mesh menggunakan Penskalaan Otomatis Pod Horizontal (HPA). |
Logger | DaemonSet | DaemonSet mengelola replika pod di semua node, sehingga DaemonSet akan diskalakan saat Anda menskalakan pod itu sendiri. |
MART Apigee Connect Watcher |
ApigeeOrganization (CRD) | Untuk menskalakan melalui konfigurasi, tingkatkan nilai properti konfigurasi mart: replicaCountMin: 2 replicaCountMax: 1 watcher: replicaCountMin: 2 replicaCountMax: 1 connectAgent: replicaCountMin: 2 replicaCountMax: 1 Deployment ini menggunakan Horizontal Pod Autoscaler untuk penskalaan otomatis. Tetapkan properti Untuk informasi selengkapnya tentang cara menetapkan properti konfigurasi, lihat Mengelola komponen bidang runtime. |
Runtime Sinkronisasi UDCA |
ApigeeEnvironment (CRD) | Untuk menskalakan 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 dalam 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 tentang cara menetapkan properti konfigurasi, lihat Mengelola komponen bidang runtime. |
Konfigurasi lanjutan
Dalam beberapa skenario, Anda mungkin perlu menggunakan opsi penskalaan lanjutan. Contoh skenario mencakup:
- Menetapkan opsi penskalaan yang berbeda untuk setiap lingkungan. Misalnya, dengan env1 memiliki
minReplica
5 dan env2 memilikiminReplica
2. - Menetapkan opsi penskalaan yang berbeda untuk setiap komponen dalam lingkungan. Misalnya,
dengan komponen
udca
memilikimaxReplica
5 dan komponensynchronizer
memilikimaxReplica
2.
Contoh berikut menunjukkan cara menggunakan perintah kubernetes patch
untuk mengubah properti maxReplicas
untuk komponen runtime
:
- Buat variabel lingkungan untuk 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 yang terjadi:
kubectl get hpa -n $NAMESPACE