Menyesuaikan Fitur Kf

Membangun Retensi

Anda dapat mengontrol jumlah Kf Build yang disimpan sebelum di-garbage collection.

kubectl patch \
kfsystem kfsystem \
--type='json' \
-p="[{'op': 'replace', 'path': '/spec/kf/config/buildRetentionCount', 'value': 1}]"

Mengaktifkan atau Menonaktifkan Sidecar Istio

Jika Anda tidak memerlukan sidecar Istio untuk pod Build, sidecar tersebut dapat dinonaktifkan dengan menetapkan nilai ke true. Aktifkan dengan menetapkan nilai ke false.

kubectl patch \
kfsystem kfsystem \
--type='json' \
-p="[{'op': 'replace', 'path': '/spec/kf/config/buildDisableIstioSidecar', 'value': true}]"

Batas Resource Pod Build

Ukuran resource pod default dapat ditingkatkan dari default untuk mengakomodasi build yang sangat besar. Satuan untuk nilai ini adalah Mi atau Gi.

kubectl patch \
kfsystem kfsystem \
--type='json' \
-p="[{'op': 'replace', 'path': '/spec/kf/config/buildPodResources', 'value': {'limits': {'memory': '234Mi'}}}]"

Baca dokumen resource container Kubernetes untuk mengetahui informasi selengkapnya tentang pengelolaan resource container.

Sertifikat yang Ditandatangani Sendiri untuk Perantara Layanan

Jika Anda ingin menggunakan sertifikat yang ditandatangani sendiri untuk TLS (https, bukan http) untuk URL broker layanan, pengontrol Kf memerlukan sertifikat CA. Untuk mengonfigurasi Kf untuk skenario ini, buat secret Kubernetes yang tidak dapat diubah di namespace kf dan perbarui objek kfsystem.spec.kf.config.secrets.controllerCACerts.name agar mengarah ke secret tersebut.

  1. Buat secret untuk menyimpan sertifikat yang ditandatangani sendiri.

    kubectl create secret generic cacerts -nkf --from-file /path/to/cert/certs.pem
    
  2. Buat secret tidak dapat diubah.

    kubectl patch -nkf secret cacerts \
      --type='json' \
      -p="[{'op':'add','path':'/immutable','value':true}]"
    
  3. Perbarui kfsystem agar mengarah ke secret.

    kubectl patch \
      kfsystem kfsystem \
      --type='json' \
      -p="[{'op':'add','path':'/spec/kf/config/secrets','value':{'controllerCACerts':{'name':'cacerts'}}}]"
    

Menetapkan rasio dan minimum CPU

Rasio dan minimum CPU default aplikasi dapat ditetapkan di operator.

Nilai ditetapkan dalam unit CPU. Satuan biasanya dinyatakan dalam millicpu (m), atau seperseribu CPU.

Properti spec.kf.config.appCPUMin menentukan jumlah minimum CPU per aplikasi, meskipun developer telah menentukan lebih sedikit.

kubectl patch \
    kfsystem kfsystem \
    --type='json' \
    -p="[{'op':'add','path':'/spec/kf/config/appCPUMin','value':'200m'}]"

Properti spec.kf.config.appCPUPerGBOfRAM menentukan jumlah CPU default untuk diberikan kepada setiap aplikasi per GB atau RAM yang diminta.

Anda dapat memilih pendekatan yang berbeda berdasarkan hasil yang diinginkan:

  • Pilih rasio CPU terhadap RAM untuk node cluster jika Anda ingin memaksimalkan penggunaan.
  • Pilih rasio 1 CPU dengan RAM 4 GB yang biasanya berfungsi dengan baik untuk aplikasi web yang terikat I/0 atau memori.
kubectl patch \
    kfsystem kfsystem \
    --type='json' \
    -p="[{'op':'add','path':'/spec/kf/config/appCPUPerGBOfRAM','value':'250m'}]"