Kubernetes中的一个Traefik吊舱出现故障,出现错误:';命令traefik错误:未找到字段,节点:重定向';
我在Kubernetes集群上运行Traefik来管理入口,它已经正常运行了很长时间。 我最近实现了,除了在一个节点(由Autoscaler新创建)上Traefik不会启动之外,它工作得很好。它位于CrashLoopBackoff中,当我记录Pod时,我得到:Kubernetes中的一个Traefik吊舱出现故障,出现错误:';命令traefik错误:未找到字段,节点:重定向';,kubernetes,traefik,Kubernetes,Traefik,我在Kubernetes集群上运行Traefik来管理入口,它已经正常运行了很长时间。 我最近实现了,除了在一个节点(由Autoscaler新创建)上Traefik不会启动之外,它工作得很好。它位于CrashLoopBackoff中,当我记录Pod时,我得到:[date][time]命令traefik error:fieldnotfound,node:redirect。 谷歌没有找到相关的结果,错误本身也不是很具有描述性,所以我不确定该去哪里查找。 我最好的猜测是它与Traefik配置文件中配置
[date][time]命令traefik error:fieldnotfound,node:redirect
。
谷歌没有找到相关的结果,错误本身也不是很具有描述性,所以我不确定该去哪里查找。
我最好的猜测是它与Traefik配置文件中配置的中间件有关:
[entryPoints.http.redirect]
regex = "^http://(.+)(:80)?/(.*)"
replacement = "https://$1/$3"
Traefik实际上仍然可以工作——我仍然可以从浏览器中的URL访问我的所有应用程序,甚至是那些在带有死Traefik Pod的节点上的应用程序。
其他节点上的其他Traefik吊舱仍然运行得很愉快,并且节点(至少在理论上)是相同的。在进一步的谷歌搜索后,我在Reddit上发现。事实证明Traefik在几天前更新到了v2.0,这是不向后兼容的。 只有这个pod有问题,因为它是唯一一个为其拉取新(v2.0)映像的pod(是最近唯一创建的节点)。 我恢复到v1.7,直到有时间正确修复它。已将守护程序更新为使用v1.7,然后杀死Pod,以便可以从旧映像重新创建它。开发人员有一个可能有用的解决方案 “重定向”已不复存在,但现在出现了“重定向方案”和“重定向正则表达式”作为“中间件”的新概念
看起来他们正在转向管道方法,因此您可以定义一个“中间件”链来应用于“入口点”,以决定如何引导它以及在该链中的数据包上添加/删除/修改什么。“后端”现在是“提供者”,它们具有更清晰、模块化的配置概念。它看起来比以前的版本提供更好的组织。为什么要投否决票?我犯了同样的错误,这指向了正确的文档…我猜有人对一个不完整的答案不满意,如果至少是“方向上有用的”答案。