You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Terraform AWS EKS托管节点组中添加自定义user_data?

问题:如何为EKS托管节点组的启动模板添加自定义user_data?

我希望通过user_data功能在EKS节点启动时添加自定义配置,当前使用Terraform的terraform-aws-modules/eks/aws模块创建集群和托管节点组,配置如下:

module "eks" {
    source  = "terraform-aws-modules/eks/aws"

    cluster_name    = local.cluster_name
    cluster_version = "1.31"

    enable_cluster_creator_admin_permissions = true
    cluster_endpoint_public_access           = true
    cluster_endpoint_public_access_cidrs     = var.cluster_public_access_cidrs

    cluster_addons = {
        aws-ebs-csi-driver = {
            most_recent = true
            service_account_role_arn = module.ebs_csi_irsa_role.iam_role_arn
        }
    }

    vpc_id     = module.vpc.vpc_id
    subnet_ids = module.vpc.private_subnets

    eks_managed_node_group_defaults = {
        ami_type = "AL2_x86_64"
        iam_role_additional_policies = {
            AmazonEBSCSIDriverPolicy = "arn:aws:iam::aws:policy/service-role/AmazonEBSCSIDriverPolicy"
        }
    }

    eks_managed_node_groups = {
        one = {
            name = "node-group-1"

            instance_types = ["t3.small"]

            min_size     = 1
            max_size     = 3
            desired_size = 1
        }
    }
}

请问有没有简便方法为该节点组的启动模板添加自定义user_data?


解决方案:使用pre_bootstrap_user_data注入自定义配置

可以通过在eks_managed_node_group_defaults块中添加pre_bootstrap_user_data字段实现需求,该字段的内容会在EKS节点的bootstrap.sh脚本执行前注入,适合执行节点初始化阶段的自定义操作。

修改后的配置示例:

...
    eks_managed_node_group_defaults = {
        ami_type = "AL2_ARM_64"
        iam_role_additional_policies = {
            AmazonEBSCSIDriverPolicy = "arn:aws:iam::aws:policy/service-role/AmazonEBSCSIDriverPolicy"
        }
        pre_bootstrap_user_data = <<-EOF
        yum install -y jq
        echo XYZ > /tmp/xyz.txt
        EOF
    }
...

上述配置会在节点启动时自动安装jq工具,并创建/tmp/xyz.txt文件,已验证自定义配置可正常生效。

内容的提问来源于stack exchange,提问作者Eldad Assis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 15:55:00