环境: kubeflow 1.1.0, kubernetes 1.15.3, centos7.6
问题: 通过 kubeflow dashboard 部署应用,发现应用 not ready。
1、查看 pod 日志, 发现 Envoy proxy is NOT ready
kb logs -f x-0 -c istio-proxy -n nvidia-gpu
...
info Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 0 successful, 0 rejected; lds updates: 0 successful, 0 rejected
...
2、查看 pilot 服务正常。多次部署 app,发现只要 app pod 落在一个节点 node1 上,就会出现 ilstio-proxy not ready 问题。
3、查看 node1 节点上的 istio-nodeagent 日志,发现无法获取 secret
kubectl logs -f istio-nodeagent-br5j5 -n istio-system
...
error sdsServiceLog CONNECTION ID: sidecar~10.253.12.32~x-0.nvidia-gpu.svc.cluster.local-7538, RESOURCE NAME: ROOTCA,EVENT:close connection. Failed to get secret for proxy "sidecar~10.253.12.32~x-0.nvidia-gpu.svc.cluster.loca" from secret cache: failed to get root cert.
...
4、网上搜索,未找到解决方法。去 github 官方提问,官方说目前不支持 istio1.3 版本了,不会修复。istio 确实更新很快,而且从 1.5 版本起又有大的结构变动。至于说 kubefl

本文记录了在Kubeflow1.1.0环境下部署应用时遇到的Istio代理未就绪问题及解决过程。主要表现为Pod状态显示Envoy代理未准备就绪,进一步排查发现节点上istio-nodeagent无法获取secret,最终通过重启citadel服务解决了该问题。
最低0.47元/天 解锁文章
134

被折叠的 条评论
为什么被折叠?



