NGINX.COM
Web Server Load Balancing with NGINX Plus
譬如为山,未成一篑,止,吾止也。
—— 孔子

换句话说,积土成山,汇土成地。对于使用 CI/CD 流水线开发现代应用的团队来说,保持这种思维是基本的。虽然每天在主线中集成一点新代码不是什么大事,但是这样日积月累可能会造就下一个“杀手级”应用。

过去几个月来,NGINX 先后发布了 NGINX Controller 应用交付模块 (ADM) 的几个新版本 —— 对于 NGINX Plus 部署及其支持的应用来说,它原本就是一个功能强大的治理、可观测性和简洁操作平台,新版本的发布无疑又让它实现了质的提升。

具体来说,ADM 版本 3.20、3.21 和 3.22 都提供了重要的新特性和增强的功能,其中大部分都是来自您的反馈。接下来我们看看每个版本都有哪些帮助您保持应用可用性、安全性和最佳性能的精彩亮点。

 

版本 3.22 的新特性和增强功能

版本 3.22 于 2021 年 12 月 20 日发布,包含以下新特性和增强功能:

  • Snippet —— NGINX Controller 的一个核心任务就是简化工作流程,在可观测性、治理和操作方面与以应用为中心的模型保持一致。从设计上看,实施此模型必然要进行一定的权衡,在“固有不变”的配置和轻微限制的自定义 NGINX 部署之间进行平衡—— 尤其是与 NGINX Plus 实例的直接配置和管理相比。但是我们知道,有时您必须要针对特定用例定制配置。

    有了 snippet,您现在可以将控制器 API 本身不支持的自定义 NGINX 配置插入到 NGINX 配置中的 main、httpstreamserverlocationupstream。有关最佳实践和示例,请参见 Controller 文档中的“关于 Snippet ”。

  • 工作负载健康检查事件 —— NGINX Controller 的一个主要用例是以应用为中心的可视化和洞察,这有助于确保您的应用保持健康和可用。版本 3.22 增强了这一功能,每个组件都会按实例生成两个额外的工作负载健康检查事件:

    • 一个触发的事件表示工作负载组成员从“健康”到“不健康”的状态变化
    • 一个事件提供了工作负载组成员的当前状态快照,快照每隔几分钟发送一次
  • 工作负载健康检查探针可编程性 —— 您可以配置 NGINX Plus 数据平面发送给工作负载或托管应用的上游服务器的健康检查探针的请求头。

  • 高速缓存 —— NGINX Plus 的一个关键优势是能够缓存来自代理 Web 和应用服务器的静态和动态 HTTP 内容。高速缓存通过减少服务器上的负载和发送给客户端的响应的延迟,从而提升应用性能,最终改善客户的数字体验。

    在版本 3.22 中,您可以通过 API 或用户界面配置高速缓存,并通过性能指标和仪表盘深入查看缓存的内容。您还可以将上述 snippet 新功能用于 NGINX 支持的高级缓存配置,例如基于内容类型的不同缓存位置。有关更多信息,请参阅 Controller 文档中的“关于高速缓存”。

  • Worker 进程调优 —— 您可以通过优化 NGINX Plus worker 进程更好地利用底层机器的功能,为此,您需要使用 Controller API 设置以下指令multi_acceptworker_connectionsworker_priorityworker_processesworker_rlimit_nofile

  • 实例组 —— 您现在可以为 NGINX Plus 实例创建一个逻辑组,让它们接收相同的配置。该功能允许一步式批量配置多个实例。

  • 其他增强特性

    • 支持对采用 NTLM 身份验证的上游服务器启用代理。
    • UI 增强功能,支持为 ADC Web 组件配置速率限制和 JWT 身份验证。
    • 支持使用 Azure AD 作为身份提供商的 OpenID Connect (OIDC) 身份验证。
    • 支持 SELinux —— 您现在可以在启用 SELinux 的 Linux 机器上运行 Controller 和 Controller Agent。
    • 支持 NGINX App Protect WAF 3.7。
    • Red Hat Enterprise Linux (RHEL) 8 技术预览版 —— 您可以在 RHEL 8 上运行 Controller 和 Controller Agent,进行 PoC。我们仅在小型部署环境中测试了此功能。由于可能存在性能和稳定性问题,我们强烈建议您在部署到生产环境之前先在测试环境中进行扩展试验。

有关更多信息,请参阅版本说明

 

版本 3.21 的新特性和增强功能

版本 3.21 于 2021 年 10 月 27 日发布,包含以下新特性和增强功能:

  • 对 snippet 的初始支持(试验特性)。如上所述,客户反馈促使我们在版本 3.22 中优化了可以正式交付的功能。

  • 对上述实例组的初始支持。

  • 支持 NGINX Plus R19 到 R25。

  • 支持 NGINX App Protect WAF 3.6 及早期版本。

有关更多信息,请参阅版本说明

 

版本 3.20 的新特性和增强功能

版本 3.20 于 2021 年 9 月 14 日发布,它实现了更高的可扩展性、更出色的稳定性以及整体产品质量的巨大飞跃,使得版本 3.21 和 3.22 中的许多创新成为了可能。它的特性和增强功能包括:

  • 引入了数据平面管理器 (DPM) —— 这一内部增强功能提高了 NGINX Controller 的整体可扩展性和弹性。借助 DPM,您现在可以通过单一管理平台全面管理更多 NGINX Plus 实例和应用服务,并且可以放心您的 Controller 部署将始终保持可用(可扩展程度因部署而异,具体取决于配置)。

  • Data Explorer —— 您可以更轻松地深入查看 Controller 管理的 NGINX Plus 实例产生的大量数据流和指标。Data Explorer 能够从指标中提取强大的、可操作的洞察,例如本周特定应用的 HTTP POST 请求生成的数据量以及与上周的比较,或者环境的平均 CPU 利用率趋势。通过更好的过滤、数据维度以及在 NGINX Plus 原始数据之上叠加事件和时间尺度,您可以创建自己的 NGINX Plus 数据定制视图,并生成警报以随时了解环境动态。

  • 其他增强特性

    • NGINX Controller 与 Controller Agent 之间的高性能通信路径
    • 支持 NGINX App Protect WAF 3.3 到 3.5
    • 支持 NGINX Plus R19 到 R24

有关更多信息,请参阅版本说明

 

欢迎大家积极反馈

NGINX Controller 应用交付模块(通常叫做“ Controller 平台”)将会继续演进。版本 3.20 到 3.22 共同推动了平台的改进,进一步简化了管理任务,更容易提取有意义的应用洞察,并且帮助加强了安全态势。其中许多新特性和增强功能都直接来自我们与客户的对话,或者深受您的反馈意见的启发。我们欢迎大家继续积极提出意见,与负责您的客户经理多加沟通。

心动不如行动,赶紧体验 NGINX Controller 吧!立即下载 NGINX Controller 30 天免费试用版,或联系我们讨论您的使用场景

Hero image
免费 O'Reilly 电子书:
《NGINX 完全指南》

更新于 2022 年,一本书了解关于 NGINX 的一切

关于作者

Robert Haynes

技术营销经理

关于 F5 NGINX

F5, Inc. 是备受欢迎的开源软件 NGINX 背后的商业公司。我们为现代应用的开发和交付提供一整套技术。我们的联合解决方案弥合了 NetOps 和 DevOps 之间的横沟,提供从代码到用户的多云应用服务。访问 nginx-cn.net 了解更多相关信息。