fargate_profiles
Creates, updates, deletes, gets or lists a fargate_profiles resource.
Overview
| Name | fargate_profiles |
| Type | Resource |
| Id | aws.eks.fargate_profiles |
Fields
The following fields are returned by SELECT queries:
- describe_fargate_profile
- list_fargate_profiles
| Name | Datatype | Description |
|---|---|---|
cluster_name | string | The name of your cluster. |
created_at | string (date-time) | The Unix epoch timestamp at object creation. |
fargate_profile_arn | string | The full Amazon Resource Name (ARN) of the Fargate profile. |
fargate_profile_name | string | The name of the Fargate profile. |
health | object | The health status of the Fargate profile. If there are issues with your Fargate profile's health, they are listed here. |
pod_execution_role_arn | string | The Amazon Resource Name (ARN) of the Pod execution role to use for any Pod that matches the selectors in the Fargate profile. For more information, see Pod execution role in the Amazon EKS User Guide. |
selectors | array | The selectors to match for a Pod to use this Fargate profile. |
status | string | The current status of the Fargate profile. (CREATING, ACTIVE, DELETING, CREATE_FAILED, DELETE_FAILED) |
subnets | array | The IDs of subnets to launch a Pod into. |
tags | object | Metadata that assists with categorization and organization. Each tag consists of a key and an optional value. You define both. Tags don't propagate to any other cluster or Amazon Web Services resources. |
| Name | Datatype | Description |
|---|---|---|
fargate_profile_name | string | A list of all of the Fargate profiles associated with the specified cluster. |
Methods
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
describe_fargate_profile | select | name, fargate_profile_name, region | Describes an Fargate profile. | |
list_fargate_profiles | select | name, region | maxResults, nextToken | Lists the Fargate profiles associated with the specified cluster in your Amazon Web Services account in the specified Amazon Web Services Region. |
create_fargate_profile | insert | name, region, fargateProfileName, podExecutionRoleArn | Creates an Fargate profile for your Amazon EKS cluster. 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 Fargate profile in the Amazon EKS User Guide. | |
delete_fargate_profile | delete | name, fargate_profile_name, region | Deletes an Fargate profile. When you delete a Fargate profile, any Pod running on Fargate that was created with the profile is deleted. If the Pod matches another Fargate profile, then it is scheduled on Fargate with that profile. If it no longer matches any Fargate profiles, then it's not scheduled on Fargate and may remain in a pending state. Only one Fargate profile in a cluster can be in the DELETING status at a time. You must wait for a Fargate profile to finish deleting before you can delete any other profiles in that cluster. |
Parameters
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
fargate_profile_name | string | The name of the Fargate profile to delete. |
name | string | The name of your cluster. |
region | string | AWS region (default: us-east-1) |
maxResults | integer | The maximum number of results, returned in paginated output. You receive maxResults in a single page, along with a nextToken response element. You can see the remaining results of the initial request by sending another request with the returned nextToken value. This value can be between 1 and 100. If you don't use this parameter, 100 results and a nextToken value, if applicable, are returned. |
nextToken | string | The nextToken value returned from a previous paginated request, where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value. This value is null when there are no more results to return. This token should be treated as an opaque identifier that is used only to retrieve the next items in a list and not for other programmatic purposes. |
SELECT examples
- describe_fargate_profile
- list_fargate_profiles
Describes an Fargate profile.
SELECT
cluster_name,
created_at,
fargate_profile_arn,
fargate_profile_name,
health,
pod_execution_role_arn,
selectors,
status,
subnets,
tags
FROM aws.eks.fargate_profiles
WHERE name = '{{ name }}' -- required
AND fargate_profile_name = '{{ fargate_profile_name }}' -- required
AND region = '{{ region }}' -- required
;
Lists the Fargate profiles associated with the specified cluster in your Amazon Web Services account in the specified Amazon Web Services Region.
SELECT
fargate_profile_name
FROM aws.eks.fargate_profiles
WHERE name = '{{ name }}' -- required
AND region = '{{ region }}' -- required
AND maxResults = '{{ maxResults }}'
AND nextToken = '{{ nextToken }}'
;
INSERT examples
- create_fargate_profile
- Manifest
Creates an Fargate profile for your Amazon EKS cluster. 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 Fargate profile in the Amazon EKS User Guide.
INSERT INTO aws.eks.fargate_profiles (
fargateProfileName,
podExecutionRoleArn,
subnets,
selectors,
clientRequestToken,
tags,
name,
region
)
SELECT
'{{ fargateProfileName }}' /* required */,
'{{ podExecutionRoleArn }}' /* required */,
'{{ subnets }}',
'{{ selectors }}',
'{{ clientRequestToken }}',
'{{ tags }}',
'{{ name }}',
'{{ region }}'
RETURNING
fargate_profile
;
# Description fields are for documentation purposes
- name: fargate_profiles
props:
- name: name
value: "{{ name }}"
description: Required parameter for the fargate_profiles resource.
- name: region
value: "{{ region }}"
description: Required parameter for the fargate_profiles resource.
- name: fargateProfileName
value: "{{ fargateProfileName }}"
- name: podExecutionRoleArn
value: "{{ podExecutionRoleArn }}"
- name: subnets
value:
- "{{ subnets }}"
- name: selectors
value:
- namespace: "{{ namespace }}"
labels: "{{ labels }}"
- name: clientRequestToken
value: "{{ clientRequestToken }}"
- name: tags
value: "{{ tags }}"
description: |
The metadata that you apply to a resource to help you categorize and organize them. Each tag consists of a key and an optional value. You define them. The following basic restrictions apply to tags: Maximum number of tags per resource – 50 For each resource, each tag key must be unique, and each tag key can have only one value. Maximum key length – 128 Unicode characters in UTF-8 Maximum value length – 256 Unicode characters in UTF-8 If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @. Tag keys and values are case-sensitive. Do not use aws:, AWS:, or any upper or lowercase combination of such as a prefix for either keys or values as it is reserved for Amazon Web Services use. You cannot edit or delete tag keys or values with this prefix. Tags with this prefix do not count against your tags per resource limit.
DELETE examples
- delete_fargate_profile
Deletes an Fargate profile. When you delete a Fargate profile, any Pod running on Fargate that was created with the profile is deleted. If the Pod matches another Fargate profile, then it is scheduled on Fargate with that profile. If it no longer matches any Fargate profiles, then it's not scheduled on Fargate and may remain in a pending state. Only one Fargate profile in a cluster can be in the DELETING status at a time. You must wait for a Fargate profile to finish deleting before you can delete any other profiles in that cluster.
DELETE FROM aws.eks.fargate_profiles
WHERE name = '{{ name }}' --required
AND fargate_profile_name = '{{ fargate_profile_name }}' --required
AND region = '{{ region }}' --required
;