Topik ini menjelaskan cara mengonfigurasi dan mengelola komponen platform runtime Apigee Hybrid. Untuk mengetahui daftar komponen bidang runtime yang dapat Anda konfigurasi, lihat Ringkasan konfigurasi layanan runtime.
Tentang file penggantian
Saat pertama kali menginstal runtime campuran ke dalam cluster, Anda harus membuat file penggantian konfigurasi. File ini memungkinkan Anda mengganti nilai konfigurasi default sesuai kebutuhan, mengonfigurasi lingkungan, mereferensikan sertifikat TLS dan kunci akun layanan, menetapkan kumpulan node Kubernetes ke komponen campuran tertentu, dan sebagainya.
Langkah-langkah penginstalan hybrid memandu proses pembuatan file penggantian dan penerapan konfigurasi Anda ke cluster. Jika Anda ingin mengubah konfigurasi nanti, ubah file penggantian yang Anda buat dan terapkan kembali.
Melakukan perubahan konfigurasi
Untuk membuat perubahan konfigurasi pada komponen platform runtime hybrid,
edit file penggantian dan
terapkan perubahan dengan Helm atau apigeectl
, bergantung pada alat pengelolaan Anda.
Misalnya, untuk mengubah jumlah replika di Pemroses pesan, ikuti langkah-langkah berikut:
- Buka file
OVERRIDES
.yaml
Anda. Pastikan untuk menggunakan file penggantian yang sama dengan yang digunakan untuk menginstal runtime campuran ke dalam cluster. - Temukan elemen
runtime
dalam file. Contoh:... runtime: nodeSelector: key: cloud.google.com/gke-nodepool value: apigee-runtime replicaCountMin: 1 replicaCountMax: 2 ...
-
Ubah properti jumlah replika sesuai kebutuhan. Contoh:
runtime: nodeSelector: key: cloud.google.com/gke-nodepool value: apigee-runtime replicaCountMin: 2 replicaCountMax: 20
- Terapkan perubahan dengan perintah berikut:
Helm
Anda harus menginstal satu lingkungan dalam satu waktu. Tentukan lingkungan dengan
--set env=
ENV_NAME.- Lakukan uji coba terlebih dahulu:
helm upgrade ENV_RELEASE_NAME apigee-env/ \ --install \ --namespace APIGEE_NAMESPACE \ --set env=ENV_NAME \ -f OVERRIDES_FILE \ --dry-run
- ENV_RELEASE_NAME adalah nama yang Anda gunakan untuk menginstal diagram
apigee-env
sebelumnya. Di hybrid v1.10, biasanyaapigee-env-ENV_NAME
. Di Hybrid v1.11 dan yang lebih baru, biasanya ENV_NAME. - ENV_NAME adalah nama lingkungan yang Anda upgrade.
- OVERRIDES_FILE adalah jalur ke file penggantian Anda.1.3.6
- ENV_RELEASE_NAME adalah nama yang Anda gunakan untuk menginstal diagram
- Upgrade diagram:
helm upgrade ENV_RELEASE_NAME apigee-env/ \ --install \ --namespace APIGEE_NAMESPACE \ --set env=ENV_NAME \ -f OVERRIDES_FILE
apigeectl
Gunakan
apigeectl
untuk menerapkan perubahan ke cluster:apigeectl apply -f OVERRIDES.yaml --org --env apigee-env
- Lakukan uji coba terlebih dahulu:
- Pastikan aplikasi sudah aktif dan berjalan dengan memeriksa status setiap lingkungan:
kubectl -n APIGEE_NAMESPACE get apigeeenv
NAME STATE AGE GATEWAYTYPE apigee-org1-dev-xxx running 2d
Properti konfigurasi mana yang dapat Anda ubah?
Anda dapat menemukan daftar lengkap properti yang dapat dikonfigurasi di Referensi properti konfigurasi. Referensi hanya mencantumkan properti yang dapat Anda ubah; jika Anda mencoba mengubah properti yang tidak ada dalam referensi, perubahan akan diabaikan.
Cara menggunakan referensi konfigurasi
Referensi properti konfigurasi menggunakan notasi titik untuk mendeskripsikan elemen konfigurasi, dengan item pertama adalah nama elemen tingkat atas, diikuti dengan properti dan properti turunan. Contoh:
ao.image.pullPolicy
Dalam file penggantian, properti diformat dalam YAML yang sesuai. Untuk contoh di atas,
elemen ao
level atas diindentasi ke kiri
dan properti sub-elemen diindentasi di bawahnya. Selain itu, YAML memerlukan titik dua di
akhir setiap elemen dan sub-elemen.
Misalnya, untuk menetapkan properti ao.image.pullPolicy
ke Always
, temukan
baris YAML ini dalam file penggantian dan tetapkan sebagai berikut:
ao: image: pullPolicy: Always
Sebagai contoh lain, properti cassandra.auth.admin.password
(seperti yang
tercantum dalam Referensi properti konfigurasi) digunakan untuk menetapkan sandi admin
Cassandra. Untuk mengubahnya, temukan YAML berikut dalam file penggantian dan tetapkan
sebagai berikut:
cassandra: auth: admin: password: abc123
Ingat, Referensi properti konfigurasi menjelaskan semua properti yang dapat Anda tetapkan pada komponen platform runtime campuran. Ikuti pola yang dijelaskan di atas untuk mengubah elemen ini dalam file penggantian sebelum menerapkan perubahan ke cluster.
Menggunakan file penggantian contoh yang telah ditentukan sebelumnya
Saat pertama kali menginstal runtime campuran, Apigee merekomendasikan agar Anda menggunakan salah satu contoh file penggantian yang telah dikonfigurasi sebelumnya. Contoh ini memberikan kumpulan lengkap properti konfigurasi untuk skenario penginstalan tertentu, seperti untuk menyiapkan penginstalan produksi atau pengujian. Yang perlu Anda lakukan adalah memberikan nilai yang sesuai untuk properti dan menerapkan file penggantian ke cluster Anda. Lihat Langkah 6: Konfigurasi cluster untuk mengetahui informasi selengkapnya.
Tentang default konfigurasi
Apigee mempertahankan konfigurasi komponen defaultnya dalam file
HYBRID_ROOT_DIR/config/values.yaml
. File penggantian Anda mengikuti struktur YAML
yang sama dengan values.yaml
.
File penggantian biasanya hanya menyertakan sebagian properti konfigurasi yang ditemukan di
values.yaml
. Ingat, tidak semua properti dapat diedit. Saat Anda menerapkan konfigurasi ke cluster, penggantian akan digabungkan dengan default untuk membuat konfigurasi cluster Kubernetes lengkap. Lihat juga Menguji konfigurasi yang digabungkan.
Kode berikut menunjukkan konfigurasi default untuk komponen mart
seperti
yang ditemukan di values.yaml
. Perhatikan
bahwa beberapa nilai memiliki nilai default, sedangkan nilai lainnya seperti sslCertPath
dan
sslKeyPath
tidak. Anda harus memberikan nilai yang hilang ini dalam file penggantian, seperti yang dijelaskan dalam langkah-langkah penginstalan.
Jika Anda ingin mengubah salah satu nilai default, pastikan nilai tersebut dapat diedit dengan memeriksa di Referensi properti konfigurasi.
... mart: replicaCountMin: 2 replicaCountMax: 4 targetCPUUtilizationPercentage: 75 terminationGracePeriodSeconds: 30 sslCertPath: sslKeyPath: hostAlias: nodeSelector: key: value: revision: blue image: url: "gcr.io/apigee-release/hybrid/apigee-mart-server" tag: "1.3.6" pullPolicy: IfNotPresent resources: requests: cpu: 500m memory: 512Mi initCheckCF: resources: requests: cpu: 10m livenessProbe: timeoutSeconds: 1 failureThreshold: 12 periodSeconds: 5 initialDelaySeconds: 15 readinessProbe: timeoutSeconds: 1 successThreshold: 1 failureThreshold: 2 periodSeconds: 5 initialDelaySeconds: 15 metricsURL: "/v1/server/metrics" cwcAppend: | ...
Jika ingin mengubah default komponen dan komponen tersebut
belum ada dalam file penggantian, Anda dapat menyalin YAML-nya dari values.yaml
ke dalam
file penggantian dan mengubahnya di sana.
Contoh file penggantian
Apigee menyediakan sekumpulan contoh file penggantian untuk membantu memandu Anda dalam menyiapkan deployment campuran. Sebaiknya salin dan ubah file penggantian yang paling cocok dengan persyaratan penginstalan Anda.
Contoh berikut disertakan dalam
direktori HYBRID_ROOT_DIR/examples
:
Contoh file penggantian | Deskripsi |
---|---|
overrides-small.yaml |
Contoh ini ideal untuk memulai dengan cepat. Fitur ini menggunakan jejak minimum yang direkomendasikan
untuk memulai komponen runtime campuran. Konfigurasi contoh ini bergantung
sebanyak mungkin pada setelan dan nilai default. Semua replika minimum ditetapkan ke 1 . |
overrides-medium.yaml |
Contoh ini adalah titik awal yang baik untuk lingkungan pengujian dan QA. Setiap komponen telah diberi resource tingkat lebih tinggi untuk menangani traffic tambahan. Cassandra menggunakan disk SSD untuk performa. Dalam lingkungan ini, sebaiknya pengguna menginstal komponen stateful dan stateless di node terpisah. Lihat Mengonfigurasi node khusus. |
overrides-large.yaml |
Contoh ini adalah titik awal yang baik untuk lingkungan berperforma tinggi seperti praproduksi dan produksi. Contoh ini mencakup properti untuk menetapkan kunci enkripsi, sandi, dan lainnya. Setiap komponen memiliki minimal dua replika. |
Anotasi kustom
Anotasi adalah peta kunci/nilai yang digunakan untuk melampirkan metadata ke pod Kubernetes campuran Apigee. Anda dapat membuat anotasi kustom untuk properti berikut yang tercantum dalam Referensi properti konfigurasi:
Untuk menambahkan anotasi kustom, tambahkan stanza ke file OVERRIDES.yaml
untuk komponen masing-masing.
Contoh berikut menggambarkan cara anotasi dapat ditentukan dalam pod runtime
:
runtime: annotations: businessunit: "bu1"
Menguji konfigurasi gabungan
Anda dapat menggunakan flag --dry-run
untuk menguji file konfigurasi
yang digabungkan tanpa benar-benar menerapkannya ke cluster. Opsi ini berguna untuk men-debug masalah penginstalan karena menunjukkan dengan tepat apa yang akan diterapkan ke cluster.
Sebaiknya uji konfigurasi dan simpan di kontrol sumber sehingga Anda memiliki referensi resource yang diinstal dan dikonfigurasi di cluster.
Helm
kubectl apply -k apigee-operator/etc/crds/default/
helm upgrade operator apigee-operator/ \ --install \ --namespace apigee-system \ --atomic \ -f OVERRIDES_FILE.yaml \ --dry-run
helm upgrade ingress-manager apigee-ingress-manager/ / --install \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml \ --dry-run
apigeectl
APIGEECTL_HOME/apigeectl init -f overrides/OVERRIDES.yaml --dry-run=client
Untuk informasi selengkapnya, lihat apigeectl
.
Membuat beberapa file penggantian sesuai kebutuhan
Anda dapat membuat file penggantian sebanyak yang diinginkan, dengan setiap file memenuhi persyaratan tertentu. Misalnya, Anda mungkin memiliki file penggantian yang menyesuaikan cluster untuk produksi, dan file lain untuk membuat cluster pengujian. Kemudian, Anda dapat mengelola file ini di sistem kontrol sumber.
Contoh:
Helm
helm upgrade test-1-env apigee-env/ \ --namespace apigee \ --atomic \ --set env=test-1-env \ -f test-1-env-overrides.yaml
apigeectl
$APIGEECTL_HOME/apigeectl apply -f test-1-env-overrides.yaml --env test-1-env
Menghapus komponen bidang runtime khusus campuran
Komponen bidang runtime mencakup synchronizer
,
mart
, runtime
,
cassandra
, dan udca
.
Untuk menghapus komponen platform runtime khusus hibrida dari cluster Anda, gunakan perintah helm delete
atau apigeectl delete
.
Pastikan untuk menentukan file penggantian yang sama dengan yang Anda gunakan untuk menginstal komponen runtime.
Contoh:
Helm
Dengan Helm, Anda harus menghapus setiap komponen satu per satu. Misalnya, untuk menghapus komponencassandra
, gunakan perintah berikut:
helm -n apigee delete datastore
Pada contoh di atas, komponen datastore diinstal dengan nama "datastore". Jika Anda
menginstalnya dengan nama yang berbeda, Anda harus memberikan nama tersebut untuk menghapus
komponen. Misalnya, jika Anda menginstal diagram apigee-datastore
dengan
helm install my-cassandra-storage apigee-datastore/
. Anda akan menghapusnya dengan perintah berikut:
helm delete -n apigee my-cassandra-storage
apigeectl
Dengan apigeectl
, Anda dapat menghapus semua komponen runtime sekaligus atau membatasi cakupan
untuk menghapus satu komponen pada satu waktu. Misalnya, untuk menghapus semua komponen sekaligus:
$APIGEECTL_HOME/apigeectl delete -f OVERRIDES_FILE.yaml
Untuk menghapus komponen cassandra
:
$APIGEECTL_HOME/apigeectl delete -f OVERRIDES_FILE.yaml --datastore
Untuk membuat ulang komponen atau komponen tertentu (grup lingkungan dalam contoh ini):
Helm
helm upgrade ENV_GROUP apigee-virtualhost/ \ --install \ --namespace apigee \ --atomic \ --set envgroup=ENV_GROUP_NAME \ -f OVERRIDES_FILE.yaml
apigeectl
$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE.yaml --env ENV_NAME --settings virtualhosts