Amazon Elastic Kubernetes Service

2023/11/09 - Amazon Elastic Kubernetes Service - 5 new api methods

Changes  Adding EKS Anywhere subscription related operations.

CreateEksAnywhereSubscription (new) Link ¶

Creates an EKS Anywhere subscription. When a subscription is created, it is a contract agreement for the length of the term specified in the request. Licenses that are used to validate support are provisioned in Amazon Web Services License Manager and the caller account is granted access to EKS Anywhere Curated Packages.

See also: AWS API Documentation

Request Syntax

client.create_eks_anywhere_subscription(
    name='string',
    term={
        'duration': 123,
        'unit': 'MONTHS'
    },
    licenseQuantity=123,
    licenseType='Cluster',
    autoRenew=True|False,
    clientRequestToken='string',
    tags={
        'string': 'string'
    }
)
type name

string

param name

[REQUIRED]

The unique name for your subscription. It must be unique in your Amazon Web Services account in the Amazon Web Services Region you're creating the subscription in. The name can contain only alphanumeric characters (case-sensitive), hyphens, and underscores. It must start with an alphabetic character and can't be longer than 100 characters.

type term

dict

param term

[REQUIRED]

An object representing the term duration and term unit type of your subscription. This determines the term length of your subscription. Valid values are MONTHS for term unit and 12 or 36 for term duration, indicating a 12 month or 36 month subscription. This value cannot be changed after creating the subscription.

  • duration (integer) --

    The duration of the subscription term. Valid values are 12 and 36, indicating a 12 month or 36 month subscription.

  • unit (string) --

    The term unit of the subscription. Valid value is MONTHS.

type licenseQuantity

integer

param licenseQuantity

The number of licenses to purchase with the subscription. Valid values are between 1 and 1000. This value cannot be changed after creating the subscription.

type licenseType

string

param licenseType

The license type for all licenses in the subscription. Valid value is CLUSTER. With the CLUSTER license type, each license covers support for a single EKS Anywhere cluster.

type autoRenew

boolean

param autoRenew

A boolean indicating whether the subscription auto renews at the end of the term.

type clientRequestToken

string

param clientRequestToken

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

This field is autopopulated if not provided.

type tags

dict

param tags

The metadata for a subscription to assist with categorization and organization. Each tag consists of a key and an optional value. Subscription tags do not propagate to any other resources associated with the subscription.

  • (string) --

    • (string) --

rtype

dict

returns

Response Syntax

{
    'subscription': {
        'id': 'string',
        'arn': 'string',
        'createdAt': datetime(2015, 1, 1),
        'effectiveDate': datetime(2015, 1, 1),
        'expirationDate': datetime(2015, 1, 1),
        'licenseQuantity': 123,
        'licenseType': 'Cluster',
        'term': {
            'duration': 123,
            'unit': 'MONTHS'
        },
        'status': 'string',
        'autoRenew': True|False,
        'licenseArns': [
            'string',
        ],
        'tags': {
            'string': 'string'
        }
    }
}

Response Structure

  • (dict) --

    • subscription (dict) --

      The full description of the subscription.

      • id (string) --

        UUID identifying a subscription.

      • arn (string) --

        The Amazon Resource Name (ARN) for the subscription.

      • createdAt (datetime) --

        The Unix timestamp in seconds for when the subscription was created.

      • effectiveDate (datetime) --

        The Unix timestamp in seconds for when the subscription is effective.

      • expirationDate (datetime) --

        The Unix timestamp in seconds for when the subscription will expire or auto renew, depending on the auto renew configuration of the subscription object.

      • licenseQuantity (integer) --

        The number of licenses included in a subscription. Valid values are between 1 and 1000.

      • licenseType (string) --

        The type of licenses included in the subscription. Valid value is CLUSTER. With the CLUSTER license type, each license covers support for a single EKS Anywhere cluster.

      • term (dict) --

        An EksAnywhereSubscriptionTerm object.

        • duration (integer) --

          The duration of the subscription term. Valid values are 12 and 36, indicating a 12 month or 36 month subscription.

        • unit (string) --

          The term unit of the subscription. Valid value is MONTHS.

      • status (string) --

        The status of a subscription.

      • autoRenew (boolean) --

        A boolean indicating whether or not a subscription will auto renew when it expires.

      • licenseArns (list) --

        License Manager License ARNs associated with the subscription.

        • (string) --

      • tags (dict) --

        The metadata for a subscription to assist with categorization and organization. Each tag consists of a key and an optional value. Subscription tags do not propagate to any other resources associated with the subscription.

        • (string) --

          • (string) --

DescribeEksAnywhereSubscription (new) Link ¶

Returns descriptive information about a subscription.

See also: AWS API Documentation

Request Syntax

client.describe_eks_anywhere_subscription(
    id='string'
)
type id

string

param id

[REQUIRED]

The ID of the subscription.

rtype

dict

returns

Response Syntax

{
    'subscription': {
        'id': 'string',
        'arn': 'string',
        'createdAt': datetime(2015, 1, 1),
        'effectiveDate': datetime(2015, 1, 1),
        'expirationDate': datetime(2015, 1, 1),
        'licenseQuantity': 123,
        'licenseType': 'Cluster',
        'term': {
            'duration': 123,
            'unit': 'MONTHS'
        },
        'status': 'string',
        'autoRenew': True|False,
        'licenseArns': [
            'string',
        ],
        'tags': {
            'string': 'string'
        }
    }
}

Response Structure

  • (dict) --

    • subscription (dict) --

      The full description of the subscription.

      • id (string) --

        UUID identifying a subscription.

      • arn (string) --

        The Amazon Resource Name (ARN) for the subscription.

      • createdAt (datetime) --

        The Unix timestamp in seconds for when the subscription was created.

      • effectiveDate (datetime) --

        The Unix timestamp in seconds for when the subscription is effective.

      • expirationDate (datetime) --

        The Unix timestamp in seconds for when the subscription will expire or auto renew, depending on the auto renew configuration of the subscription object.

      • licenseQuantity (integer) --

        The number of licenses included in a subscription. Valid values are between 1 and 1000.

      • licenseType (string) --

        The type of licenses included in the subscription. Valid value is CLUSTER. With the CLUSTER license type, each license covers support for a single EKS Anywhere cluster.

      • term (dict) --

        An EksAnywhereSubscriptionTerm object.

        • duration (integer) --

          The duration of the subscription term. Valid values are 12 and 36, indicating a 12 month or 36 month subscription.

        • unit (string) --

          The term unit of the subscription. Valid value is MONTHS.

      • status (string) --

        The status of a subscription.

      • autoRenew (boolean) --

        A boolean indicating whether or not a subscription will auto renew when it expires.

      • licenseArns (list) --

        License Manager License ARNs associated with the subscription.

        • (string) --

      • tags (dict) --

        The metadata for a subscription to assist with categorization and organization. Each tag consists of a key and an optional value. Subscription tags do not propagate to any other resources associated with the subscription.

        • (string) --

          • (string) --

UpdateEksAnywhereSubscription (new) Link ¶

Update an EKS Anywhere Subscription. Only auto renewal and tags can be updated after subscription creation.

See also: AWS API Documentation

Request Syntax

client.update_eks_anywhere_subscription(
    id='string',
    autoRenew=True|False,
    clientRequestToken='string'
)
type id

string

param id

[REQUIRED]

type autoRenew

boolean

param autoRenew

[REQUIRED]

A boolean indicating whether or not to automatically renew the subscription.

type clientRequestToken

string

param clientRequestToken

Unique, case-sensitive identifier to ensure the idempotency of the request.

This field is autopopulated if not provided.

rtype

dict

returns

Response Syntax

{
    'subscription': {
        'id': 'string',
        'arn': 'string',
        'createdAt': datetime(2015, 1, 1),
        'effectiveDate': datetime(2015, 1, 1),
        'expirationDate': datetime(2015, 1, 1),
        'licenseQuantity': 123,
        'licenseType': 'Cluster',
        'term': {
            'duration': 123,
            'unit': 'MONTHS'
        },
        'status': 'string',
        'autoRenew': True|False,
        'licenseArns': [
            'string',
        ],
        'tags': {
            'string': 'string'
        }
    }
}

Response Structure

  • (dict) --

    • subscription (dict) --

      The full description of the updated subscription.

      • id (string) --

        UUID identifying a subscription.

      • arn (string) --

        The Amazon Resource Name (ARN) for the subscription.

      • createdAt (datetime) --

        The Unix timestamp in seconds for when the subscription was created.

      • effectiveDate (datetime) --

        The Unix timestamp in seconds for when the subscription is effective.

      • expirationDate (datetime) --

        The Unix timestamp in seconds for when the subscription will expire or auto renew, depending on the auto renew configuration of the subscription object.

      • licenseQuantity (integer) --

        The number of licenses included in a subscription. Valid values are between 1 and 1000.

      • licenseType (string) --

        The type of licenses included in the subscription. Valid value is CLUSTER. With the CLUSTER license type, each license covers support for a single EKS Anywhere cluster.

      • term (dict) --

        An EksAnywhereSubscriptionTerm object.

        • duration (integer) --

          The duration of the subscription term. Valid values are 12 and 36, indicating a 12 month or 36 month subscription.

        • unit (string) --

          The term unit of the subscription. Valid value is MONTHS.

      • status (string) --

        The status of a subscription.

      • autoRenew (boolean) --

        A boolean indicating whether or not a subscription will auto renew when it expires.

      • licenseArns (list) --

        License Manager License ARNs associated with the subscription.

        • (string) --

      • tags (dict) --

        The metadata for a subscription to assist with categorization and organization. Each tag consists of a key and an optional value. Subscription tags do not propagate to any other resources associated with the subscription.

        • (string) --

          • (string) --

ListEksAnywhereSubscriptions (new) Link ¶

Displays the full description of the subscription.

See also: AWS API Documentation

Request Syntax

client.list_eks_anywhere_subscriptions(
    maxResults=123,
    nextToken='string',
    includeStatus=[
        'CREATING'|'ACTIVE'|'UPDATING'|'EXPIRING'|'EXPIRED'|'DELETING',
    ]
)
type maxResults

integer

param maxResults

The maximum number of cluster results returned by ListEksAnywhereSubscriptions in paginated output. When you use this parameter, ListEksAnywhereSubscriptions returns only maxResults results in a single page along with a nextToken response element. You can see the remaining results of the initial request by sending another ListEksAnywhereSubscriptions request with the returned nextToken value. This value can be between 1 and 100. If you don't use this parameter, ListEksAnywhereSubscriptions returns up to 10 results and a nextToken value if applicable.

type nextToken

string

param nextToken

The nextToken value to include in a future ListEksAnywhereSubscriptions request. When the results of a ListEksAnywhereSubscriptions request exceed maxResults, you can use this value to retrieve the next page of results. This value is null when there are no more results to return.

type includeStatus

list

param includeStatus

An array of subscription statuses to filter on.

  • (string) --

rtype

dict

returns

Response Syntax

{
    'subscriptions': [
        {
            'id': 'string',
            'arn': 'string',
            'createdAt': datetime(2015, 1, 1),
            'effectiveDate': datetime(2015, 1, 1),
            'expirationDate': datetime(2015, 1, 1),
            'licenseQuantity': 123,
            'licenseType': 'Cluster',
            'term': {
                'duration': 123,
                'unit': 'MONTHS'
            },
            'status': 'string',
            'autoRenew': True|False,
            'licenseArns': [
                'string',
            ],
            'tags': {
                'string': 'string'
            }
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • subscriptions (list) --

      A list of all subscription objects in the region, filtered by includeStatus and paginated by nextToken and maxResults.

      • (dict) --

        An EKS Anywhere subscription authorizing the customer to support for licensed clusters and access to EKS Anywhere Curated Packages.

        • id (string) --

          UUID identifying a subscription.

        • arn (string) --

          The Amazon Resource Name (ARN) for the subscription.

        • createdAt (datetime) --

          The Unix timestamp in seconds for when the subscription was created.

        • effectiveDate (datetime) --

          The Unix timestamp in seconds for when the subscription is effective.

        • expirationDate (datetime) --

          The Unix timestamp in seconds for when the subscription will expire or auto renew, depending on the auto renew configuration of the subscription object.

        • licenseQuantity (integer) --

          The number of licenses included in a subscription. Valid values are between 1 and 1000.

        • licenseType (string) --

          The type of licenses included in the subscription. Valid value is CLUSTER. With the CLUSTER license type, each license covers support for a single EKS Anywhere cluster.

        • term (dict) --

          An EksAnywhereSubscriptionTerm object.

          • duration (integer) --

            The duration of the subscription term. Valid values are 12 and 36, indicating a 12 month or 36 month subscription.

          • unit (string) --

            The term unit of the subscription. Valid value is MONTHS.

        • status (string) --

          The status of a subscription.

        • autoRenew (boolean) --

          A boolean indicating whether or not a subscription will auto renew when it expires.

        • licenseArns (list) --

          License Manager License ARNs associated with the subscription.

          • (string) --

        • tags (dict) --

          The metadata for a subscription to assist with categorization and organization. Each tag consists of a key and an optional value. Subscription tags do not propagate to any other resources associated with the subscription.

          • (string) --

            • (string) --

    • nextToken (string) --

      The nextToken value to include in a future ListEksAnywhereSubscriptions request. When the results of a ListEksAnywhereSubscriptions request exceed maxResults, you can use this value to retrieve the next page of results. This value is null when there are no more results to return.

DeleteEksAnywhereSubscription (new) Link ¶

Deletes an expired / inactive subscription. Deleting inactive subscriptions removes them from the Amazon Web Services Management Console view and from list/describe API responses. Subscriptions can only be cancelled within 7 days of creation, and are cancelled by creating a ticket in the Amazon Web Services Support Center.

See also: AWS API Documentation

Request Syntax

client.delete_eks_anywhere_subscription(
    id='string'
)
type id

string

param id

[REQUIRED]

The ID of the subscription.

rtype

dict

returns

Response Syntax

{
    'subscription': {
        'id': 'string',
        'arn': 'string',
        'createdAt': datetime(2015, 1, 1),
        'effectiveDate': datetime(2015, 1, 1),
        'expirationDate': datetime(2015, 1, 1),
        'licenseQuantity': 123,
        'licenseType': 'Cluster',
        'term': {
            'duration': 123,
            'unit': 'MONTHS'
        },
        'status': 'string',
        'autoRenew': True|False,
        'licenseArns': [
            'string',
        ],
        'tags': {
            'string': 'string'
        }
    }
}

Response Structure

  • (dict) --

    • subscription (dict) --

      The full description of the subscription to be deleted.

      • id (string) --

        UUID identifying a subscription.

      • arn (string) --

        The Amazon Resource Name (ARN) for the subscription.

      • createdAt (datetime) --

        The Unix timestamp in seconds for when the subscription was created.

      • effectiveDate (datetime) --

        The Unix timestamp in seconds for when the subscription is effective.

      • expirationDate (datetime) --

        The Unix timestamp in seconds for when the subscription will expire or auto renew, depending on the auto renew configuration of the subscription object.

      • licenseQuantity (integer) --

        The number of licenses included in a subscription. Valid values are between 1 and 1000.

      • licenseType (string) --

        The type of licenses included in the subscription. Valid value is CLUSTER. With the CLUSTER license type, each license covers support for a single EKS Anywhere cluster.

      • term (dict) --

        An EksAnywhereSubscriptionTerm object.

        • duration (integer) --

          The duration of the subscription term. Valid values are 12 and 36, indicating a 12 month or 36 month subscription.

        • unit (string) --

          The term unit of the subscription. Valid value is MONTHS.

      • status (string) --

        The status of a subscription.

      • autoRenew (boolean) --

        A boolean indicating whether or not a subscription will auto renew when it expires.

      • licenseArns (list) --

        License Manager License ARNs associated with the subscription.

        • (string) --

      • tags (dict) --

        The metadata for a subscription to assist with categorization and organization. Each tag consists of a key and an optional value. Subscription tags do not propagate to any other resources associated with the subscription.

        • (string) --

          • (string) --