首页
/ Terraform AWS EKS模块中认证模式的变更与升级指南

Terraform AWS EKS模块中认证模式的变更与升级指南

2025-06-12 17:47:19作者:凌朦慧Richard

背景介绍

在使用Terraform AWS EKS模块管理Kubernetes集群时,认证模式(authentication_mode)是一个关键配置项。近期该模块在版本演进中对认证模式的支持进行了调整,这可能会影响现有集群的升级和新集群的创建。

认证模式的变化

在早期版本的Terraform AWS EKS模块中,支持两种认证模式配置:

  • CONFIG_MAP:仅使用ConfigMap进行认证
  • API_AND_CONFIG_MAP:同时使用API和ConfigMap进行认证

但从v20.0.0版本开始,模块内部实际上已经不再支持纯粹的CONFIG_MAP模式。虽然变量定义中仍然保留了该选项,但在实际创建新集群时,如果尝试使用CONFIG_MAP模式会导致失败。

技术实现细节

这种变化的根本原因是AWS EKS服务本身的演进。AWS现在要求新创建的集群必须将BootstrapClusterCreatorAdminPermissions设置为true,这与纯粹的CONFIG_MAP模式不兼容。模块内部已经对此进行了硬编码处理,确保符合AWS的最新要求。

升级建议

对于现有集群:

  1. 如果集群原本使用CONFIG_MAP模式,可以暂时保持该配置不变,模块会维持现有状态
  2. 但建议逐步迁移到API_AND_CONFIG_MAP模式以获得更好的兼容性

对于新建集群:

  1. 必须使用API_AND_CONFIG_MAP模式
  2. 同时建议启用enable_cluster_creator_admin_permissions选项

配置示例

正确的集群认证配置应如下所示:

module "eks" {
  authentication_mode = "API_AND_CONFIG_MAP"
  enable_cluster_creator_admin_permissions = true
  # 其他配置...
}

注意事项

  1. 从旧版本升级时,务必检查认证模式配置
  2. 测试环境先行验证配置变更
  3. 生产环境变更建议在维护窗口进行
  4. 监控认证相关的日志和事件以确保平稳过渡

总结

Terraform AWS EKS模块对认证模式支持的调整反映了AWS EKS服务的最佳实践演进。作为用户,理解这些变化背后的原因并相应调整配置,可以确保集群管理的顺畅和安全。建议所有用户尽快将配置迁移到API_AND_CONFIG_MAP模式,以获得最佳的兼容性和功能支持。

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