本文是“2022年3月微服务”Kubernetes网络五篇系列博客中的第三篇:
- 活动概览:2022 年 3 月微服务专题:Kubernetes 网络
- 第1单元:为高流量网站设计Kubernetes集群架构
- 第 2 单元:在 Kubernetes 中公开 API(本文)
- 第3单元:Kubernetes中的微服务安全模式
- 第4单元:高级Kubernetes部署策略
还可免费下载电子书《使用 NGINX 管理 Kubernetes 流量:实用指南》,详细了解如何使用 NGINX 实施 Kubernetes 网络。
是否计划通过Kubernetes处理API请求,并想了解部署API网关的良好实践?那么,第 2 单元正适合您!
三项活动将引导您从总体概览逐步过渡到实际应用。建议完成全部三项,以获得良好体验。
第1步:观看直播(1小时)
每场Microservices March直播都会对相关主题进行概述,并邀请来自learnk8s和NGINX的主题专家参与。如果错过3月14日的直播,也不用担心!您可以随时点播观看。
本期节目将解答以下问题:“如何在Kubernetes中公开API?”内容包括:
- 在Kubernetes中部署API网关的实践建议
- 授权和身份验证
- OpenID Connect (OIDC)
- 速率限制
 
第2步:深入学习(1–2小时)
直播结束后,您可能还会有更多问题,因此我们精选了一系列相关阅读材料和视频。本单元将深入探讨两个主题:在Kubernetes中部署API网关的工具选项,以及可使用这些工具实现的用例。

建议先阅读这篇博客。文章通过南北向和东西向API流量的示例场景,帮助您确定应使用哪种技术来实现API网关用例。

除了介绍各种工具和用例外,我们的专家还将演示如何使用Ingress控制器和服务网格来实现API网关用例。
现在,您已经对如何在Kubernetes中部署API网关有了扎实的基础,可以进一步了解常见用例。以下博客将介绍如何使用Kubernetes工具实现两种常见用例:身份验证和速率限制。
Ingress控制器是Kubernetes中集中进行身份验证和授权的理想位置,有助于减少错误并提高效率。本博客将介绍如何在OIDC授权码流程中,以NGINX Ingress Controller作为中继方、Okta作为身份提供商来实现单点登录。

大量请求可能会使 Kubernetes 服务不堪重负,因此,将每个客户端的请求数限制在合理范围内,是韧性策略的重要组成部分。本博客和视频将演示如何使用 NGINX Service Mesh,在不到 10 分钟内定义并应用速率限制策略。
额外研究
如果您希望深入了解API和API网关,并且可以投入1–2小时以上,建议参考以下一系列补充资源:
电子杂志|实时API:设计、运维与可观测性
本电子杂志介绍如何有效规划、构建和部署API,以实现可靠的灵活性。

本电子书是一份全面指南,介绍如何在不作任何妥协的情况下,降低应用和API的延迟。内容涵盖推动实时API发展的趋势、适用于各类企业的实用参考架构,以及有助于论证投资合适API管理解决方案商业价值的供应商比较和案例研究。

在这本O’Reilly电子书中,Mike Amundsen向开发人员和网络管理员介绍了监控和管理API流量的基本概念与挑战。您将了解如何观察和控制外部(南北向)流量,以及如何优化内部(东西向)流量。您还将了解良好API流量实践的业务价值,包括如何将业务目标和内部进展衡量指标与实用的流量监控、报告和分析相结合。
第3步:动手实践(1小时)
即使参加了高质量的网络研讨会并开展了充分研究,也没有什么比亲自上手技术更有效。实验室练习将引导您完成常见场景,巩固所学知识。
在第2个自定进度实验中,您将使用NGINX Ingress Controller实施速率限制,防止API和应用因请求过多而不堪重负。观看实验演示,了解实际操作过程以及每个步骤背后的原理。
要访问该实验,需要注册参加“2022年3月微服务”活动。如果已经注册,您收到的第2单元学习指南电子邮件中包含访问说明。也可以参考NGINX教程:使用速率限制保护Kubernetes API,在自己的环境中尝试该实验。
 
为何报名参加 Microservices March?
虽然部分活动(直播和博客)可免费参与,但为了让您获得完整体验,我们需要收集少量个人信息。注册后,您将获得:
- 访问4个自定进度的实验室,通过常见场景亲自实践相关技术
- 加入Microservices March Slack频道,向专家提问并与其他参与者交流
- 每周学习指南,帮助您及时掌握学习安排
- 直播日历邀请
接下来是什么?
第3单元:Kubernetes中的微服务安全模式将于3月21日开始。了解边车模式、可增强服务安全性和韧性的策略、服务网格、mTLS以及端到端加密。

如需了解使用NGINX实施Kubernetes网络的详细指南,请下载我们的电子书《使用NGINX管理Kubernetes流量:实用指南》。
关于作者

相关博客文章
NGINX Plus R26 正式发布
NGINX Plus R26通过缓存JSON Web密钥集加快JWT验证,并强化TLS握手,从而提升安全性。NGINX JavaScript的新功能包括增强对异步函数的支持,以及实现WebCrypto API。
使用NGINX App Protect DoS保护gRPC应用,抵御严重的DoS攻击
gRPC具备开发人员设计和部署现代应用所需的速度与灵活性,但其开放性也使其极易受到第7层DoS攻击。NGINX App Protect DoS可保护gRPC应用免受此类破坏性攻击。
Ingress Controller 选型指南(第 2 部分):风险与面向未来的规划
了解选择错误的Ingress控制器可能带来的风险,以及如何从关键方面着手,让您的选择更好地适应未来需求。
NGINX Plus R19 正式发布
NGINX Plus R19扩展了监控功能,不仅提供更多指标,还新增了指标分析方式;增加试运行模式,用于测试限速效果;增强键值存储,以支持IP地址范围;并使限速更加动态。
NGINX现已正式加入F5
NGINX现已正式成为F5的一部分。Gus Robertson现任F5 NGINX业务部门负责人。他阐述了两家公司在人才、文化和愿景方面融合的价值,以及双方将如何携手增强NGINX的开源产品和商业产品。
