Kubernetes 入门实战课
罗剑锋
Kong 高级工程师,Nginx/OpenResty 开源项目贡献者
19527 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 41 讲
Kubernetes 入门实战课
15
15
1.0x
00:00/00:00
登录|注册

加餐|谈谈Kong Ingress Controller

你好,我是 Chrono。
课程已经完结三个多月了,还记得结课时我说的那句话吗:“是终点,更是起点”,课程的完结绝不意味着我们终止对 Kubernetes 的钻研,相反,不论你我,都会在这个学习的道路上持续地走下去。
当初开课时,我计划了很多内容,不过 Kubernetes 的领域实在太广,加上我日常工作比较忙,时间和精力有限,所以一些原定的知识点没有来得及展现,比较可惜,我一直想找机会做个补偿。
这几天开发任务略微空闲了些,我就又回到了专栏,准备使用另一个流行的工具:Kong Ingress Controller,再来讲讲对 Kubernetes 集群管理非常重要的 Ingress。

认识 Kong Ingress Controller

我们先快速回顾一下 Ingress 的知识(第 21 讲)。
Ingress 类似 Service,基于 HTTP/HTTPS 协议,是七层负载均衡规则的集合,但它自身没有管理能力,必须要借助 Ingress Controller 才能控制 Kubernetes 集群的进出口流量。
所以,基于 Ingress 的定义,就出现了各式各样的 Ingress Controller 实现。
我们已经见过了 Nginx 官方开发的 Nginx Ingress Controller,但它局限于 Nginx 自身的能力,Ingress、Service 等对象更新时必须要修改静态的配置文件,再重启进程(reload),在变动频繁的微服务系统里就会引发一些问题。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

Kong Ingress Controller是一个基于OpenResty和内嵌的LuaJIT环境的流量管理工具,它在Kubernetes集群中实现了完全动态的路由变更,消除了reload的成本,运行更加平稳。相比Nginx Ingress Controller,Kong Ingress Controller的安装更为方便,且不会发生遗忘创建资源的错误。在实现架构方面,Kong Ingress Controller与Nginx Ingress Controller有明显不同,Kong Ingress Controller在Pod里使用两个容器,分别运行管理进程Controller和代理进程Proxy,这种分离的设计使得两个容器彼此独立,可以各自升级维护,对运维更为友好。Kong Ingress Controller还创建了两个Service对象,其中的“kong-proxy”是转发流量的服务。总的来说,Kong Ingress Controller在Kubernetes集群流量管理方面具有更高、更细致的管理需求,适合对流量有更高要求的用户。 Kong Ingress Controller的使用方法包括定义后端应用、定义Ingress Class和Ingress对象,以及分离出Ingress Controller的定义。通过这些步骤,用户可以轻松地实现Kong Ingress Controller的部署和验证。此外,Kong Ingress Controller还支持annotation功能,用户可以在不修改Ingress自身定义的前提下,利用内部的Kong来管理流量,以及启用Kong Ingress Controller内置的各种插件(Plugins),如Response Transformer和Rate Limiting。这些功能使得Kong Ingress Controller具有更多实用的增强功能,能够满足用户更多的流量管理需求。 总的来说,Kong Ingress Controller不仅提供了基本的流量管理功能,还支持更高级的功能扩展,为用户提供了更灵活、更强大的流量管理工具。 Kong Ingress Controller已经得到了广泛的应用和认可,而且在近年的发展过程中,它也开始支持新的Gateway API,为用户提供更多的选择和灵活性。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《Kubernetes 入门实战课》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(9)

  • 最新
  • 精选
  • 简简单单

    作者回复: thanks.

    2022-12-15归属地:上海
    4
  • Sheldon
    谢谢老师的加餐,这个课程真的很超值。

    作者回复: my pleasure.

    2023-02-01归属地:福建
    3
  • nc_ops
    老师,进入pod时为什么会默认进入proxy这个容器?这是在yaml文件的哪个位置确定的呢?

    作者回复: 应该是pod里定义的第一个容器。

    2023-01-03归属地:北京
    1
  • traefik也是一种ingress Controller吗?

    作者回复: 是吧,不过现在应该不怎么流行了。

    2023-09-19归属地:北京
  • 拓山
    谢谢老师,两周的高强度学习,完成了k8s的入门。 后面就要开始用k8s完成一系列云原生应用开发部署

    作者回复: awesome!

    2023-04-20归属地:浙江
  • StackOverflow
    和 apisix 功能很类似

    作者回复: 当然,不过两者的先后顺序要搞清楚。

    2023-04-02归属地:上海
  • 老师,我初始化集群的时候制定了service的网段,为啥创建的service的ip地址不是我指定的网段呢?

    作者回复: 这个可能要查文档了,不是一下子就能解答的。

    2023-03-17归属地:上海
  • quietwater
    老师的课程很对我的胃口,按部就班学习不会有什么障碍,必须点赞!!!APISIX也是一种Ingress,老师是否可以介绍一下。查了一些资料,感觉APISIX比Kong更强大。求解惑!!!

    作者回复: sorry,这个就不方便谈了。

    2023-02-23归属地:北京
  • nc_ops
    除了执行curl $(minikube ip):32521 -H 'host: kong.test' -i,如果想在网页上查看实验结果,该怎么操作呢

    作者回复: 因为minikube是运行在Linux里的,如果是本机可以直接用Firefox来访问,不然就只能外面再来一个Nginx做代理了。

    2023-02-17归属地:广东
收起评论
显示
设置
留言
9
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部