Mengelola komponen bidang runtime

Topik ini menjelaskan cara mengonfigurasi dan mengelola Apigee Hybrid komponen bidang runtime. Untuk daftar komponen bidang runtime yang dapat Anda konfigurasi, lihat Layanan runtime ringkasan konfigurasi.

Tentang file penggantian

Saat pertama kali menginstal runtime hybrid ke dalam cluster, Anda harus buat konfigurasi mengganti file. File ini memungkinkan Anda mengganti konfigurasi default nilai sesuai kebutuhan, mengonfigurasi lingkungan, merujuk sertifikat dan layanan TLS kunci akun, tetapkan Kubernetes kumpulan node ke komponen hybrid tertentu, dan seterusnya.

Langkah-langkah penginstalan hybrid menjelaskan proses pembuatan file pengganti dan menerapkan konfigurasi Anda ke sebuah cluster. Jika Anda ingin mengubah konfigurasi di lain waktu, mengubah file pengganti yang Anda buat dan menerapkannya kembali.

Membuat perubahan konfigurasi

Untuk membuat perubahan konfigurasi pada komponen bidang runtime hybrid, edit file penggantian dan menerapkan perubahan dengan apigeectl.

Misalnya, untuk mengubah jumlah replika di Pemroses pesan, ikuti langkah-langkah berikut:

  1. Buka File OVERRIDES.yaml. Pastikan untuk menggunakan file pengganti yang sama dengan yang yang digunakan untuk menginstal runtime hybrid ke dalam cluster.
  2. Temukan elemen runtime dalam file tersebut. Contoh:
    ...
    runtime:
      nodeSelector:
        key: cloud.google.com/gke-nodepool
        value: apigee-runtime
      replicaCountMin: 1
      replicaCountMax: 2
    ...
  3. Ubah properti jumlah replika sesuai kebutuhan. Contoh:
    ...
    runtime:
      nodeSelector:
        key: cloud.google.com/gke-nodepool
        value: apigee-runtime
      replicaCountMin: 2
      replicaCountMax: 4
    ...
  4. Gunakan apigeectl untuk menerapkan perubahan pada cluster:
    apigeectl apply -f ./OVERRIDES.yaml --org --env ENV_NAME

Properti konfigurasi mana yang dapat Anda ubah?

Anda dapat menemukan daftar lengkap properti yang dapat dikonfigurasi di Referensi properti konfigurasi. Referensi tersebut hanya mencantumkan properti yang dapat Anda ubah; jika Anda mencoba mengubah properti yang tidak ada dalam perubahan tersebut akan diabaikan.

Cara menggunakan referensi konfigurasi

Referensi properti konfigurasi menggunakan notasi titik untuk menjelaskan elemen konfigurasi, di mana item pertama adalah nama elemen tingkat atas diikuti dengan properti dan properti turunan. Contoh:

authz.image.pullPolicy

Dalam file pengganti, properti diformat dalam YAML yang benar. Untuk contoh di atas, elemen authz tingkat atas diindentasi kiri dan properti sub-elemen dijorokkan di bawahnya. Selain itu, YAML memerlukan tanda titik dua pada akhir setiap elemen dan sub-elemen.

Misalnya, untuk menyetel properti authz.image.pullPolicy ke Always, cari stanza YAML ini dalam file pengganti dan setel sebagai berikut:

authz:
  image:
    pullPolicy: Always

Untuk contoh lain, properti cassandra.auth.admin.password (seperti tercantum dalam Referensi properti konfigurasi) digunakan untuk menetapkan Cassandra {i>password<i} admin. Untuk mengubahnya, cari YAML berikut dalam file pengganti dan atur data tersebut sebagai berikut:

cassandra:
  auth:
    admin:
      password: abc123

Ingat, Referensi properti konfigurasi menjelaskan semua properti yang dapat Anda tetapkan komponen bidang runtime hybrid. Ikuti pola yang dijelaskan di atas untuk mengubah elemen tersebut dalam file penggantian sebelum menerapkan perubahan pada cluster Anda.

Menggunakan contoh yang telah ditentukan sebelumnya akan menimpa file

Saat pertama kali menginstal runtime hybrid, Apigee merekomendasikan agar Anda menggunakan salah satu contoh yang telah dikonfigurasi sebelumnya menggantikan file. Contoh-contoh ini memberikan konfigurasi konfigurasi yang lengkap khusus untuk skenario penginstalan tertentu, seperti untuk menyiapkan penginstalan produksi atau uji coba. Yang perlu Anda lakukan adalah menyediakan nilai yang sesuai untuk properti dan terapkan file penggantian ke cluster Anda. Lihat Langkah 6: Konfigurasi cluster untuk informasi selengkapnya.

Tentang default konfigurasi

Apigee mempertahankan konfigurasi komponen defaultnya dalam file HYBRID_ROOT_DIR/config/values.yaml. File penggantian Anda mengikuti YAML yang sama struktur sebagai values.yaml.

File pengganti biasanya hanya menyertakan subset properti konfigurasi yang ada di values.yaml. Ingat, bukan semua properti dapat diedit. Saat Anda menerapkan konfigurasi ke cluster, penggantian Anda akan digabungkan dengan setelan default untuk membuat Kubernetes konfigurasi cluster Anda. Lihat juga Menguji konfigurasi gabungannya.

Kode berikut menunjukkan konfigurasi default untuk komponen mart sebagai ditemukan di values.yaml. Catatan beberapa nilai memiliki nilai default, sementara yang lain seperti sslCertPath dan sslKeyPath tidak. Anda harus memasukkan nilai yang belum diisi ini di menggantikan file Anda, seperti yang dijelaskan dalam langkah penginstalan. Jika Anda ingin mengubah salah satu nilai default, pastikan nilai tersebut dapat diedit dengan memeriksa 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 Anda ingin mengubah default suatu komponen dan komponennya belum ada di file penggantian, Anda dapat menyalin YAML-nya dari values.yaml ke mengganti file dan mengubahnya di sana.

Contoh file penggantian

Apigee menyediakan serangkaian contoh file penggantian untuk memandu Anda dalam menyiapkan deployment hybrid. Ini adalah praktik yang baik untuk menyalin dan mengubah file pengganti yang paling cocok dengan persyaratan penginstalan Anda.

Contoh berikut disertakan dalam direktori HYBRID_ROOT_DIR/examples:

Contoh file penggantian Deskripsi
overrides-small.yaml Sampel ini cocok untuk memulai dengan cepat. Menggunakan jejak minimum yang direkomendasikan untuk memulai komponen runtime hybrid. Contoh konfigurasi ini bergantung pada sebanyak mungkin pada setelan dan nilai default. Semua replika minimum ditetapkan ke 1.
overrides-medium.yaml Contoh ini merupakan titik awal yang baik untuk lingkungan pengujian dan UM (Uji Mutu). Komponen individual telah diberikan tingkat sumber daya yang lebih tinggi untuk menangani lalu lintas tambahan. Cassandra menggunakan Disk SSD untuk performa. Di lingkungan ini, sebaiknya pengguna menginstal komponen stateful dan stateless pada node terpisah. Lihat Konfigurasi node khusus.
overrides-large.yaml Contoh ini merupakan titik awal yang baik untuk lingkungan berperforma tinggi seperti praproduksi dan produksi. Contoh ini menyertakan properti untuk setelan kunci enkripsi, {i>password<i}, dan lainnya. Setiap komponen memiliki batas minimum yaitu dua replika.

Anotasi kustom

Anotasi adalah peta kunci/nilai yang digunakan untuk melampirkan metadata ke pod Kubernetes hybrid Apigee. Anda dapat membuat anotasi kustom untuk properti berikut yang tercantum di Referensi properti konfigurasi:

Untuk menambahkan anotasi khusus, tambahkan stanza ke file OVERRIDES.yaml untuk komponennya masing-masing.

Contoh berikut mengilustrasikan cara anotasi dapat ditentukan dalam runtime pod:

runtime:
  annotations:
    businessunit: "bu1"

Menguji konfigurasi yang digabungkan

Anda dapat menggunakan flag --dry-run dengan apigeectl untuk menguji penggabungan yang digabungkan file konfigurasi tanpa benar-benar menerapkannya ke cluster Anda. Opsi ini berguna untuk men-debug masalah penginstalan karena menunjukkan dengan tepat apa yang akan diterapkan pada cluster. Ini juga merupakan praktik yang baik untuk menguji konfigurasi dan menyimpannya di mengontrol sumber sehingga Anda memiliki referensi sumber daya yang diinstal dan dikonfigurasi dalam cluster.

Di Apigee Hybrid, sintaksis tanda --dry-run bergantung pada versi kubectl Anda sedang menjalankan. Periksa versi kubectl dengan perintah berikut:

kubectl version

kubectl versi 1.17 dan yang lebih lama:

APIGEECTL_HOME/apigeectl init -f overrides/OVERRIDES.yaml --dry-run=true

kubectl versi 1.18 dan yang lebih baru:

APIGEECTL_HOME/apigeectl init -f overrides/OVERRIDES.yaml --dry-run=client

Untuk informasi selengkapnya, lihat apigeectl.

Buat beberapa file penggantian sesuai kebutuhan

Anda dapat membuat file pengganti sebanyak yang diinginkan, di mana masing-masing file akan melayani persyaratan. Misalnya, Anda mungkin memiliki file pengganti yang menyesuaikan cluster Anda untuk produksi, dan satu lagi untuk membuat cluster pengujian. Anda kemudian dapat mempertahankan di sistem kontrol sumber Anda.

apigeectl apply  -f ./test_env_override.yaml

Untuk informasi selengkapnya, lihat apigeectl.

Menghapus komponen bidang runtime khusus hybrid

Untuk menghapus komponen bidang runtime khusus hybrid dari cluster Anda, gunakan metode Perintah apigeectl delete. Komponen ini mencakup synchronizer, mart, runtime, cassandra, dan udca. Pastikan untuk menentukan file pengganti yang sama dengan yang Anda gunakan untuk menginstal komponen runtime:

Contoh:

apigeectl delete -f ./OVERRIDES.yaml

Anda dapat menggunakan perintah apigeectl apply untuk membuat ulang komponen tertentu atau komponen:

apigeectl apply --org --env ENV_NAME -f ./OVERRIDES.yaml

Untuk informasi selengkapnya, lihat apigeectl.

Menghapus komponen tertentu

Jika Anda hanya ingin menghapus komponen tertentu, gunakan metode Opsi -c dengan apigeectl delete Pastikan untuk menentukan yang sama mengganti file yang Anda gunakan untuk menginstal komponen {i>runtime<i}.

Misalnya, untuk menghapus komponen synchronizer, gunakan perintah ini:

apigeectl delete --org --env ENV_NAME -f ./OVERRIDES.yaml

Anda kemudian dapat menggunakan perintah apigeectl apply untuk membuat ulang komponen:

apigeectl apply --org --env ENV_NAME -f ./OVERRIDES.yaml

Untuk informasi selengkapnya, lihat apigeectl.

Hapus semua komponen

Untuk menghapus semua komponen cluster Anda secara hybrid, termasuk yang dibuat oleh apigeectl init, gunakan apigeectl delete dengan flag --all. Pastikan untuk menentukan file pengganti yang sama, yang Anda gunakan untuk menginstal komponen runtime:

Contoh:

apigeectl delete -f ./OVERRIDES.yaml --all

Untuk informasi selengkapnya, lihat apigeectl.