AWS::EKS::Addon - AWS CloudFormation


Creates an Amazon EKS add-on.

Amazon EKS add-ons help to automate the provisioning and lifecycle management of common operational software for Amazon EKS clusters. For more information, see Amazon EKS add-ons in the Amazon EKS User Guide.


To declare this entity in your AWS CloudFormation template, use the following syntax:


{ "Type" : "AWS::EKS::Addon", "Properties" : { "AddonName" : String, "AddonVersion" : String, "ClusterName" : String, "ResolveConflicts" : String, "ServiceAccountRoleArn" : String, "Tags" : [ Tag, ... ] } }


Type: AWS::EKS::Addon Properties: AddonName: String AddonVersion: String ClusterName: String ResolveConflicts: String ServiceAccountRoleArn: String Tags: - Tag



The name of the add-on.

Required: Yes

Type: String

Update requires: Replacement


The version of the add-on.

Required: No

Type: String

Update requires: No interruption


The name of the cluster.

Required: Yes

Type: String

Minimum: 1

Maximum: 100

Pattern: ^[0-9A-Za-z][A-Za-z0-9\-_]*

Update requires: Replacement


How to resolve field value conflicts for an Amazon EKS add-on. Conflicts are handled based on the value you choose:

  • None – If the self-managed version of the add-on is installed on your cluster, Amazon EKS doesn't change the value. Creation of the add-on might fail.

  • Overwrite – If the self-managed version of the add-on is installed on your cluster and the Amazon EKS default value is different than the existing value, Amazon EKS changes the value to the Amazon EKS default value.

  • Preserve – Not supported. You can set this value when updating an add-on though. For more information, see UpdateAddon.

If you don't currently have the self-managed version of the add-on installed on your cluster, the Amazon EKS add-on is installed. Amazon EKS sets all values to default values, regardless of the option that you specify.

Required: No

Type: String


Update requires: No interruption


The Amazon Resource Name (ARN) of an existing IAM role to bind to the add-on's service account. The role must be assigned the IAM permissions required by the add-on. If you don't specify an existing IAM role, then the add-on uses the permissions assigned to the node IAM role. For more information, see Amazon EKS node IAM role in the Amazon EKS User Guide.


To specify an existing IAM role, you must have an IAM OpenID Connect (OIDC) provider created for your cluster. For more information, see Enabling IAM roles for service accounts on your cluster in the Amazon EKS User Guide.

Required: No

Type: String

Minimum: 1

Maximum: 255

Update requires: No interruption


The metadata that you apply to the add-on to assist with categorization and organization. Each tag consists of a key and an optional value, both of which you define. Add-on tags do not propagate to any other resources associated with the cluster.

Required: No

Type: List of Tag

Update requires: No interruption

Return values


When you pass the logical ID of this resource to the intrinsic Ref function, Ref returns the resource name. For example:

{ "Ref": "vpc-cni" }

For the add-on vpc-cni, Ref returns the name of the add-on. For example, cluster-name|vpc-cni.

For more information about using the Ref function, see Ref.


The Fn::GetAtt intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the Fn::GetAtt intrinsic function, see Fn::GetAtt.


The ARN of the add-on, such as arn:aws:eks:us-west-2:111122223333:addon/1-19/vpc-cni/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.

See also