提升留存率
您可以控制 Kf 建構項目在垃圾收集前保留的數量。
kubectl patch \ kfsystem kfsystem \ --type='json' \ -p="[{'op': 'replace', 'path': '/spec/kf/config/buildRetentionCount', 'value': 1}]"
啟用或停用 Istio 補充程式
如果您不需要為建構 Pod 啟用 Istio 附屬程式,可以將值設為 true
來停用附屬程式。將值設為 false
即可啟用。
kubectl patch \ kfsystem kfsystem \ --type='json' \ -p="[{'op': 'replace', 'path': '/spec/kf/config/buildDisableIstioSidecar', 'value': true}]"
建構 Pod 資源限制
您可以將預設的 Pod 資源大小從預設值增加,以便容納非常大的建構項目。值的單位為 Mi
或 Gi
。
kubectl patch \ kfsystem kfsystem \ --type='json' \ -p="[{'op': 'replace', 'path': '/spec/kf/config/buildPodResources', 'value': {'limits': {'memory': '234Mi'}}}]"
如要進一步瞭解容器資源管理,請參閱 Kubernetes 容器資源說明文件。
服務代理程式的自行簽署憑證
如果您想為服務仲介器網址使用 TLS 的自行簽署憑證 (https
而非 http
),則 Kf 控制器需要 CA 憑證。如要針對此情況設定 Kf,請在 kf
命名空間中建立不可變動的 Kubernetes 密鑰,並更新 kfsystem.spec.kf.config.secrets.controllerCACerts.name
物件,讓其指向該密鑰。
建立密鑰來儲存自行簽署的憑證。
kubectl create secret generic cacerts -nkf --from-file /path/to/cert/certs.pem
讓密鑰不可變更。
kubectl patch -nkf secret cacerts \ --type='json' \ -p="[{'op':'add','path':'/immutable','value':true}]"
更新 kfsystem 以指向密鑰。
kubectl patch \ kfsystem kfsystem \ --type='json' \ -p="[{'op':'add','path':'/spec/kf/config/secrets','value':{'controllerCACerts':{'name':'cacerts'}}}]"
設定 CPU 最低值和比率
您可以在運算子中設定應用程式的預設 CPU 比率和最小值。
值會以 CPU 單位設定。單位通常以毫 CPU (m
) 表示,也就是 CPU 的千分之一。
spec.kf.config.appCPUMin
屬性會指定每個應用程式的 CPU 最小量,即使開發人員指定的量較少也一樣。
kubectl patch \ kfsystem kfsystem \ --type='json' \ -p="[{'op':'add','path':'/spec/kf/config/appCPUMin','value':'200m'}]"
spec.kf.config.appCPUPerGBOfRAM
屬性會指定每個應用程式可獲得的預設 CPU 量,以每 GB 或要求的 RAM 為單位。
您可以根據想要的結果選擇不同的做法:
- 如要盡可能提高使用率,請為叢集的節點選擇 CPU 與 RAM 的比例。
- 選擇 1 CPU 對 4 GB RAM 的比率,這通常適用於 I/0 或記憶體綁定的網路應用程式。
kubectl patch \ kfsystem kfsystem \ --type='json' \ -p="[{'op':'add','path':'/spec/kf/config/appCPUPerGBOfRAM','value':'250m'}]"