Kubernetes Ingress升级为GA,带来两大主要变化

2020 年 10 月 29 日 InfoQ

作者 | Hrishikesh Barua

译者 | 王者

在 2015 年首次引入 Ingress API 后,Kubernetes 团队在最近的 Kubernetes 1.19 版本中将该 API 升级为 GA。

Ingress API 用于将外部 HTTP/HTTPS 流量路由到后端 Kubernetes 服务。尽管这个 API 还处于测试阶段,但它已经被广泛使用,因为它是将外部流量以基于路径的形式路由给 Kubernetes 服务的唯一方法。正如谷歌开源博客所述,升级到 GA 的两个主要变化是 pathType IngressClass

在 2019 年 11 月的 KubeCon/CloudNativeCon 大会演讲中,Christopher M Luciano(IBM) 和 Bowei Du(谷歌) 演示了 GA 增强版预览。他们指出,以前的 API 在“确保巨大的可移植性”方面存在限制,并解释了 GA 版本的变化。这些限制导致大量第三方扩展和产品的出现——免费的和商业的——它们提供了路由、身份验证、访问控制、速率限制和度量收集等附加特性,其中包括 HAProxy、nginx、Traefik、Kong、Ambassador 和 Contour 等等。Kubernetes 项目本身维护 GCE(谷歌 Kubernetes 引擎使用) 和 nginx 控制器。

Ingress 控制器通常是由云供应商为托管 Kubernetes 实现的组件,“完成”Ingress 功能——也就是说,通常通过负载均衡器设置外部流量代理,并基于 Ingress 配置和同步路由规则。当 Kubernetes 部署在像 GCP、AWS 和 AKS 等云平台上时,Ingress 控制器由云供应商提供,云供应商的负载均衡器为其提供支持。

当然,也可以选择使用第三方 Ingress 控制器,如 nginx 或 HAProxy。

在路由方面, pathType 对之前的配置进行了扩展,允许委托给底层的 Ingress 控制器。除了委托之外,通过设置“pathType: ImplementationSpecific”——可以是精确匹配和前缀匹配,实现更灵活的配置,这在 Kubernetes 1.19 中是必需的。

IngressClass 封装了有关控制器的信息及其配置信息。然后,Ingress 定义将引用这个类,它将取代旧的、非标准的 kubernetes.io/ingress.class 注解。

以前通过注解和 ConfigMaps 来扩展 Ingress 的配置。在他们的演讲中,Luciano 和 Du 还提到 API 的关键变化:清理对象模型、对规范的一些调整以及备用后端类型的灵活性。

最后一点是指支持备用后端 (如存储桶),而不仅仅是 Kubernetes 服务。新版本的目标之一是通过扩展机制为特定于供应商的行为提供标准机制。

Ingress API 是通用的,与云平台无关,并独立于 Ingress 控制器。这些特性中的大多数都包含在 1.18 发行版中。

有迹象表明,Ingress 的开发路线图是维护版本 v1,同时开发“V2 Ingress API 或具有超功能集的完全不同的 API”。“ Gateway ”是一个开源的 Kubernetes API,“设计它是为了扩展 Ingress 的能力”,这可能是朝着这个方向迈出的一步。

原文链接:

https://www.infoq.com/news/2020/09/kubernetes-ingress-ga/


InfoQ 写作平台欢迎所有热爱技术、热爱创作、热爱分享的内容创作者入驻!

还有更多超值活动等你来!

扫描下方二维码

填写申请,成为作者

开启你的创作之路吧~

点个在看少个 bug 👇

登录查看更多
0

相关内容

Kubernetes 是一个自动化部署,扩展,以及容器化管理应用程序的开源系统。
专知会员服务
63+阅读 · 2021年1月25日
【2020新书】使用Kubernetes开发高级平台,519页pdf
专知会员服务
65+阅读 · 2020年9月19日
【Manning新书】现代Java实战,592页pdf
专知会员服务
98+阅读 · 2020年5月22日
Python导论,476页pdf,现代Python计算
专知会员服务
253+阅读 · 2020年5月17日
可解释强化学习,Explainable Reinforcement Learning: A Survey
专知会员服务
127+阅读 · 2020年5月14日
阿里开源的微服务中间件 Nacos
性能与架构
5+阅读 · 2019年11月5日
在K8S上运行Kafka合适吗?会遇到哪些陷阱?
DBAplus社群
9+阅读 · 2019年9月4日
浅谈 Kubernetes 在生产环境中的架构
DevOps时代
11+阅读 · 2019年5月8日
神器Cobalt Strike3.13破解版
黑白之道
12+阅读 · 2019年3月1日
日均5亿查询量,京东到家订单中心ES架构演进
51CTO博客
4+阅读 · 2019年1月16日
PyTorch 1.0 稳定版正式发布!
新智元
3+阅读 · 2018年12月8日
ROS 2正式版终于来了,还增加了这些新特性
量子位
3+阅读 · 2017年12月11日
A Fresh Look at FAIR for Research Software
Arxiv
0+阅读 · 2021年1月26日
Arxiv
0+阅读 · 2021年1月25日
Arxiv
0+阅读 · 2021年1月25日
Arxiv
0+阅读 · 2021年1月23日
Arxiv
4+阅读 · 2018年12月3日
Deep Reinforcement Learning: An Overview
Arxiv
17+阅读 · 2018年11月26日
VIP会员
相关VIP内容
专知会员服务
63+阅读 · 2021年1月25日
【2020新书】使用Kubernetes开发高级平台,519页pdf
专知会员服务
65+阅读 · 2020年9月19日
【Manning新书】现代Java实战,592页pdf
专知会员服务
98+阅读 · 2020年5月22日
Python导论,476页pdf,现代Python计算
专知会员服务
253+阅读 · 2020年5月17日
可解释强化学习,Explainable Reinforcement Learning: A Survey
专知会员服务
127+阅读 · 2020年5月14日
相关资讯
阿里开源的微服务中间件 Nacos
性能与架构
5+阅读 · 2019年11月5日
在K8S上运行Kafka合适吗?会遇到哪些陷阱?
DBAplus社群
9+阅读 · 2019年9月4日
浅谈 Kubernetes 在生产环境中的架构
DevOps时代
11+阅读 · 2019年5月8日
神器Cobalt Strike3.13破解版
黑白之道
12+阅读 · 2019年3月1日
日均5亿查询量,京东到家订单中心ES架构演进
51CTO博客
4+阅读 · 2019年1月16日
PyTorch 1.0 稳定版正式发布!
新智元
3+阅读 · 2018年12月8日
ROS 2正式版终于来了,还增加了这些新特性
量子位
3+阅读 · 2017年12月11日
Top
微信扫码咨询专知VIP会员