Issue
Configuration changes made through the Milvus Admin UI, such as cache size or preload_collection, do not persist after restarting the Milvus pod. Values appear correctly via API immediately after change, but revert to defaults after a pod restart.
Environment
Fusion 5.
Milvus deployed via ml-model-service Helm chart in a Kubernetes environment.
Cause
The Milvus Admin UI does not persist configuration changes in a way that survives Kubernetes pod restarts. When pods restart, they revert to the values defined in the Helm chart or the Kubernetes configMap if overrides were not explicitly applied there.
Resolution
Persist configuration using Helm values.yaml
To make configuration changes persistent across pod restarts:
- Edit the Helm chart's
values.yamlor custom overrides file:
ml-model-service:
milvus:
cache:
cacheSize: "7GB"
insertBufferSize: "1GB"
preloadCollection: "*"- Apply the updated Helm configuration:
kubectl apply -f ml-model-service.yaml- Confirm that the configuration was successfully applied by checking the Milvus API again.
Update Kubernetes configMap for preload_collection
Some parameters, such as preload_collection, are stored in the Milvus configMap and not available via Helm by default.
- Identify the relevant Milvus configMap:
kubectl get configmap -n <namespace> | grep milvus- Edit the configMap manually:
kubectl edit configmap <milvus-configmap-name> -n <namespace>