AWS::EKS::Addon
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.
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
JSON
{ "Type" : "AWS::EKS::Addon", "Properties" : { "AddonName" :
String
, "AddonVersion" :String
, "ClusterName" :String
, "ConfigurationValues" :String
, "PodIdentityAssociations" :[ PodIdentityAssociation, ... ]
, "PreserveOnDelete" :Boolean
, "ResolveConflicts" :String
, "ServiceAccountRoleArn" :String
, "Tags" :[ Tag, ... ]
} }
YAML
Type: AWS::EKS::Addon Properties: AddonName:
String
AddonVersion:String
ClusterName:String
ConfigurationValues:String
PodIdentityAssociations:- PodIdentityAssociation
PreserveOnDelete:Boolean
ResolveConflicts:String
ServiceAccountRoleArn:String
Tags:- Tag
Properties
AddonName
-
The name of the add-on.
Required: Yes
Type: String
Minimum:
1
Update requires: Replacement
AddonVersion
-
The version of the add-on.
Required: No
Type: String
Minimum:
1
Update requires: No interruption
ClusterName
-
The name of your cluster.
Required: Yes
Type: String
Minimum:
1
Update requires: Replacement
ConfigurationValues
-
The configuration values that you provided.
Required: No
Type: String
Minimum:
1
Update requires: No interruption
PodIdentityAssociations
-
An array of Pod Identity Assocations owned by the Addon. Each EKS Pod Identity association maps a role to a service account in a namespace in the cluster.
For more information, see Attach an IAM Role to an Amazon EKS add-on using Pod Identity in the EKS User Guide.
Required: No
Type: Array of PodIdentityAssociation
Update requires: No interruption
PreserveOnDelete
-
Specifying this option preserves the add-on software on your cluster but Amazon EKS stops managing any settings for the add-on. If an IAM account is associated with the add-on, it isn't removed.
Required: No
Type: Boolean
Update requires: No interruption
ResolveConflicts
-
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 – This is similar to the NONE option. If the self-managed version of the add-on is installed on your cluster Amazon EKS doesn't change the add-on resource properties. Creation of the add-on might fail if conflicts are detected. This option works differently during the update operation. 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
Allowed values:
NONE | OVERWRITE | PRESERVE
Minimum:
1
Update requires: No interruption
-
ServiceAccountRoleArn
-
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.
Note
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
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: Array of Tag
Update requires: No interruption
Return values
Ref
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
.
Fn::GetAtt
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
.
Arn
-
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
-
Amazon EKS add-ons in the Amazon EKS User Guide.
-
CreateAddon
in the Amazon EKS API Reference.