Gloo项目v1.19.0-beta3版本发布:强化网关功能与策略控制

Gloo项目v1.19.0-beta3版本发布:强化网关功能与策略控制

Gloo是一个基于Envoy构建的云原生API网关,专注于为Kubernetes和混合云环境提供灵活的路由和流量管理能力。作为CNCF孵化项目,Gloo通过其声明式配置和丰富的扩展能力,帮助开发者在复杂环境中实现高效的API管理和服务治理。

本次发布的v1.19.0-beta3版本带来了多项重要改进,主要集中在网关功能增强、策略控制优化和性能提升等方面。下面我们将详细介绍这些技术更新。

核心依赖升级

在基础组件方面,本次更新对关键依赖库进行了版本提升:

  • golang.org/crypto升级至v0.31.0版本,增强了加密算法支持
  • solo-io/envoy-gloo升级到v1.31.5-patch1,提供了Envoy代理的最新功能
  • golang.org/x/net升级到v0.33.0,改进了网络处理能力

这些底层依赖的更新为Gloo带来了更好的安全性和稳定性基础。

验证Webhook的精细化控制

Helm配置方面新增了强大的验证Webhook匹配条件功能。通过Common Expression Language (CEL),管理员现在可以实现细粒度的请求过滤控制。这项功能通过两个新的Helm值进行配置:

  • gateway.validation.matchConditions:用于Gloo Webhook
  • gateway.validation.kubeCoreMatchConditions:用于Kube Webhook

需要注意的是,匹配标签功能在Kubernetes v1.30+版本中直接支持,而在v1.27到v1.30版本中需要通过AdmissionWebhookMatchConditions特性门控启用。

网关服务配置增强

在网关参数配置方面,本次更新引入了多项改进:

  1. 端口配置增强:新增了Ports字段到GatewayParameters的Kube.Service Spec中,允许管理员更详细地配置网关监听的端口信息。特别有用的是现在可以指定静态NodePort,为特定场景下的服务暴露提供了更多灵活性。

  2. SSL/TLS配置扩展:GatewayTLSConfig现在支持更多SSL选项,包括:

    • 密码套件配置
    • 最小/最大TLS版本控制
    • 客户端证书验证
    • 单向TLS设置

这些选项原先仅在edge API中可用,现在通过原生配置即可实现,简化了安全配置流程。

路由委托机制优化

路由系统是本版本的重点改进领域:

  1. 基于标签的路由委托:引入了一种新的路由委托机制,允许通过特定标签选择HTTPRoutes进行委托,而不再仅限于GVK引用。系统使用delegation.gateway.solo.io/label=<value>这一标准标签来实现这一功能,通过索引优化确保O(1)时间复杂度的路由查找性能。

  2. 策略继承与覆盖:增强了路由策略的继承机制,现在子路由可以覆盖从父路由继承的策略字段,前提是父路由通过delegation.gateway.solo.io/enable-policy-overrides注解明确允许这种覆盖。注解支持通配符"*"或逗号分隔的字段列表(如"faults,timeouts"),为复杂的路由策略组合提供了更精细的控制。

网络服务配置扩展

在服务暴露方面,新增了通过Gateway Params配置网络服务External Traffic Policy的能力。这使得管理员可以根据网络拓扑和性能需求,灵活选择Cluster或Local流量策略,优化服务流量的路由方式。

问题修复与稳定性提升

本次版本还包含多项重要修复:

  • 修复了AI语义缓存距离设置不正确的问题,并将距离阈值移至缓存配置中统一管理
  • 改进了追踪收集器引用缺失上游时的错误处理,用更合理的InvalidDestinationWarning替代错误抛出
  • 修复了路由策略合并时的逻辑缺陷,确保子路由能正确补充父路由未设置的策略字段
  • 优化了内存管理,修复了日志名称相关的内存泄漏问题
  • 增强了测试框架,新增PERSIST_INSTALL环境变量控制测试期间的Gloo安装行为

总结

Gloo v1.19.0-beta3版本通过多项功能增强和问题修复,进一步提升了其在云原生环境中的API网关能力。特别是路由委托机制的优化和策略控制的精细化,为复杂微服务架构下的流量管理提供了更强大的工具。安全配置的简化和扩展也使企业级部署更加便捷可靠。

这些改进体现了Gloo项目持续关注实际应用场景中的需求,通过技术创新解决云原生环境下的API管理挑战。对于正在评估或使用Gloo的团队,这个版本值得关注和测试。

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值