Kubeflow部署后ml-pipeline pod CrashLoopBackOff及DBConfig.ExtraParams未指定求助
Config DBConfig.ExtraParams not specified报错属于数据库连接配置缺失问题,和DestinationRule的mTLS策略配置无直接关联,因此修改DestinationRule不会解决该问题,可按以下步骤排查修复:
第一步:定位ml-pipeline对应的配置ConfigMap,默认部署在
kubeflow命名空间下,ConfigMap名称为ml-pipeline-config,执行命令查看现有配置:kubectl get configmap -n kubeflow ml-pipeline-config -o yaml第二步:编辑该ConfigMap,在
DBConfig配置段下新增ExtraParams字段,若使用Kubeflow内置的ml-pipeline-mysql数据库,参数填?parseTime=true即可,若使用外部MySQL可根据实际需求补充时区、SSL校验等参数,修改后配置示例如下:
DBConfig: Host: ml-pipeline-mysql.kubeflow.svc.cluster.local Port: "3306" User: root Password: <你的数据库密码> DBName: mlpipeline ExtraParams: "?parseTime=true"
第三步:保存ConfigMap修改后,重启ml-pipeline工作负载让配置生效:
kubectl rollout restart deployment/ml-pipeline -n kubeflow第四步:验证pod运行状态,确认CrashLoopBackOff状态是否恢复:
kubectl get pods -n kubeflow | grep ml-pipeline
注意:如果重启后仍报相同错误,需检查ml-pipeline deployment的volumeMount配置,确认该ConfigMap已正确挂载到/etc/ml-pipeline/config路径下,若挂载配置缺失需补充后再重启
内容的提问来源于stack exchange,提问作者Ashis

