Kf-Features anpassen

Build-Aufbewahrung

Sie können steuern, wie viele Kf-Builds gespeichert werden, bevor der Speicher automatisch bereinigt wird.

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

Istio-Sidecar aktivieren oder deaktivieren

Wenn Sie für die Build-Pods keinen Istio-Sidecar benötigen, können Sie diese deaktivieren, indem Sie den Wert auf true setzen. Aktivieren Sie diese Option, indem Sie den Wert auf false setzen.

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

Build-Pod-Ressourcenlimits

Die Standardgröße von Pod-Ressourcen kann von der Standardgröße erhöht werden, um sehr große Builds zu berücksichtigen. Die Einheiten für den Wert sind in Mi oder Gi angegeben.

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

Weitere Informationen über die Verwaltung von Containerressourcen finden Sie in der Dokumentation zu Kubernetes-Containerressourcen.

Selbst signierte Zertifikate für Service Broker

Wenn Sie selbst signierte Zertifikate für TLS (https statt http) für die Service Broker-URL verwenden möchten, benötigt der Kf-Controller das CA-Zertifikat. Zur Konfiguration von Kf für dieses Szenario erstellen Sie ein unveränderliches Kubernetes-Secret im Namespace kf und aktualisieren Sie das Objekt kfsystem.spec.kf.config.secrets.controllerCACerts.name so, dass es darauf verweist.

  1. Erstellen Sie ein Secret zum Speichern des selbst signierten Zertifikats.

    kubectl create secret generic cacerts -nkf --from-file /path/to/cert/certs.pem
    
  2. Machen Sie das Secret unveränderlich.

    kubectl patch -nkf secret cacerts \
      --type='json' \
      -p="[{'op':'add','path':'/immutable','value':true}]"
    
  3. Aktualisieren Sie kfsystem, um auf das Secret zu verweisen.

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

CPU-Mindestwerte und -Verhältnisse festlegen

Im Operator können standardmäßige CPU-Mindestwerte und -Verhältnisse für Anwendungen festgelegt werden.

Werte werden in CPU-Einheiten festgelegt. Einheiten werden normalerweise in MilliCPUs (m) oder Tausendstel einer CPU ausgedrückt.

Das Attribut spec.kf.config.appCPUMin gibt einen CPU-Mindestwert pro Anwendung an, auch wenn der Entwickler weniger angegeben hat.

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

Das Attribut spec.kf.config.appCPUPerGBOfRAM gibt eine Standard-CPU-Menge an, die jeder Anwendung pro GB oder RAM zugewiesen werden soll.

Sie können je nach dem gewünschten Ergebnis verschiedene Ansätze auswählen:

  • Wählen Sie das Verhältnis von CPU zu RAM für die Knoten des Clusters aus, wenn Sie die Auslastung maximieren möchten.
  • Wählen Sie ein Verhältnis von 1 CPU zu 4 GB RAM aus, das normalerweise für E/A- oder speichergebundene Webanwendungen geeignet ist.
kubectl patch \
    kfsystem kfsystem \
    --type='json' \
    -p="[{'op':'add','path':'/spec/kf/config/appCPUPerGBOfRAM','value':'250m'}]"