Personnaliser les fonctionnalités Kf

Conservation des compilations

Vous pouvez contrôler le nombre de compilations Kf conservées avant la récupération de mémoire.

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

Activer ou désactiver le side-car Istio

Si vous n'avez pas besoin du side-car Istio pour les pods de compilation, ceux-ci peuvent être désactivés en définissant la valeur sur true. Activez cette fonctionnalité en définissant la valeur sur false.

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

Limites de ressources des pods de compilation

La taille par défaut des ressources du pod peut être augmentée pour prendre en charge les compilations très volumineuses. Les unités de cette valeur sont exprimées en Mi ou en Gi.

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

Consultez la documentation sur les ressources de conteneur Kubernetes pour en savoir plus sur la gestion des ressources de conteneur.

Certificats autosignés pour les agents de service

Si vous souhaitez utiliser des certificats autosignés pour TLS (https au lieu de http) pour l'URL de l'agent de service, le contrôleur Kf nécessite le certificat CA. Pour configurer Kf pour ce scénario, créez un secret Kubernetes immuable dans l'espace de noms kf, puis mettez à jour l'objet kfsystem.spec.kf.config.secrets.controllerCACerts.name pour qu'il pointe vers celui-ci.

  1. Créez un secret pour stocker le certificat autosigné.

    kubectl create secret generic cacerts -nkf --from-file /path/to/cert/certs.pem
    
  2. Rendez le secret immuable.

    kubectl patch -nkf secret cacerts \
      --type='json' \
      -p="[{'op':'add','path':'/immutable','value':true}]"
    
  3. Mettez à jour kfsystem pour qu'il pointe vers le secret.

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