我的应用程序在常规K8上部署时运行良好。我将Istio和我的应用程序一起安装在K8上。我配置了网关和虚拟服务。除了与MySQL的内部连接外,大多数事情似乎都起作用。
有一些使用MySQL的服务,它们无法再使用Istio连接到数据库。
有什么想法坏了吗?我猜这与自动注入的Sidecar代理与交通混乱有关。我是Istio的新手,而文档在某些地方有点稀缺。我需要为MySQL配置一些特殊的东西吗?有趣的是,对MongoDB和Redis的调用似乎正在工作。困惑:-(
答案 0 :(得分:1)
istio 1.0.3中有多个错误可以阻止此错误。一个是名称中的/,开发人员似乎并不认为这很重要,但是会因为名称中使用斜杠而破坏了所有有状态集。解决此问题后,您可以启动一个statefulset mysql,但是连接是fubar,它可以连接但立即给出一个MySQL has gone away
。较新的1.1版本看起来同样糟糕。我认为1.0.2是Istio的最新“有效”版本,但是仍然存在一些重大问题使我尝试使用较新的版本。
您可以在这里找到istio.yaml更改:https://github.com/istio/istio/issues/9982