首页
/ External Secrets项目v0.17.0版本发布:全面转向v1 API的重大更新

External Secrets项目v0.17.0版本发布:全面转向v1 API的重大更新

2025-06-11 19:50:53作者:伍霜盼Ellen

External Secrets是一个Kubernetes原生的开源项目,它通过自定义资源定义(CRD)将外部密钥管理系统(如HashiCorp Vault、AWS Secrets Manager等)中的密钥安全地同步到Kubernetes Secrets中。该项目简化了密钥管理流程,使开发者能够在不直接处理敏感数据的情况下使用这些密钥。

版本核心变更

v0.17.0版本是External Secrets项目的一个重要里程碑,它正式停止了对v1beta1 API的支持,全面转向v1 API。这一变更意味着项目已经达到了更高的稳定性标准,API接口也趋于成熟。

升级注意事项

对于现有用户来说,升级到v0.17.0版本前必须完成以下关键步骤:

  1. 将所有现有的v1beta1资源定义升级为v1版本
  2. 确保所有自定义资源(CR)的apiVersion字段从external-secrets.io/v1beta1更新为external-secrets.io/v1
  3. 确认集群中不再有任何使用v1beta1 API的资源

值得注意的是,v0.16.2版本已经支持v1 API,因此建议用户先在v0.16.2环境下完成API版本的迁移,然后再升级到v0.17.0,这样可以确保平滑过渡。

新功能与改进

1Password SDK集成

v0.17.0版本引入了基于官方SDK的1Password提供程序,这为使用1Password作为密钥管理后端的用户带来了更稳定、功能更完整的集成体验。新实现利用了1Password的Go SDK,相比之前的实现提供了更好的错误处理和更丰富的功能支持。

Vault客户端缓存优化

为了提高性能并减少资源消耗,新版本对Vault提供程序进行了优化,现在会为每个命名空间缓存单独的Vault客户端实例。这一改进特别适合多租户环境,可以避免不同命名空间间的客户端冲突,同时减少不必要的认证开销。

Infisical提供程序增强

Infisical提供程序现在支持路径中的密钥引用,用户可以更灵活地组织和管理他们的密钥。这一改进使得Infisical的data引用能够识别路径中的密钥,与Vault等提供程序的行为更加一致。

问题修复

  1. 修复了GitHub提供程序中的错误显示问题,现在能够正确显示来自GitHub的错误信息,便于故障排查
  2. 解决了GCP PushSecret在位置复制时的问题,确保密钥能够正确推送到指定的地理位置
  3. 改进了代码集成API,提高了稳定性和可用性

文档更新

  1. 添加了关于OpenBao与Vault提供程序兼容性的说明
  2. 更新了ECR令牌生成器的示例文档
  3. 将所有提供程序示例更新为使用v1 API版本

开发者体验改进

项目持续改进开发者体验,包括:

  • 更新了多个开发依赖项
  • 改进了发布流程,避免重复发布已存在的Helm图表
  • 增强了代码集成API

总结

External Secrets v0.17.0是一个以稳定性为核心的版本,通过淘汰v1beta1 API标志着项目成熟度的提升。对于用户来说,这是一个需要谨慎处理的升级,但同时也带来了更稳定的API基础和多项功能改进。建议所有用户在升级前仔细阅读变更说明,并按照推荐步骤完成API版本的迁移工作。

登录后查看全文
热门项目推荐
相关项目推荐