Kubernetes入口和入口路线之间有什么区别?

Kubernetes入口和入口路线之间有什么区别?,kubernetes,traefik-ingress,Kubernetes,Traefik Ingress,我还在学习kubernetes,我在“入口”和“入口路线”这两个对象上绊倒了。这两个物体有什么不同?入口路线是否替换了“旧”入口?我正在用Traefik 2.1运行Kubernetes群集V1.17。我的IngressRoute运行良好,但我也发现了解释如何定义ingress的博客。ingress是一个共享的抽象,可以由许多提供商(Nginx、ALBs、Traefik、HAProxy等)实现。它是一个相当简单的HTTP反向代理上的抽象,可以根据主机名和路径前缀进行路由。因为它必须是一个共享的东西

我还在学习kubernetes,我在“入口”和“入口路线”这两个对象上绊倒了。这两个物体有什么不同?入口路线是否替换了“旧”入口?我正在用Traefik 2.1运行Kubernetes群集V1.17。我的IngressRoute运行良好,但我也发现了解释如何定义ingress的博客。

ingress是一个共享的抽象,可以由许多提供商(Nginx、ALBs、Traefik、HAProxy等)实现。它是一个相当简单的HTTP反向代理上的抽象,可以根据主机名和路径前缀进行路由。因为它必须是一个共享的东西,这意味着它很难处理特定于提供者的设置的配置。提供商端的一些团队认为共享抽象的好处不值得实现的复杂性,他们已经做出了自己的事情,到目前为止,Contour和Traefik都将其命名为IngressRoute,但除了类似的命名之外,没有其他联系

Contour处理得相当好,允许两个系统共存,Traefik团队无视我们的警告,基本上削弱了对vanilla配置的进入,只是因为他们认为支持它没有任何好处。你能看出我对这件事很不满意吗?因为我肯定是


基本上,Ingress是官方的东西,但它并不完美,有些人正试图制造一种新的、更好的东西,但进展并不顺利。

An
ingressRoute
是Traefik特有的。它不是库伯内特人的母语。这是一个自定义资源定义,允许您利用Kubernetes
ingress
资源中未公开的Traefik功能

专家解释了这背后的原因

…社区表示需要从Traefik功能中获益,而无需借助(大量)注释,我们最终为IngressRoute类型编写了一个自定义资源定义(以下为别名CRD)


另外,OpenShift中的路由器系统也带来了额外的好处,它启发了Ingress标准,但仍然存在,因为OpenShift有很长的向后兼容承诺。是的,这很尴尬。我花了好几个星期才弄明白如何在裸机集群上安装traefik。因此,现在我将使用Traefik IngressRoute,它最终对我有效。请注意,这限制了您使用标准工具的能力,如cert manager和外部dns中的Ingress集成(尽管后者最终确实添加了对Contour的CRD的特定支持)。使用Traefik 2.2。不再需要使用入口路由,可以使用kubernetes的核心入口定义配置反向代理。这也清楚地说明了为什么我没有在kubernetes网站上找到解释。