Class CfnFargateProfile
- All Implemented Interfaces:
IInspectable
,ITaggable
,software.amazon.jsii.JsiiSerializable
,software.constructs.IConstruct
,software.constructs.IDependable
You must have at least one Fargate profile in a cluster to be able to run pods on Fargate.
The Fargate profile allows an administrator to declare which pods run on Fargate and specify which pods run on which Fargate profile. This declaration is done through the profile’s selectors. Each profile can have up to five selectors that contain a namespace and labels. A namespace is required for every selector. The label field consists of multiple optional key-value pairs. Pods that match the selectors are scheduled on Fargate. If a to-be-scheduled pod matches any of the selectors in the Fargate profile, then that pod is run on Fargate.
When you create a Fargate profile, you must specify a pod execution role to use with the pods that are scheduled with the profile. This role is added to the cluster's Kubernetes Role Based Access Control (RBAC) for authorization so that the kubelet
that is running on the Fargate infrastructure can register with your Amazon EKS cluster so that it can appear in your cluster as a node. The pod execution role also provides IAM permissions to the Fargate infrastructure to allow read access to Amazon ECR image repositories. For more information, see Pod Execution Role in the Amazon EKS User Guide .
Fargate profiles are immutable. However, you can create a new updated profile to replace an existing profile and then delete the original after the updated profile has finished creating.
If any Fargate profiles in a cluster are in the DELETING
status, you must wait for that Fargate profile to finish deleting before you can create any other profiles in that cluster.
For more information, see AWS Fargate profile in the Amazon EKS User Guide .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import software.amazon.awscdk.services.eks.*; CfnFargateProfile cfnFargateProfile = CfnFargateProfile.Builder.create(this, "MyCfnFargateProfile") .clusterName("clusterName") .podExecutionRoleArn("podExecutionRoleArn") .selectors(List.of(SelectorProperty.builder() .namespace("namespace") // the properties below are optional .labels(List.of(LabelProperty.builder() .key("key") .value("value") .build())) .build())) // the properties below are optional .fargateProfileName("fargateProfileName") .subnets(List.of("subnets")) .tags(List.of(CfnTag.builder() .key("key") .value("value") .build())) .build();
- See Also:
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic final class
A fluent builder forCfnFargateProfile
.static interface
A key-value pair.static interface
An object representing an AWS Fargate profile selector.Nested classes/interfaces inherited from class software.amazon.jsii.JsiiObject
software.amazon.jsii.JsiiObject.InitializationMode
Nested classes/interfaces inherited from interface software.constructs.IConstruct
software.constructs.IConstruct.Jsii$Default
Nested classes/interfaces inherited from interface software.amazon.awscdk.IInspectable
IInspectable.Jsii$Default, IInspectable.Jsii$Proxy
Nested classes/interfaces inherited from interface software.amazon.awscdk.ITaggable
ITaggable.Jsii$Default, ITaggable.Jsii$Proxy
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
The CloudFormation resource type name for this resource class. -
Constructor Summary
ModifierConstructorDescriptionprotected
CfnFargateProfile
(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) protected
CfnFargateProfile
(software.amazon.jsii.JsiiObjectRef objRef) CfnFargateProfile
(software.constructs.Construct scope, String id, CfnFargateProfileProps props) -
Method Summary
Modifier and TypeMethodDescriptionThe ARN of the cluster, such asarn:aws:eks:us-west-2:666666666666:fargateprofile/myCluster/myFargateProfile/1cb1a11a-1dc1-1d11-cf11-1111f11fa111
.The name of your cluster.The name of the Fargate profile.The Amazon Resource Name (ARN) of thePod
execution role to use for aPod
that matches the selectors in the Fargate profile.The selectors to match for aPod
to use this Fargate profile.The IDs of subnets to launch aPod
into.getTags()
Tag Manager which manages the tags for this resource.Metadata that assists with categorization and organization.void
inspect
(TreeInspector inspector) Examines the CloudFormation resource and discloses attributes.renderProperties
(Map<String, Object> props) void
setClusterName
(String value) The name of your cluster.void
setFargateProfileName
(String value) The name of the Fargate profile.void
setPodExecutionRoleArn
(String value) The Amazon Resource Name (ARN) of thePod
execution role to use for aPod
that matches the selectors in the Fargate profile.void
setSelectors
(List<Object> value) The selectors to match for aPod
to use this Fargate profile.void
setSelectors
(IResolvable value) The selectors to match for aPod
to use this Fargate profile.void
setSubnets
(List<String> value) The IDs of subnets to launch aPod
into.void
setTagsRaw
(List<CfnTag> value) Metadata that assists with categorization and organization.Methods inherited from class software.amazon.awscdk.CfnResource
addDeletionOverride, addDependency, addDependsOn, addMetadata, addOverride, addPropertyDeletionOverride, addPropertyOverride, applyRemovalPolicy, applyRemovalPolicy, applyRemovalPolicy, getAtt, getAtt, getCfnOptions, getCfnResourceType, getMetadata, getUpdatedProperites, getUpdatedProperties, isCfnResource, obtainDependencies, obtainResourceDependencies, removeDependency, replaceDependency, shouldSynthesize, toString, validateProperties
Methods inherited from class software.amazon.awscdk.CfnRefElement
getRef
Methods inherited from class software.amazon.awscdk.CfnElement
getCreationStack, getLogicalId, getStack, isCfnElement, overrideLogicalId
Methods inherited from class software.constructs.Construct
getNode, isConstruct
Methods inherited from class software.amazon.jsii.JsiiObject
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSet
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Field Details
-
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
-
-
Constructor Details
-
CfnFargateProfile
protected CfnFargateProfile(software.amazon.jsii.JsiiObjectRef objRef) -
CfnFargateProfile
protected CfnFargateProfile(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) -
CfnFargateProfile
@Stability(Stable) public CfnFargateProfile(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull CfnFargateProfileProps props) - Parameters:
scope
- Scope in which this resource is defined. This parameter is required.id
- Construct identifier for this resource (unique in its scope). This parameter is required.props
- Resource properties. This parameter is required.
-
-
Method Details
-
inspect
Examines the CloudFormation resource and discloses attributes.- Specified by:
inspect
in interfaceIInspectable
- Parameters:
inspector
- tree inspector to collect and process attributes. This parameter is required.
-
renderProperties
@Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String, Object> props) - Overrides:
renderProperties
in classCfnResource
- Parameters:
props
- This parameter is required.
-
getAttrArn
The ARN of the cluster, such asarn:aws:eks:us-west-2:666666666666:fargateprofile/myCluster/myFargateProfile/1cb1a11a-1dc1-1d11-cf11-1111f11fa111
. -
getCfnProperties
- Overrides:
getCfnProperties
in classCfnResource
-
getTags
Tag Manager which manages the tags for this resource. -
getClusterName
The name of your cluster. -
setClusterName
The name of your cluster. -
getPodExecutionRoleArn
The Amazon Resource Name (ARN) of thePod
execution role to use for aPod
that matches the selectors in the Fargate profile. -
setPodExecutionRoleArn
The Amazon Resource Name (ARN) of thePod
execution role to use for aPod
that matches the selectors in the Fargate profile. -
getSelectors
The selectors to match for aPod
to use this Fargate profile. -
setSelectors
The selectors to match for aPod
to use this Fargate profile. -
setSelectors
The selectors to match for aPod
to use this Fargate profile. -
getFargateProfileName
The name of the Fargate profile. -
setFargateProfileName
The name of the Fargate profile. -
getSubnets
The IDs of subnets to launch aPod
into. -
setSubnets
The IDs of subnets to launch aPod
into. -
getTagsRaw
Metadata that assists with categorization and organization. -
setTagsRaw
Metadata that assists with categorization and organization.
-