Exemplos do Amazon EKS usando a AWS CLI - AWS Command Line Interface

Esta documentação é somente para a versão 1 da AWS CLI. Para obter a documentação relacionada à AWS CLI versão 2, consulte o Guia do usuário da versão 2.

Exemplos do Amazon EKS usando a AWS CLI

Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando a AWS Command Line Interface com o Amazon EKS.

Ações são trechos de código de programas maiores e devem ser executadas em contexto. Embora as ações mostrem como chamar perfis de serviço individuais, você pode ver as ações no contexto em seus cenários relacionados.

Cada exemplo inclui um link para o código-fonte completo, em que você pode encontrar instruções sobre como configurar e executar o código.

Tópicos

Ações

O código de exemplo a seguir mostra como usar associate-encryption-config.

AWS CLI

Como associar uma configuração de criptografia a um cluster existente

O exemplo associate-encryption-config a seguir habilita a criptografia em clusters do EKS existentes que ainda não têm a criptografia ativada.

aws eks associate-encryption-config \ --cluster-name my-eks-cluster \ --encryption-config '[{"resources":["secrets"],"provider":{"keyArn":"arn:aws:kms:region-code:account:key/key"}}]'

Saída:

{ "update": { "id": "3141b835-8103-423a-8e68-12c2521ffa4d", "status": "InProgress", "type": "AssociateEncryptionConfig", "params": [ { "type": "EncryptionConfig", "value": "[{\"resources\":[\"secrets\"],\"provider\":{\"keyArn\":\"arn:aws:kms:region-code:account:key/key\"}}]" } ], "createdAt": "2024-03-14T11:01:26.297000-04:00", "errors": [] } }

Para obter mais informações, consulte Habilitar a criptografia secreta em um cluster existente no Guia do usuário do Amazon EKS.

O código de exemplo a seguir mostra como usar associate-identity-provider-config.

AWS CLI

Associar um provedor de identidade ao seu cluster do Amazon EKS

O exemplo associate-identity-provider-config a seguir associa um provedor de identidade ao seu cluster do Amazon EKS.

aws eks associate-identity-provider-config \ --cluster-name my-eks-cluster \ --oidc 'identityProviderConfigName=my-identity-provider,issuerUrl=https://oidc.eks.us-east-2.amazonaws.com/id/38D6A4619A0A69E342B113ED7F1A7652,clientId=kubernetes,usernameClaim=email,usernamePrefix=my-username-prefix,groupsClaim=my-claim,groupsPrefix=my-groups-prefix,requiredClaims={Claim1=value1,Claim2=value2}' \ --tags env=dev

Saída:

{ "update": { "id": "8c6c1bef-61fe-42ac-a242-89412387b8e7", "status": "InProgress", "type": "AssociateIdentityProviderConfig", "params": [ { "type": "IdentityProviderConfig", "value": "[{\"type\":\"oidc\",\"name\":\"my-identity-provider\"}]" } ], "createdAt": "2024-04-11T13:46:49.648000-04:00", "errors": [] }, "tags": { "env": "dev" } }

Para obter mais informações, consulte Autenticar usuários para o cluster em um provedor de identidade OpenID Connect – Associar um provedor de identidade OIDC no Guia do usuário do Amazon EKS.

O código de exemplo a seguir mostra como usar create-addon.

AWS CLI

Exemplo 1: criar um complemento do Amazon EKS com uma versão compatível padrão para a respectiva versão do cluster do EKS

O comando de exemplo create-addon a seguir cria um complemento do Amazon EKS com uma versão compatível padrão para a respectiva versão do cluster do EKS.

aws eks create-addon \ --cluster-name my-eks-cluster \ --addon-name my-eks-addon \ --service-account-role-arn arn:aws:iam::111122223333:role/role-name

Saída:

{ "addon": { "addonName": "my-eks-addon", "clusterName": "my-eks-cluster", "status": "CREATING", "addonVersion": "v1.15.1-eksbuild.1", "health": { "issues": [] }, "addonArn": "arn:aws:eks:us-east-2:111122223333:addon/my-eks-cluster/my-eks-addon/1ec71ee1-b9c2-8915-4e17-e8be0a55a149", "createdAt": "2024-03-14T12:20:03.264000-04:00", "modifiedAt": "2024-03-14T12:20:03.283000-04:00", "serviceAccountRoleArn": "arn:aws:iam::111122223333:role/role-name", "tags": {} } }

Para obter mais informações, consulte Gerenciamento de complementos do Amazon EKS – Criar um complemento, no Guia do usuário do Amazon EKS.

Exemplo 2: criar um complemento do Amazon EKS com uma versão específica de complemento

O comando de exemplo create-addon a seguir cria um complemento do Amazon EKS com uma versão específica de complemento.

aws eks create-addon \ --cluster-name my-eks-cluster \ --addon-name my-eks-addon \ --service-account-role-arn arn:aws:iam::111122223333:role/role-name \ --addon-version v1.16.4-eksbuild.2

Saída:

{ "addon": { "addonName": "my-eks-addon", "clusterName": "my-eks-cluster", "status": "CREATING", "addonVersion": "v1.16.4-eksbuild.2", "health": { "issues": [] }, "addonArn": "arn:aws:eks:us-east-2:111122223333:addon/my-eks-cluster/my-eks-addon/34c71ee6-7738-6c8b-c6bd-3921a176b5ff", "createdAt": "2024-03-14T12:30:24.507000-04:00", "modifiedAt": "2024-03-14T12:30:24.521000-04:00", "serviceAccountRoleArn": "arn:aws:iam::111122223333:role/role-name", "tags": {} } }

Para obter mais informações, consulte Gerenciamento de complementos do Amazon EKS – Criar um complemento, no Guia do usuário do Amazon EKS.

Exemplo 3: criar um complemento do Amazon EKS com valores de configuração personalizados e resolver detalhes de conflitos

O comando de exemplo create-addon a seguir cria um complemento do Amazon EKS com valores de configuração personalizados e resolve detalhes de conflitos.

aws eks create-addon \ --cluster-name my-eks-cluster \ --addon-name my-eks-addon \ --service-account-role-arn arn:aws:iam::111122223333:role/role-name \ --addon-version v1.16.4-eksbuild.2 \ --configuration-values '{"resources":{"limits":{"cpu":"100m"}}}' \ --resolve-conflicts OVERWRITE

Saída:

{ "addon": { "addonName": "my-eks-addon", "clusterName": "my-eks-cluster", "status": "CREATING", "addonVersion": "v1.16.4-eksbuild.2", "health": { "issues": [] }, "addonArn": "arn:aws:eks:us-east-2:111122223333:addon/my-eks-cluster/my-eks-addon/a6c71ee9-0304-9237-1be8-25af1b0f1ffb", "createdAt": "2024-03-14T12:35:58.313000-04:00", "modifiedAt": "2024-03-14T12:35:58.327000-04:00", "serviceAccountRoleArn": "arn:aws:iam::111122223333:role/role-name", "tags": {}, "configurationValues": "{\"resources\":{\"limits\":{\"cpu\":\"100m\"}}}" } }

Para obter mais informações, consulte Gerenciamento de complementos do Amazon EKS – Criar um complemento, no Guia do usuário do Amazon EKS.

Exemplo 4: criar um complemento do Amazon EKS com arquivo de valores de configuração JSON personalizados

O comando de exemplo create-addon a seguir cria um complemento do Amazon EKS com valores de configuração personalizados e resolve detalhes de conflitos.

aws eks create-addon \ --cluster-name my-eks-cluster \ --addon-name my-eks-addon \ --service-account-role-arn arn:aws:iam::111122223333:role/role-name \ --addon-version v1.16.4-eksbuild.2 \ --configuration-values 'file://configuration-values.json' \ --resolve-conflicts OVERWRITE \ --tags '{"eks-addon-key-1": "value-1" , "eks-addon-key-2": "value-2"}'

Conteúdo de configuration-values.json:

{ "resources": { "limits": { "cpu": "150m" } }, "env": { "AWS_VPC_K8S_CNI_LOGLEVEL": "ERROR" } }

Saída:

{ "addon": { "addonName": "my-eks-addon", "clusterName": "my-eks-cluster", "status": "CREATING", "addonVersion": "v1.16.4-eksbuild.2", "health": { "issues": [] }, "addonArn": "arn:aws:eks:us-east-2:111122223333:addon/my-eks-cluster/my-eks-addon/d8c71ef8-fbd8-07d0-fb32-6a7be19ececd", "createdAt": "2024-03-14T13:10:51.763000-04:00", "modifiedAt": "2024-03-14T13:10:51.777000-04:00", "serviceAccountRoleArn": "arn:aws:iam::111122223333:role/role-name", "tags": { "eks-addon-key-1": "value-1", "eks-addon-key-2": "value-2" }, "configurationValues": "{\n \"resources\": {\n \"limits\": {\n \"cpu\": \"150m\"\n }\n },\n \"env\": {\n \"AWS_VPC_K8S_CNI_LOGLEVEL\": \"ERROR\"\n }\n}" } }

Para obter mais informações, consulte Gerenciamento de complementos do Amazon EKS – Criar um complemento, no Guia do usuário do Amazon EKS.

Exemplo 5: criar um complemento do Amazon EKS com arquivo de valores de configuração YAML personalizados

O comando de exemplo create-addon a seguir cria um complemento do Amazon EKS com valores de configuração personalizados e resolve detalhes de conflitos.

aws eks create-addon \ --cluster-name my-eks-cluster \ --addon-name my-eks-addon \ --service-account-role-arn arn:aws:iam::111122223333:role/role-name \ --addon-version v1.16.4-eksbuild.2 \ --configuration-values 'file://configuration-values.yaml' \ --resolve-conflicts OVERWRITE \ --tags '{"eks-addon-key-1": "value-1" , "eks-addon-key-2": "value-2"}'

Conteúdo de configuration-values.yaml:

resources: limits: cpu: '100m' env: AWS_VPC_K8S_CNI_LOGLEVEL: 'DEBUG'

Saída:

{ "addon": { "addonName": "my-eks-addon", "clusterName": "my-eks-cluster", "status": "CREATING", "addonVersion": "v1.16.4-eksbuild.2", "health": { "issues": [] }, "addonArn": "arn:aws:eks:us-east-2:111122223333:addon/my-eks-cluster/my-eks-addon/d4c71efb-3909-6f36-a548-402cd4b5d59e", "createdAt": "2024-03-14T13:15:45.220000-04:00", "modifiedAt": "2024-03-14T13:15:45.237000-04:00", "serviceAccountRoleArn": "arn:aws:iam::111122223333:role/role-name", "tags": { "eks-addon-key-3": "value-3", "eks-addon-key-4": "value-4" }, "configurationValues": "resources:\n limits:\n cpu: '100m'\nenv:\n AWS_VPC_K8S_CNI_LOGLEVEL: 'INFO'" } }

Para obter mais informações, consulte Gerenciamento de complementos do Amazon EKS – Criar um complemento, no Guia do usuário do Amazon EKS.

  • Para ver detalhes da API, consulte CreateAddon na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar create-cluster.

AWS CLI

Como criar um cluster

Este comando de exemplo cria o cluster prod na sua região padrão.

Comando:

aws eks create-cluster --name prod \ --role-arn arn:aws:iam::012345678910:role/eks-service-role-AWSServiceRoleForAmazonEKS-J7ONKE3BQ4PI \ --resources-vpc-config subnetIds=subnet-6782e71e,subnet-e7e761ac,securityGroupIds=sg-6979fe18

Saída:

{ "cluster": { "name": "prod", "arn": "arn:aws:eks:us-west-2:012345678910:cluster/prod", "createdAt": 1527808069.147, "version": "1.10", "roleArn": "arn:aws:iam::012345678910:role/eks-service-role-AWSServiceRoleForAmazonEKS-J7ONKE3BQ4PI", "resourcesVpcConfig": { "subnetIds": [ "subnet-6782e71e", "subnet-e7e761ac" ], "securityGroupIds": [ "sg-6979fe18" ], "vpcId": "vpc-950809ec" }, "status": "CREATING", "certificateAuthority": {} } }

Como criar um cluster com acesso ao endpoint privado e registro em log habilitado

Este comando de exemplo cria o cluster example na região padrão com acesso ao endpoint público desabilitado e acesso ao endpoint privado e todos os tipos de registro em log habilitados.

Comando:

aws eks create-cluster --name example --kubernetes-version 1.12 \ --role-arn arn:aws:iam::012345678910:role/example-cluster-ServiceRole-1XWBQWYSFRE2Q \ --resources-vpc-config subnetIds=subnet-0a188dccd2f9a632f,subnet-09290d93da4278664,subnet-0f21dd86e0e91134a,subnet-0173dead68481a583,subnet-051f70a57ed6fcab6,subnet-01322339c5c7de9b4,securityGroupIds=sg-0c5b580845a031c10,endpointPublicAccess=false,endpointPrivateAccess=true \ --logging '{"clusterLogging":[{"types":["api","audit","authenticator","controllerManager","scheduler"],"enabled":true}]}'

Saída:

{ "cluster": { "name": "example", "arn": "arn:aws:eks:us-west-2:012345678910:cluster/example", "createdAt": 1565804921.901, "version": "1.12", "roleArn": "arn:aws:iam::012345678910:role/example-cluster-ServiceRole-1XWBQWYSFRE2Q", "resourcesVpcConfig": { "subnetIds": [ "subnet-0a188dccd2f9a632f", "subnet-09290d93da4278664", "subnet-0f21dd86e0e91134a", "subnet-0173dead68481a583", "subnet-051f70a57ed6fcab6", "subnet-01322339c5c7de9b4" ], "securityGroupIds": [ "sg-0c5b580845a031c10" ], "vpcId": "vpc-0f622c01f68d4afec", "endpointPublicAccess": false, "endpointPrivateAccess": true }, "logging": { "clusterLogging": [ { "types": [ "api", "audit", "authenticator", "controllerManager", "scheduler" ], "enabled": true } ] }, "status": "CREATING", "certificateAuthority": {}, "platformVersion": "eks.3" } }
  • Para obter detalhes da API, consulte CreateCluster na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar create-fargate-profile.

AWS CLI

Exemplo 1: criar um perfil do EKS Fargate para um seletor com um namespace

O exemplo create-fargate-profile a seguir cria um perfil do EKS Fargate para um seletor com um namespace.

aws eks create-fargate-profile \ --cluster-name my-eks-cluster \ --pod-execution-role-arn arn:aws:iam::111122223333:role/role-name \ --fargate-profile-name my-fargate-profile \ --selectors '[{"namespace": "default"}]'

Saída:

{ "fargateProfile": { "fargateProfileName": "my-fargate-profile", "fargateProfileArn": "arn:aws:eks:us-east-2:111122223333:fargateprofile/my-eks-cluster/my-fargate-profile/a2c72bca-318e-abe8-8ed1-27c6d4892e9e", "clusterName": "my-eks-cluster", "createdAt": "2024-03-19T12:38:47.368000-04:00", "podExecutionRoleArn": "arn:aws:iam::111122223333:role/role-name", "subnets": [ "subnet-09d912bb63ef21b9a", "subnet-04ad87f71c6e5ab4d", "subnet-0e2907431c9988b72" ], "selectors": [ { "namespace": "default" } ], "status": "CREATING", "tags": {} } }

Para obter mais informações, consulte Perfil do AWS Fargate – Criar um perfil do Fargate no Guia do usuário do Amazon EKS.

Exemplo 2: criar um perfil do EKS Fargate para um seletor com um namespace e rótulos

O exemplo create-fargate-profile a seguir cria um perfil do EKS Fargate para um seletor com um namespace e rótulos.

aws eks create-fargate-profile \ --cluster-name my-eks-cluster \ --pod-execution-role-arn arn:aws:iam::111122223333:role/role-name \ --fargate-profile-name my-fargate-profile \ --selectors '[{"namespace": "default", "labels": {"labelname1": "labelvalue1"}}]'

Saída:

{ "fargateProfile": { "fargateProfileName": "my-fargate-profile", "fargateProfileArn": "arn:aws:eks:us-east-2:111122223333:fargateprofile/my-eks-cluster/my-fargate-profile/88c72bc7-e8a4-fa34-44e4-2f1397224bb3", "clusterName": "my-eks-cluster", "createdAt": "2024-03-19T12:33:48.125000-04:00", "podExecutionRoleArn": "arn:aws:iam::111122223333:role/role-name", "subnets": [ "subnet-09d912bb63ef21b9a", "subnet-04ad87f71c6e5ab4d", "subnet-0e2907431c9988b72" ], "selectors": [ { "namespace": "default", "labels": { "labelname1": "labelvalue1" } } ], "status": "CREATING", "tags": {} } }

Para obter mais informações, consulte Perfil do AWS Fargate – Criar um perfil do Fargate no Guia do usuário do Amazon EKS.

Exemplo 3: criar um perfil do EKS Fargate para um seletor com um namespace e rótulos, junto com IDs de sub-redes nas quais iniciar um pod.

O exemplo create-fargate-profile a seguir cria o perfil do EKS Fargate para um seletor com um namespace e rótulos, junto com IDs de sub-redes nas quais iniciar um pod.

aws eks create-fargate-profile \ --cluster-name my-eks-cluster \ --pod-execution-role-arn arn:aws:iam::111122223333:role/role-name \ --fargate-profile-name my-fargate-profile \ --selectors '[{"namespace": "default", "labels": {"labelname1": "labelvalue1"}}]' \ --subnets '["subnet-09d912bb63ef21b9a", "subnet-04ad87f71c6e5ab4d", "subnet-0e2907431c9988b72"]'

Saída:

{ "fargateProfile": { "fargateProfileName": "my-fargate-profile", "fargateProfileArn": "arn:aws:eks:us-east-2:111122223333:fargateprofile/my-eks-cluster/my-fargate-profile/e8c72bc8-e87b-5eb6-57cb-ed4fe57577e3", "clusterName": "my-eks-cluster", "createdAt": "2024-03-19T12:35:58.640000-04:00", "podExecutionRoleArn": "arn:aws:iam::111122223333:role/role-name", "subnets": [ "subnet-09d912bb63ef21b9a", "subnet-04ad87f71c6e5ab4d", "subnet-0e2907431c9988b72" ], "selectors": [ { "namespace": "default", "labels": { "labelname1": "labelvalue1" } } ], "status": "CREATING", "tags": {} } }

Para obter mais informações, consulte Perfil do AWS Fargate – Criar um perfil do Fargate no Guia do usuário do Amazon EKS.

Exemplo 4: criar um perfil do EKS Fargate para um seletor com vários namespaces e rótulos, junto com IDs de sub-redes nas quais iniciar um pod

O exemplo create-fargate-profile a seguir cria um perfil do EKS Fargate para um seletor com vários namespaces e rótulos, junto com IDs de sub-redes nas quais iniciar um pod.

aws eks create-fargate-profile \ --cluster-name my-eks-cluster \ --pod-execution-role-arn arn:aws:iam::111122223333:role/role-name \ --fargate-profile-name my-fargate-profile \ --selectors '[{"namespace": "default1", "labels": {"labelname1": "labelvalue1", "labelname2": "labelvalue2"}}, {"namespace": "default2", "labels": {"labelname1": "labelvalue1", "labelname2": "labelvalue2"}}]' \ --subnets '["subnet-09d912bb63ef21b9a", "subnet-04ad87f71c6e5ab4d", "subnet-0e2907431c9988b72"]' \ --tags '{"eks-fargate-profile-key-1": "value-1" , "eks-fargate-profile-key-2": "value-2"}'

Saída:

{ "fargateProfile": { "fargateProfileName": "my-fargate-profile", "fargateProfileArn": "arn:aws:eks:us-east-2:111122223333:fargateprofile/my-eks-cluster/my-fargate-profile/4cc72bbf-b766-8ee6-8d29-e62748feb3cd", "clusterName": "my-eks-cluster", "createdAt": "2024-03-19T12:15:55.271000-04:00", "podExecutionRoleArn": "arn:aws:iam::111122223333:role/role-name", "subnets": [ "subnet-09d912bb63ef21b9a", "subnet-04ad87f71c6e5ab4d", "subnet-0e2907431c9988b72" ], "selectors": [ { "namespace": "default1", "labels": { "labelname2": "labelvalue2", "labelname1": "labelvalue1" } }, { "namespace": "default2", "labels": { "labelname2": "labelvalue2", "labelname1": "labelvalue1" } } ], "status": "CREATING", "tags": { "eks-fargate-profile-key-2": "value-2", "eks-fargate-profile-key-1": "value-1" } } }

Para obter mais informações, consulte Perfil do AWS Fargate – Criar um perfil do Fargate no Guia do usuário do Amazon EKS.

Exemplo 5: criar um perfil do EKS Fargate com um seletor curinga para namespaces e rótulos, junto com IDs de sub-redes nas quais iniciar um pod

O exemplo create-fargate-profile a seguir cria um perfil do EKS Fargate para um seletor com vários namespaces e rótulos, junto com IDs de sub-redes nas quais iniciar um pod.

aws eks create-fargate-profile \ --cluster-name my-eks-cluster \ --pod-execution-role-arn arn:aws:iam::111122223333:role/role-name \ --fargate-profile-name my-fargate-profile \ --selectors '[{"namespace": "prod*", "labels": {"labelname*?": "*value1"}}, {"namespace": "*dev*", "labels": {"labelname*?": "*value*"}}]' \ --subnets '["subnet-09d912bb63ef21b9a", "subnet-04ad87f71c6e5ab4d", "subnet-0e2907431c9988b72"]' \ --tags '{"eks-fargate-profile-key-1": "value-1" , "eks-fargate-profile-key-2": "value-2"}'

Saída:

{ "fargateProfile": { "fargateProfileName": "my-fargate-profile", "fargateProfileArn": "arn:aws:eks:us-east-2:111122223333:fargateprofile/my-eks-cluster/my-fargate-profile/e8c72bd6-5966-0bfe-b77b-1802893e5a6f", "clusterName": "my-eks-cluster", "createdAt": "2024-03-19T13:05:20.550000-04:00", "podExecutionRoleArn": "arn:aws:iam::111122223333:role/role-name", "subnets": [ "subnet-09d912bb63ef21b9a", "subnet-04ad87f71c6e5ab4d", "subnet-0e2907431c9988b72" ], "selectors": [ { "namespace": "prod*", "labels": { "labelname*?": "*value1" } }, { "namespace": "*dev*", "labels": { "labelname*?": "*value*" } } ], "status": "CREATING", "tags": { "eks-fargate-profile-key-2": "value-2", "eks-fargate-profile-key-1": "value-1" } } }

Para obter mais informações, consulte Perfil do AWS Fargate – Criar um perfil do Fargate no Guia do usuário do Amazon EKS.

O código de exemplo a seguir mostra como usar create-nodegroup.

AWS CLI

Exemplo 1: criar um grupo de nós gerenciado para um cluster do Amazon EKS

O exemplo create-nodegroup a seguir cria um grupo de nós gerenciados para um cluster do Amazon EKS.

aws eks create-nodegroup \ --cluster-name my-eks-cluster \ --nodegroup-name my-eks-nodegroup \ --node-role arn:aws:iam::111122223333:role/role-name \ --subnets "subnet-0e2907431c9988b72" "subnet-04ad87f71c6e5ab4d" "subnet-09d912bb63ef21b9a" \ --scaling-config minSize=1,maxSize=3,desiredSize=1 \ --region us-east-2

Saída:

{ "nodegroup": { "nodegroupName": "my-eks-nodegroup", "nodegroupArn": "arn:aws:eks:us-east-2:111122223333:nodegroup/my-eks-cluster/my-eks-nodegroup/bac7550f-b8b8-5fbb-4f3e-7502a931119e", "clusterName": "my-eks-cluster", "version": "1.26", "releaseVersion": "1.26.12-20240329", "createdAt": "2024-04-04T13:19:32.260000-04:00", "modifiedAt": "2024-04-04T13:19:32.260000-04:00", "status": "CREATING", "capacityType": "ON_DEMAND", "scalingConfig": { "minSize": 1, "maxSize": 3, "desiredSize": 1 }, "instanceTypes": [ "t3.medium" ], "subnets": [ "subnet-0e2907431c9988b72, subnet-04ad87f71c6e5ab4d, subnet-09d912bb63ef21b9a" ], "amiType": "AL2_x86_64", "nodeRole": "arn:aws:iam::111122223333:role/role-name", "diskSize": 20, "health": { "issues": [] }, "updateConfig": { "maxUnavailable": 1 }, "tags": {} } }

Para obter mais informações, consulte Criar um grupo de nós gerenciados no Guia do usuário do Amazon EKS.

Exemplo 2: criar um grupo de nós gerenciado para um cluster do Amazon EKS com tipos de instância e tamanho de disco personalizados

O exemplo create-nodegroup a seguir cria um grupo de nós gerenciados para um cluster do Amazon EKS com instance-types e disk-size personalizados.

aws eks create-nodegroup \ --cluster-name my-eks-cluster \ --nodegroup-name my-eks-nodegroup \ --node-role arn:aws:iam::111122223333:role/role-name \ --subnets "subnet-0e2907431c9988b72" "subnet-04ad87f71c6e5ab4d" "subnet-09d912bb63ef21b9a" \ --scaling-config minSize=1,maxSize=3,desiredSize=1 \ --capacity-type ON_DEMAND \ --instance-types 'm5.large' \ --disk-size 50 \ --region us-east-2

Saída:

{ "nodegroup": { "nodegroupName": "my-eks-nodegroup", "nodegroupArn": "arn:aws:eks:us-east-2:111122223333:nodegroup/my-eks-cluster/my-eks-nodegroup/c0c7551b-e4f9-73d9-992c-a450fdb82322", "clusterName": "my-eks-cluster", "version": "1.26", "releaseVersion": "1.26.12-20240329", "createdAt": "2024-04-04T13:46:07.595000-04:00", "modifiedAt": "2024-04-04T13:46:07.595000-04:00", "status": "CREATING", "capacityType": "ON_DEMAND", "scalingConfig": { "minSize": 1, "maxSize": 3, "desiredSize": 1 }, "instanceTypes": [ "m5.large" ], "subnets": [ "subnet-0e2907431c9988b72", "subnet-04ad87f71c6e5ab4d", "subnet-09d912bb63ef21b9a" ], "amiType": "AL2_x86_64", "nodeRole": "arn:aws:iam::111122223333:role/role-name", "diskSize": 50, "health": { "issues": [] }, "updateConfig": { "maxUnavailable": 1 }, "tags": {} } }

Para obter mais informações, consulte Criar um grupo de nós gerenciados no Guia do usuário do Amazon EKS.

Exemplo 3: criar um grupo de nós gerenciados para um cluster do Amazon EKS com instance-types, disk-size, ami-type, capacity-type, update-config, rótulos, taints e tags personalizados.

O exemplo create-nodegroup a seguir cria um grupo de nós gerenciados para um cluster do Amazon EKS com instance-types, disk-size, ami-type, capacity-type, update-config, rótulos, taints e tags personalizados.

aws eks create-nodegroup \ --cluster-name my-eks-cluster \ --nodegroup-name my-eks-nodegroup \ --node-role arn:aws:iam::111122223333:role/role-name \ --subnets "subnet-0e2907431c9988b72" "subnet-04ad87f71c6e5ab4d" "subnet-09d912bb63ef21b9a" \ --scaling-config minSize=1,maxSize=5,desiredSize=4 \ --instance-types 't3.large' \ --disk-size 50 \ --ami-type AL2_x86_64 \ --capacity-type SPOT \ --update-config maxUnavailable=2 \ --labels '{"my-eks-nodegroup-label-1": "value-1" , "my-eks-nodegroup-label-2": "value-2"}' \ --taints '{"key": "taint-key-1" , "value": "taint-value-1", "effect": "NO_EXECUTE"}' \ --tags '{"my-eks-nodegroup-key-1": "value-1" , "my-eks-nodegroup-key-2": "value-2"}'

Saída:

{ "nodegroup": { "nodegroupName": "my-eks-nodegroup", "nodegroupArn": "arn:aws:eks:us-east-2:111122223333:nodegroup/my-eks-cluster/my-eks-nodegroup/88c75524-97af-0cb9-a9c5-7c0423ab5314", "clusterName": "my-eks-cluster", "version": "1.26", "releaseVersion": "1.26.12-20240329", "createdAt": "2024-04-04T14:05:07.940000-04:00", "modifiedAt": "2024-04-04T14:05:07.940000-04:00", "status": "CREATING", "capacityType": "SPOT", "scalingConfig": { "minSize": 1, "maxSize": 5, "desiredSize": 4 }, "instanceTypes": [ "t3.large" ], "subnets": [ "subnet-0e2907431c9988b72", "subnet-04ad87f71c6e5ab4d", "subnet-09d912bb63ef21b9a" ], "amiType": "AL2_x86_64", "nodeRole": "arn:aws:iam::111122223333:role/role-name", "labels": { "my-eks-nodegroup-label-2": "value-2", "my-eks-nodegroup-label-1": "value-1" }, "taints": [ { "key": "taint-key-1", "value": "taint-value-1", "effect": "NO_EXECUTE" } ], "diskSize": 50, "health": { "issues": [] }, "updateConfig": { "maxUnavailable": 2 }, "tags": { "my-eks-nodegroup-key-1": "value-1", "my-eks-nodegroup-key-2": "value-2" } } }

Para obter mais informações, consulte Criar um grupo de nós gerenciados no Guia do usuário do Amazon EKS.

  • Para ver detalhes da API, consulte CreateNodegroup na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar delete-addon.

AWS CLI

Exemplo 1. Para excluir um complemento do Amazon EKS, mas preservar o software do complemento no cluster do EKS

O comando de exemplo delete-addon a seguir exclui um complemento do Amazon EKS, mas preserva o software do complemento no cluster do Amazon EKS.

aws eks delete-addon \ --cluster-name my-eks-cluster \ --addon-name my-eks-addon \ --preserve

Saída:

{ "addon": { "addonName": "my-eks-addon", "clusterName": "my-eks-cluster", "status": "DELETING", "addonVersion": "v1.9.3-eksbuild.7", "health": { "issues": [] }, "addonArn": "arn:aws:eks:us-east-2:111122223333:addon/my-eks-cluster/my-eks-addon/a8c71ed3-944e-898b-9167-c763856af4b8", "createdAt": "2024-03-14T11:49:09.009000-04:00", "modifiedAt": "2024-03-14T12:03:49.776000-04:00", "tags": {} } }

Para obter mais informações, consulte Gerenciamento de complementos do Amazon EKS – Excluir um complemento, no Amazon EKS.

Exemplo 2. Para excluir um complemento do Amazon EKS e também excluir o software do complemento do cluster do EKS

O comando de exemplo delete-addon a seguir exclui um complemento do Amazon EKS e também exclui o software do complemento do cluster do EKS.

aws eks delete-addon \ --cluster-name my-eks-cluster \ --addon-name my-eks-addon

Saída:

{ "addon": { "addonName": "my-eks-addon", "clusterName": "my-eks-cluster", "status": "DELETING", "addonVersion": "v1.15.1-eksbuild.1", "health": { "issues": [] }, "addonArn": "arn:aws:eks:us-east-2:111122223333:addon/my-eks-cluster/my-eks-addon/bac71ed1-ec43-3bb6-88ea-f243cdb58954", "createdAt": "2024-03-14T11:45:31.983000-04:00", "modifiedAt": "2024-03-14T11:58:40.136000-04:00", "serviceAccountRoleArn": "arn:aws:iam::111122223333:role/role-name", "tags": {} } }

Para obter mais informações, consulte Gerenciamento de complementos do Amazon EKS – Excluir um complemento, no Amazon EKS.

  • Para ver detalhes da API, consulte DeleteAddon na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar delete-cluster.

AWS CLI

Excluir um ambiente de gerenciamento de cluster do Amazon EKS

O exemplo delete-cluster a seguir exclui um ambiente de gerenciamento de cluster do Amazon EKS.

aws eks delete-cluster \ --name my-eks-cluster

Saída:

{ "cluster": { "name": "my-eks-cluster", "arn": "arn:aws:eks:us-east-2:111122223333:cluster/my-eks-cluster", "createdAt": "2024-03-14T11:31:44.348000-04:00", "version": "1.27", "endpoint": "https://DALSJ343KE23J3RN45653DSKJTT647TYD.yl4.us-east-2.eks.amazonaws.com", "roleArn": "arn:aws:iam::111122223333:role/eksctl-my-eks-cluster-cluster-ServiceRole-zMF6CBakwwbW", "resourcesVpcConfig": { "subnetIds": [ "subnet-0fb75d2d8401716e7", "subnet-02184492f67a3d0f9", "subnet-04098063527aab776", "subnet-0e2907431c9988b72", "subnet-04ad87f71c6e5ab4d", "subnet-09d912bb63ef21b9a" ], "securityGroupIds": [ "sg-0c1327f6270afbb36" ], "clusterSecurityGroupId": "sg-01c84d09d70f39a7f", "vpcId": "vpc-0012b8e1cc0abb17d", "endpointPublicAccess": true, "endpointPrivateAccess": true, "publicAccessCidrs": [ "0.0.0.0/0" ] }, "kubernetesNetworkConfig": { "serviceIpv4Cidr": "10.100.0.0/16", "ipFamily": "ipv4" }, "logging": { "clusterLogging": [ { "types": [ "api", "audit", "authenticator", "controllerManager", "scheduler" ], "enabled": true } ] }, "identity": { "oidc": { "issuer": "https://oidc.eks.us-east-2.amazonaws.com/id/DALSJ343KE23J3RN45653DSKJTT647TYD" } }, "status": "DELETING", "certificateAuthority": { "data": "XXX_CA_DATA_XXX" }, "platformVersion": "eks.16", "tags": { "aws:cloudformation:stack-name": "eksctl-my-eks-cluster-cluster", "alpha.eksctl.io/cluster-name": "my-eks-cluster", "karpenter.sh/discovery": "my-eks-cluster", "aws:cloudformation:stack-id": "arn:aws:cloudformation:us-east-2:111122223333:stack/eksctl-my-eks-cluster-cluster/e752ea00-e217-11ee-beae-0a9599c8c7ed", "auto-delete": "no", "eksctl.cluster.k8s.io/v1alpha1/cluster-name": "my-eks-cluster", "EKS-Cluster-Name": "my-eks-cluster", "alpha.eksctl.io/cluster-oidc-enabled": "true", "aws:cloudformation:logical-id": "ControlPlane", "alpha.eksctl.io/eksctl-version": "0.173.0-dev+a7ee89342.2024-03-01T03:40:57Z", "Name": "eksctl-my-eks-cluster-cluster/ControlPlane" }, "accessConfig": { "authenticationMode": "API_AND_CONFIG_MAP" } } }

Para obter mais informações, consulte Excluir um cluster do Amazon EKS no Guia do usuário do Amazon EKS.

  • Para ver detalhes da API, consulte DeleteCluster em AWS CLI Command Reference.

O código de exemplo a seguir mostra como usar delete-fargate-profile.

AWS CLI

Exemplo 1: criar um perfil do EKS Fargate para um seletor com um namespace

O exemplo delete-fargate-profile a seguir cria um perfil do EKS Fargate para um seletor com um namespace.

aws eks delete-fargate-profile \ --cluster-name my-eks-cluster \ --fargate-profile-name my-fargate-profile

Saída:

{ "fargateProfile": { "fargateProfileName": "my-fargate-profile", "fargateProfileArn": "arn:aws:eks:us-east-2:111122223333:fargateprofile/my-eks-cluster/my-fargate-profile/1ac72bb3-3fc6-2631-f1e1-98bff53bed62", "clusterName": "my-eks-cluster", "createdAt": "2024-03-19T11:48:39.975000-04:00", "podExecutionRoleArn": "arn:aws:iam::111122223333:role/role-name", "subnets": [ "subnet-09d912bb63ef21b9a", "subnet-04ad87f71c6e5ab4d", "subnet-0e2907431c9988b72" ], "selectors": [ { "namespace": "default", "labels": { "foo": "bar" } } ], "status": "DELETING", "tags": {} } }

Para obter mais informações, consulte Perfil do AWS Fargate – Excluir um Fargate no Guia do usuário do Amazon EKS.

O código de exemplo a seguir mostra como usar delete-nodegroup.

AWS CLI

Exemplo 1: excluir um grupo de nós gerenciado em um cluster do Amazon EKS

O exemplo delete-nodegroup a seguir exclui um grupo de nós gerenciado em um cluster do Amazon EKS.

aws eks delete-nodegroup \ --cluster-name my-eks-cluster \ --nodegroup-name my-eks-nodegroup

Saída:

{ "nodegroup": { "nodegroupName": "my-eks-nodegroup", "nodegroupArn": "arn:aws:eks:us-east-2:111122223333:nodegroup/my-eks-cluster/my-eks-nodegroup/1ec75f5f-0e21-dcc0-b46e-f9c442685cd8", "clusterName": "my-eks-cluster", "version": "1.26", "releaseVersion": "1.26.12-20240329", "createdAt": "2024-04-08T13:25:15.033000-04:00", "modifiedAt": "2024-04-08T13:25:31.252000-04:00", "status": "DELETING", "capacityType": "SPOT", "scalingConfig": { "minSize": 1, "maxSize": 5, "desiredSize": 4 }, "instanceTypes": [ "t3.large" ], "subnets": [ "subnet-0e2907431c9988b72", "subnet-04ad87f71c6e5ab4d", "subnet-09d912bb63ef21b9a" ], "amiType": "AL2_x86_64", "nodeRole": "arn:aws:iam::111122223333:role/role-name", "labels": { "my-eks-nodegroup-label-2": "value-2", "my-eks-nodegroup-label-1": "value-1" }, "taints": [ { "key": "taint-key-1", "value": "taint-value-1", "effect": "NO_EXECUTE" } ], "diskSize": 50, "health": { "issues": [] }, "updateConfig": { "maxUnavailable": 2 }, "tags": { "my-eks-nodegroup-key-1": "value-1", "my-eks-nodegroup-key-2": "value-2" } } }
  • Para ver detalhes da API, consulte DeleteNodegroup na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar deregister-cluster.

AWS CLI

Como cancelar o registro de um cluster conectado para removê-lo do ambiente de gerenciamento do Amazon EKS

O exemplo deregister-cluster a seguir cancela o registro de um cluster conectado para removê-lo do ambiente de gerenciamento do Amazon EKS.

aws eks deregister-cluster \ --name my-eks-anywhere-cluster

Saída:

{ "cluster": { "name": "my-eks-anywhere-cluster", "arn": "arn:aws:eks:us-east-2:111122223333:cluster/my-eks-anywhere-cluster", "createdAt": "2024-04-12T12:38:37.561000-04:00", "status": "DELETING", "tags": {}, "connectorConfig": { "activationId": "dfb5ad28-13c3-4e26-8a19-5b2457638c74", "activationExpiry": "2024-04-15T12:38:37.082000-04:00", "provider": "EKS_ANYWHERE", "roleArn": "arn:aws:iam::111122223333:role/AmazonEKSConnectorAgentRole" } } }

Para obter mais informações, consulte Cancelar o registro de um cluster no Guia do usuário do Amazon EKS.

  • Para ver detalhes da API, consulte DeregisterCluster na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar describe-addon-configuration.

AWS CLI

Exemplo 1: opções de configuração disponíveis ao criar ou atualizar complementos do Amazon vpc-cni

O exemplo describe-addon-configuration a seguir retorna todo o esquema de configuração disponível que você usa quando um complemento é criado ou atualizado para o complemento vpc-cni com a respectiva versão.

aws eks describe-addon-configuration \ --addon-name vpc-cni \ --addon-version v1.15.1-eksbuild.1

Saída:

{ "addonName": "vpc-cni", "addonVersion": "v1.15.1-eksbuild.1", "configurationSchema": "{\"$ref\":\"#/definitions/VpcCni\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"definitions\":{\"Affinity\":{\"type\":[\"object\",\"null\"]},\"EniConfig\":{\"additionalProperties\":false,\"properties\":{\"create\":{\"type\":\"boolean\"},\"region\":{\"type\":\"string\"},\"subnets\":{\"additionalProperties\":{\"additionalProperties\":false,\"properties\":{\"id\":{\"type\":\"string\"},\"securityGroups\":{\"items\":{\"type\":\"string\"},\"type\":\"array\"}},\"required\":[\"id\"],\"type\":\"object\"},\"minProperties\":1,\"type\":\"object\"}},\"required\":[\"create\",\"region\",\"subnets\"],\"type\":\"object\"},\"Env\":{\"additionalProperties\":false,\"properties\":{\"ADDITIONAL_ENI_TAGS\":{\"type\":\"string\"},\"ANNOTATE_POD_IP\":{\"format\":\"boolean\",\"type\":\"string\"},\"AWS_EC2_ENDPOINT\":{\"type\":\"string\"},\"AWS_EXTERNAL_SERVICE_CIDRS\":{\"type\":\"string\"},\"AWS_MANAGE_ENIS_NON_SCHEDULABLE\":{\"format\":\"boolean\",\"type\":\"string\"},\"AWS_VPC_CNI_NODE_PORT_SUPPORT\":{\"format\":\"boolean\",\"type\":\"string\"},\"AWS_VPC_ENI_MTU\":{\"format\":\"integer\",\"type\":\"string\"},\"AWS_VPC_K8S_CNI_CUSTOM_NETWORK_CFG\":{\"format\":\"boolean\",\"type\":\"string\"},\"AWS_VPC_K8S_CNI_EXCLUDE_SNAT_CIDRS\":{\"type\":\"string\"},\"AWS_VPC_K8S_CNI_EXTERNALSNAT\":{\"format\":\"boolean\",\"type\":\"string\"},\"AWS_VPC_K8S_CNI_LOGLEVEL\":{\"type\":\"string\"},\"AWS_VPC_K8S_CNI_LOG_FILE\":{\"type\":\"string\"},\"AWS_VPC_K8S_CNI_RANDOMIZESNAT\":{\"type\":\"string\"},\"AWS_VPC_K8S_CNI_VETHPREFIX\":{\"type\":\"string\"},\"AWS_VPC_K8S_PLUGIN_LOG_FILE\":{\"type\":\"string\"},\"AWS_VPC_K8S_PLUGIN_LOG_LEVEL\":{\"type\":\"string\"},\"CLUSTER_ENDPOINT\":{\"type\":\"string\"},\"DISABLE_INTROSPECTION\":{\"format\":\"boolean\",\"type\":\"string\"},\"DISABLE_LEAKED_ENI_CLEANUP\":{\"format\":\"boolean\",\"type\":\"string\"},\"DISABLE_METRICS\":{\"format\":\"boolean\",\"type\":\"string\"},\"DISABLE_NETWORK_RESOURCE_PROVISIONING\":{\"format\":\"boolean\",\"type\":\"string\"},\"DISABLE_POD_V6\":{\"format\":\"boolean\",\"type\":\"string\"},\"ENABLE_BANDWIDTH_PLUGIN\":{\"format\":\"boolean\",\"type\":\"string\"},\"ENABLE_POD_ENI\":{\"format\":\"boolean\",\"type\":\"string\"},\"ENABLE_PREFIX_DELEGATION\":{\"format\":\"boolean\",\"type\":\"string\"},\"ENABLE_V4_EGRESS\":{\"format\":\"boolean\",\"type\":\"string\"},\"ENABLE_V6_EGRESS\":{\"format\":\"boolean\",\"type\":\"string\"},\"ENI_CONFIG_ANNOTATION_DEF\":{\"type\":\"string\"},\"ENI_CONFIG_LABEL_DEF\":{\"type\":\"string\"},\"INTROSPECTION_BIND_ADDRESS\":{\"type\":\"string\"},\"IP_COOLDOWN_PERIOD\":{\"format\":\"integer\",\"type\":\"string\"},\"MAX_ENI\":{\"format\":\"integer\",\"type\":\"string\"},\"MINIMUM_IP_TARGET\":{\"format\":\"integer\",\"type\":\"string\"},\"POD_SECURITY_GROUP_ENFORCING_MODE\":{\"type\":\"string\"},\"WARM_ENI_TARGET\":{\"format\":\"integer\",\"type\":\"string\"},\"WARM_IP_TARGET\":{\"format\":\"integer\",\"type\":\"string\"},\"WARM_PREFIX_TARGET\":{\"format\":\"integer\",\"type\":\"string\"}},\"title\":\"Env\",\"type\":\"object\"},\"Init\":{\"additionalProperties\":false,\"properties\":{\"env\":{\"$ref\":\"#/definitions/InitEnv\"}},\"title\":\"Init\",\"type\":\"object\"},\"InitEnv\":{\"additionalProperties\":false,\"properties\":{\"DISABLE_TCP_EARLY_DEMUX\":{\"format\":\"boolean\",\"type\":\"string\"},\"ENABLE_V6_EGRESS\":{\"format\":\"boolean\",\"type\":\"string\"}},\"title\":\"InitEnv\",\"type\":\"object\"},\"Limits\":{\"additionalProperties\":false,\"properties\":{\"cpu\":{\"type\":\"string\"},\"memory\":{\"type\":\"string\"}},\"title\":\"Limits\",\"type\":\"object\"},\"NodeAgent\":{\"additionalProperties\":false,\"properties\":{\"enableCloudWatchLogs\":{\"format\":\"boolean\",\"type\":\"string\"},\"enablePolicyEventLogs\":{\"format\":\"boolean\",\"type\":\"string\"},\"healthProbeBindAddr\":{\"format\":\"integer\",\"type\":\"string\"},\"metricsBindAddr\":{\"format\":\"integer\",\"type\":\"string\"}},\"title\":\"NodeAgent\",\"type\":\"object\"},\"Resources\":{\"additionalProperties\":false,\"properties\":{\"limits\":{\"$ref\":\"#/definitions/Limits\"},\"requests\":{\"$ref\":\"#/definitions/Limits\"}},\"title\":\"Resources\",\"type\":\"object\"},\"Tolerations\":{\"additionalProperties\":false,\"items\":{\"type\":\"object\"},\"type\":\"array\"},\"VpcCni\":{\"additionalProperties\":false,\"properties\":{\"affinity\":{\"$ref\":\"#/definitions/Affinity\"},\"enableNetworkPolicy\":{\"format\":\"boolean\",\"type\":\"string\"},\"enableWindowsIpam\":{\"format\":\"boolean\",\"type\":\"string\"},\"eniConfig\":{\"$ref\":\"#/definitions/EniConfig\"},\"env\":{\"$ref\":\"#/definitions/Env\"},\"init\":{\"$ref\":\"#/definitions/Init\"},\"livenessProbeTimeoutSeconds\":{\"type\":\"integer\"},\"nodeAgent\":{\"$ref\":\"#/definitions/NodeAgent\"},\"readinessProbeTimeoutSeconds\":{\"type\":\"integer\"},\"resources\":{\"$ref\":\"#/definitions/Resources\"},\"tolerations\":{\"$ref\":\"#/definitions/Tolerations\"}},\"title\":\"VpcCni\",\"type\":\"object\"}},\"description\":\"vpc-cni\"}" }

Exemplo 2: opções de configuração disponíveis ao criar ou atualizar complementos do Amazon coredns

O exemplo describe-addon-configuration a seguir retorna todo o esquema de configuração disponível que você usa quando um complemento é criado ou atualizado para o complemento coredns com a respectiva versão.

aws eks describe-addon-configuration \ --addon-name coredns \ --addon-version v1.8.7-eksbuild.4

Saída:

{ "addonName": "coredns", "addonVersion": "v1.8.7-eksbuild.4", "configurationSchema": "{\"$ref\":\"#/definitions/Coredns\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"definitions\":{\"Coredns\":{\"additionalProperties\":false,\"properties\":{\"computeType\":{\"type\":\"string\"},\"corefile\":{\"description\":\"Entire corefile contents to use with installation\",\"type\":\"string\"},\"nodeSelector\":{\"additionalProperties\":{\"type\":\"string\"},\"type\":\"object\"},\"replicaCount\":{\"type\":\"integer\"},\"resources\":{\"$ref\":\"#/definitions/Resources\"}},\"title\":\"Coredns\",\"type\":\"object\"},\"Limits\":{\"additionalProperties\":false,\"properties\":{\"cpu\":{\"type\":\"string\"},\"memory\":{\"type\":\"string\"}},\"title\":\"Limits\",\"type\":\"object\"},\"Resources\":{\"additionalProperties\":false,\"properties\":{\"limits\":{\"$ref\":\"#/definitions/Limits\"},\"requests\":{\"$ref\":\"#/definitions/Limits\"}},\"title\":\"Resources\",\"type\":\"object\"}}}" }

Para obter mais informações, consulte Criar ou atualizar um arquivo kubeconfig para um cluster do Amazon EKS no Amazon EKS.

O código de exemplo a seguir mostra como usar describe-addon-versions.

AWS CLI

Exemplo 1: listar todos os complementos disponíveis para o cluster do EKS

O exemplo describe-addon-versions a seguir lista todos os complementos da AWS disponíveis.

aws eks describe-addon-versions \ --query 'sort_by(addons &owner)[].{publisher: publisher, owner: owner, addonName: addonName, type: type}' \ --output table

Saída:

-------------------------------------------------------------------------------------------------------------------- | DescribeAddonVersions | +---------------------------------------------+------------------+-----------------------+-------------------------+ | addonName | owner | publisher | type | +---------------------------------------------+------------------+-----------------------+-------------------------+ | vpc-cni | aws | eks | networking | | snapshot-controller | aws | eks | storage | | kube-proxy | aws | eks | networking | | eks-pod-identity-agent | aws | eks | security | | coredns | aws | eks | networking | | aws-mountpoint-s3-csi-driver | aws | s3 | storage | | aws-guardduty-agent | aws | eks | security | | aws-efs-csi-driver | aws | eks | storage | | aws-ebs-csi-driver | aws | eks | storage | | amazon-cloudwatch-observability | aws | eks | observability | | adot | aws | eks | observability | | upwind-security_upwind-operator | aws-marketplace | Upwind Security | security | | upbound_universal-crossplane | aws-marketplace | upbound | infra-management | | tetrate-io_istio-distro | aws-marketplace | tetrate-io | policy-management | | teleport_teleport | aws-marketplace | teleport | policy-management | | stormforge_optimize-live | aws-marketplace | StormForge | cost-management | | splunk_splunk-otel-collector-chart | aws-marketplace | Splunk | monitoring | | solo-io_istio-distro | aws-marketplace | Solo.io | service-mesh | | rafay-systems_rafay-operator | aws-marketplace | rafay-systems | kubernetes-management | | new-relic_kubernetes-operator | aws-marketplace | New Relic | observability | | netapp_trident-operator | aws-marketplace | NetApp Inc. | storage | | leaksignal_leakagent | aws-marketplace | leaksignal | monitoring | | kubecost_kubecost | aws-marketplace | kubecost | cost-management | | kong_konnect-ri | aws-marketplace | kong | ingress-service-type | | kasten_k10 | aws-marketplace | Kasten by Veeam | data-protection | | haproxy-technologies_kubernetes-ingress-ee | aws-marketplace | HAProxy Technologies | ingress-controller | | groundcover_agent | aws-marketplace | groundcover | monitoring | | grafana-labs_kubernetes-monitoring | aws-marketplace | Grafana Labs | monitoring | | factorhouse_kpow | aws-marketplace | factorhouse | monitoring | | dynatrace_dynatrace-operator | aws-marketplace | dynatrace | monitoring | | datree_engine-pro | aws-marketplace | datree | policy-management | | datadog_operator | aws-marketplace | Datadog | monitoring | | cribl_cribledge | aws-marketplace | Cribl | observability | | calyptia_fluent-bit | aws-marketplace | Calyptia Inc | observability | | accuknox_kubearmor | aws-marketplace | AccuKnox | security | +---------------------------------------------+------------------+-----------------------+-------------------------+

Para obter mais informações, consulte Gerenciamento de complementos do Amazon EKS – Criar um complemento, no Guia do usuário do Amazon EKS.

Exemplo 2: listar todos os complementos disponíveis para a versão especificada do Kubernetes compatível com o EKS

O exemplo describe-addon-versions a seguir lista todos os complementos disponíveis para a versão específica do Kubernetes compatível com o EKS.

aws eks describe-addon-versions \ --kubernetes-version=1.26 \ --query 'sort_by(addons &owner)[].{publisher: publisher, owner: owner, addonName: addonName, type: type}' \ --output table

Saída:

-------------------------------------------------------------------------------------------------------------------- | DescribeAddonVersions | +---------------------------------------------+------------------+-----------------------+-------------------------+ | addonName | owner | publisher | type | +---------------------------------------------+------------------+-----------------------+-------------------------+ | vpc-cni | aws | eks | networking | | snapshot-controller | aws | eks | storage | | kube-proxy | aws | eks | networking | | eks-pod-identity-agent | aws | eks | security | | coredns | aws | eks | networking | | aws-mountpoint-s3-csi-driver | aws | s3 | storage | | aws-guardduty-agent | aws | eks | security | | aws-efs-csi-driver | aws | eks | storage | | aws-ebs-csi-driver | aws | eks | storage | | amazon-cloudwatch-observability | aws | eks | observability | | adot | aws | eks | observability | | upwind-security_upwind-operator | aws-marketplace | Upwind Security | security | | tetrate-io_istio-distro | aws-marketplace | tetrate-io | policy-management | | stormforge_optimize-live | aws-marketplace | StormForge | cost-management | | splunk_splunk-otel-collector-chart | aws-marketplace | Splunk | monitoring | | solo-io_istio-distro | aws-marketplace | Solo.io | service-mesh | | rafay-systems_rafay-operator | aws-marketplace | rafay-systems | kubernetes-management | | new-relic_kubernetes-operator | aws-marketplace | New Relic | observability | | netapp_trident-operator | aws-marketplace | NetApp Inc. | storage | | leaksignal_leakagent | aws-marketplace | leaksignal | monitoring | | kubecost_kubecost | aws-marketplace | kubecost | cost-management | | kong_konnect-ri | aws-marketplace | kong | ingress-service-type | | haproxy-technologies_kubernetes-ingress-ee | aws-marketplace | HAProxy Technologies | ingress-controller | | groundcover_agent | aws-marketplace | groundcover | monitoring | | grafana-labs_kubernetes-monitoring | aws-marketplace | Grafana Labs | monitoring | | dynatrace_dynatrace-operator | aws-marketplace | dynatrace | monitoring | | datadog_operator | aws-marketplace | Datadog | monitoring | | cribl_cribledge | aws-marketplace | Cribl | observability | | calyptia_fluent-bit | aws-marketplace | Calyptia Inc | observability | | accuknox_kubearmor | aws-marketplace | AccuKnox | security | +---------------------------------------------+------------------+-----------------------+-------------------------+

Para obter mais informações, consulte Gerenciamento de complementos do Amazon EKS – Criar um complemento, no Guia do usuário do Amazon EKS.

Exemplo 3: listar todas as versões de complementos vpc-cni disponíveis para a versão especificada do Kubernetes compatível com EKS

O exemplo describe-addon-versions a seguir lista todas as versões de complementos vpc-cni disponíveis para a versão especificada do Kubernetes compatível com o EKS.

aws eks describe-addon-versions \ --kubernetes-version=1.26 \ --addon-name=vpc-cni \ --query='addons[].addonVersions[].addonVersion'

Saída:

[ "v1.18.0-eksbuild.1", "v1.17.1-eksbuild.1", "v1.16.4-eksbuild.2", "v1.16.3-eksbuild.2", "v1.16.2-eksbuild.1", "v1.16.0-eksbuild.1", "v1.15.5-eksbuild.1", "v1.15.4-eksbuild.1", "v1.15.3-eksbuild.1", "v1.15.1-eksbuild.1", "v1.15.0-eksbuild.2", "v1.14.1-eksbuild.1", "v1.14.0-eksbuild.3", "v1.13.4-eksbuild.1", "v1.13.3-eksbuild.1", "v1.13.2-eksbuild.1", "v1.13.0-eksbuild.1", "v1.12.6-eksbuild.2", "v1.12.6-eksbuild.1", "v1.12.5-eksbuild.2", "v1.12.0-eksbuild.2" ]

Para obter mais informações, consulte Gerenciamento de complementos do Amazon EKS – Criar um complemento, no Guia do usuário do Amazon EKS.

O código de exemplo a seguir mostra como usar describe-addon.

AWS CLI

Descrever o complemento do EKS em execução ativa em seu cluster do Amazon EKS

O exemplo describe-addon a seguir executa ativamente o complemento do Amazon EKS em seu cluster do Amazon EKS.

aws eks describe-addon \ --cluster-name my-eks-cluster \ --addon-name vpc-cni

Saída:

{ "addon": { "addonName": "vpc-cni", "clusterName": "my-eks-cluster", "status": "ACTIVE", "addonVersion": "v1.16.4-eksbuild.2", "health": { "issues": [] }, "addonArn": "arn:aws:eks:us-east-2:111122223333:addon/my-eks-cluster/vpc-cni/0ec71efc-98dd-3203-60b0-4b939b2a5e5f", "createdAt": "2024-03-14T13:18:45.417000-04:00", "modifiedAt": "2024-03-14T13:18:49.557000-04:00", "serviceAccountRoleArn": "arn:aws:iam::111122223333:role/eksctl-my-eks-cluster-addon-vpc-cni-Role1-YfakrqOC1UTm", "tags": { "eks-addon-key-3": "value-3", "eks-addon-key-4": "value-4" }, "configurationValues": "resources:\n limits:\n cpu: '100m'\nenv:\n AWS_VPC_K8S_CNI_LOGLEVEL: 'DEBUG'" } }
  • Para ver detalhes da API, consulte DescribeAddon na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar describe-cluster.

AWS CLI

Descrever o complemento do EKS em execução ativa em seu cluster do Amazon EKS

O exemplo describe-cluster a seguir executa ativamente o complemento do Amazon EKS em seu cluster do Amazon EKS.

aws eks describe-cluster \ --name my-eks-cluster

Saída:

{ "cluster": { "name": "my-eks-cluster", "arn": "arn:aws:eks:us-east-2:111122223333:cluster/my-eks-cluster", "createdAt": "2024-03-14T11:31:44.348000-04:00", "version": "1.26", "endpoint": "https://JSA79429HJDASKJDJ8223829MNDNASW.yl4.us-east-2.eks.amazonaws.com", "roleArn": "arn:aws:iam::111122223333:role/eksctl-my-eks-cluster-cluster-ServiceRole-zMF6CBakwwbW", "resourcesVpcConfig": { "subnetIds": [ "subnet-0fb75d2d8401716e7", "subnet-02184492f67a3d0f9", "subnet-04098063527aab776", "subnet-0e2907431c9988b72", "subnet-04ad87f71c6e5ab4d", "subnet-09d912bb63ef21b9a" ], "securityGroupIds": [ "sg-0c1327f6270afbb36" ], "clusterSecurityGroupId": "sg-01c84d09d70f39a7f", "vpcId": "vpc-0012b8e1cc0abb17d", "endpointPublicAccess": true, "endpointPrivateAccess": true, "publicAccessCidrs": [ "22.19.18.2/32" ] }, "kubernetesNetworkConfig": { "serviceIpv4Cidr": "10.100.0.0/16", "ipFamily": "ipv4" }, "logging": { "clusterLogging": [ { "types": [ "api", "audit", "authenticator", "controllerManager", "scheduler" ], "enabled": true } ] }, "identity": { "oidc": { "issuer": "https://oidc.eks.us-east-2.amazonaws.com/id/JSA79429HJDASKJDJ8223829MNDNASW" } }, "status": "ACTIVE", "certificateAuthority": { "data": "CA_DATA_STRING..." }, "platformVersion": "eks.14", "tags": { "aws:cloudformation:stack-name": "eksctl-my-eks-cluster-cluster", "alpha.eksctl.io/cluster-name": "my-eks-cluster", "karpenter.sh/discovery": "my-eks-cluster", "aws:cloudformation:stack-id": "arn:aws:cloudformation:us-east-2:111122223333:stack/eksctl-my-eks-cluster-cluster/e752ea00-e217-11ee-beae-0a9599c8c7ed", "auto-delete": "no", "eksctl.cluster.k8s.io/v1alpha1/cluster-name": "my-eks-cluster", "EKS-Cluster-Name": "my-eks-cluster", "alpha.eksctl.io/cluster-oidc-enabled": "true", "aws:cloudformation:logical-id": "ControlPlane", "alpha.eksctl.io/eksctl-version": "0.173.0-dev+a7ee89342.2024-03-01T03:40:57Z", "Name": "eksctl-my-eks-cluster-cluster/ControlPlane" }, "health": { "issues": [] }, "accessConfig": { "authenticationMode": "API_AND_CONFIG_MAP" } } }
  • Para obter detalhes da API, consulte DescribeCluster na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar describe-fargate-profile.

AWS CLI

Descrever um perfil do Fargate

O exemplo describe-fargate-profile a seguir descreve um perfil do Fargate.

aws eks describe-fargate-profile \ --cluster-name my-eks-cluster \ --fargate-profile-name my-fargate-profile

Saída:

{ "fargateProfile": { "fargateProfileName": "my-fargate-profile", "fargateProfileArn": "arn:aws:eks:us-east-2:111122223333:fargateprofile/my-eks-cluster/my-fargate-profile/96c766ce-43d2-f9c9-954c-647334391198", "clusterName": "my-eks-cluster", "createdAt": "2024-04-11T10:42:52.486000-04:00", "podExecutionRoleArn": "arn:aws:iam::111122223333:role/eksctl-my-eks-cluster-farga-FargatePodExecutionRole-1htfAaJdJUEO", "subnets": [ "subnet-09d912bb63ef21b9a", "subnet-04ad87f71c6e5ab4d", "subnet-0e2907431c9988b72" ], "selectors": [ { "namespace": "prod*", "labels": { "labelname*?": "*value1" } }, { "namespace": "*dev*", "labels": { "labelname*?": "*value*" } } ], "status": "ACTIVE", "tags": { "eks-fargate-profile-key-2": "value-2", "eks-fargate-profile-key-1": "value-1" } } }

O código de exemplo a seguir mostra como usar describe-identity-provider-config.

AWS CLI

Descrever uma configuração de provedor de identidade associada ao cluster do Amazon EKS

O exemplo describe-identity-provider-config a seguir descreve uma configuração de provedor de identidade associada ao seu cluster do Amazon EKS.

aws eks describe-identity-provider-config \ --cluster-name my-eks-cluster \ --identity-provider-config type=oidc,name=my-identity-provider

Saída:

{ "identityProviderConfig": { "oidc": { "identityProviderConfigName": "my-identity-provider", "identityProviderConfigArn": "arn:aws:eks:us-east-2:111122223333:identityproviderconfig/my-eks-cluster/oidc/my-identity-provider/8ac76722-78e4-cec1-ed76-d49eea058622", "clusterName": "my-eks-cluster", "issuerUrl": "https://oidc.eks.us-east-2.amazonaws.com/id/38D6A4619A0A69E342B113ED7F1A7652", "clientId": "kubernetes", "usernameClaim": "email", "usernamePrefix": "my-username-prefix", "groupsClaim": "my-claim", "groupsPrefix": "my-groups-prefix", "requiredClaims": { "Claim1": "value1", "Claim2": "value2" }, "tags": { "env": "dev" }, "status": "ACTIVE" } } }

Para obter mais informações, consulte Autenticar usuários para seu cluster a partir de um provedor de identidade OpenID Connect no Guia do usuário do Amazon EKS.

O código de exemplo a seguir mostra como usar describe-nodegroup.

AWS CLI

Descrever um grupo de nós gerenciado para um cluster do Amazon EKS

O exemplo describe-nodegroup a seguir descreve um grupo de nós gerenciado em um cluster do Amazon EKS.

aws eks describe-nodegroup \ --cluster-name my-eks-cluster \ --nodegroup-name my-eks-nodegroup

Saída:

{ "nodegroup": { "nodegroupName": "my-eks-nodegroup", "nodegroupArn": "arn:aws:eks:us-east-2:111122223333:nodegroup/my-eks-cluster/my-eks-nodegroup/a8c75f2f-df78-a72f-4063-4b69af3de5b1", "clusterName": "my-eks-cluster", "version": "1.26", "releaseVersion": "1.26.12-20240329", "createdAt": "2024-04-08T11:42:10.555000-04:00", "modifiedAt": "2024-04-08T11:44:12.402000-04:00", "status": "ACTIVE", "capacityType": "ON_DEMAND", "scalingConfig": { "minSize": 1, "maxSize": 3, "desiredSize": 1 }, "instanceTypes": [ "t3.medium" ], "subnets": [ "subnet-0e2907431c9988b72", "subnet-04ad87f71c6e5ab4d", "subnet-09d912bb63ef21b9a" ], "amiType": "AL2_x86_64", "nodeRole": "arn:aws:iam::111122223333:role/role-name", "labels": {}, "resources": { "autoScalingGroups": [ { "name": "eks-my-eks-nodegroup-a8c75f2f-df78-a72f-4063-4b69af3de5b1" } ] }, "diskSize": 20, "health": { "issues": [] }, "updateConfig": { "maxUnavailable": 1 }, "tags": {} } }
  • Para ver detalhes da API, consulte DescribeNodegroup na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar describe-update.

AWS CLI

Exemplo 1: descrever uma atualização para um cluster

O exemplo describe-update a seguir descreve uma atualização para um cluster chamado.

aws eks describe-update \ --name my-eks-cluster \ --update-id 10bddb13-a71b-425a-b0a6-71cd03e59161

Saída:

{ "update": { "id": "10bddb13-a71b-425a-b0a6-71cd03e59161", "status": "Successful", "type": "EndpointAccessUpdate", "params": [ { "type": "EndpointPublicAccess", "value": "false" }, { "type": "EndpointPrivateAccess", "value": "true" } ], "createdAt": "2024-03-14T10:01:26.297000-04:00", "errors": [] } }

Para obter mais informações, consulte Atualizar uma versão do Kubernetes do cluster do Amazon EKS no Guia do usuário do Amazon EKS.

Exemplo 2: descrever uma atualização para um cluster

O exemplo describe-update a seguir descreve uma atualização para um cluster chamado.

aws eks describe-update \ --name my-eks-cluster \ --update-id e4994991-4c0f-475a-a040-427e6da52966

Saída:

{ "update": { "id": "e4994991-4c0f-475a-a040-427e6da52966", "status": "Successful", "type": "AssociateEncryptionConfig", "params": [ { "type": "EncryptionConfig", "value": "[{\"resources\":[\"secrets\"],\"provider\":{\"keyArn\":\"arn:aws:kms:region-code:account:key/key\"}}]" } ], "createdAt": "2024-03-14T11:01:26.297000-04:00", "errors": [] } }

Para obter mais informações, consulte Atualizar uma versão do Kubernetes do cluster do Amazon EKS no Guia do usuário do Amazon EKS.

Exemplo 3: descrever uma atualização para um cluster

O exemplo describe-update a seguir descreve uma atualização para um cluster chamado.

aws eks describe-update \ --name my-eks-cluster \ --update-id b5f0ba18-9a87-4450-b5a0-825e6e84496f

Saída:

{ "update": { "id": "b5f0ba18-9a87-4450-b5a0-825e6e84496f", "status": "Successful", "type": "VersionUpdate", "params": [ { "type": "Version", "value": "1.29" }, { "type": "PlatformVersion", "value": "eks.1" } ], "createdAt": "2024-03-14T12:05:26.297000-04:00", "errors": [] } }

Para obter mais informações, consulte Atualizar uma versão do Kubernetes do cluster do Amazon EKS no Guia do usuário do Amazon EKS.

  • Para ver detalhes da API, consulte DescribeUpdate na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar disassociate-identity-provider-config.

AWS CLI

Desassociar um provedor de identidade ao seu cluster do Amazon EKS

O exemplo disassociate-identity-provider-config a seguir desassocia um provedor de identidade ao seu cluster do Amazon EKS.

aws eks disassociate-identity-provider-config \ --cluster-name my-eks-cluster \ --identity-provider-config 'type=oidc,name=my-identity-provider'

Saída:

{ "update": { "id": "5f78d14e-c57b-4857-a3e4-cf664ae20949", "status": "InProgress", "type": "DisassociateIdentityProviderConfig", "params": [ { "type": "IdentityProviderConfig", "value": "[]" } ], "createdAt": "2024-04-11T13:53:43.314000-04:00", "errors": [] } }

Para obter mais informações, consulte Autenticar usuários para o cluster em um provedor de identidade OpenID Connect – Desassociar um provedor de identidade OIDC do seu cluster no Guia do usuário do Amazon EKS.

O código de exemplo a seguir mostra como usar get-token.

AWS CLI

Exemplo 1: obter um token de autenticação para um cluster do Amazon EKS chamado `my-eks-cluster`

O exemplo get-token a seguir obtém um token de autenticação para um cluster do Amazon EKS chamado my-eks-cluster.

aws eks get-token \ --cluster-name my-eks-cluster

Saída:

{ "kind": "ExecCredential", "apiVersion": "client.authentication.k8s.io/v1beta1", "spec": {}, "status": { "expirationTimestamp": "2024-04-11T20:59:56Z", "token": "k8s-aws-v1.EXAMPLE_TOKEN_DATA_STRING..." } }

Exemplo 2: obter um token de autenticação para um cluster do Amazon EKS chamado `my-eks-cluster` assumindo esse roleARN como credenciais ao assinar o token

O exemplo get-token a seguir obtém um token de autenticação para um cluster do Amazon EKS chamado my-eks-cluster ao considerar esse roleARN como credenciais ao assinar o token.

aws eks get-token \ --cluster-name my-eks-cluster \ --role-arn arn:aws:iam::111122223333:role/eksctl-EKS-Linux-Cluster-v1-24-cluster-ServiceRole-j1k7AfTIQtnM

Saída:

{ "kind": "ExecCredential", "apiVersion": "client.authentication.k8s.io/v1beta1", "spec": {}, "status": { "expirationTimestamp": "2024-04-11T21:05:26Z", "token": "k8s-aws-v1.EXAMPLE_TOKEN_DATA_STRING..." } }
  • Para ver detalhes da API, consulte GetToken na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar list-addons.

AWS CLI

Listar todos os complementos instalados em seu cluster Amazon EKS chamado `my-eks-cluster`

O exemplo list-addons a seguir lista todos os complementos instalados em seu cluster do Amazon EKS chamado my-eks-cluster.

aws eks list-addons \ --cluster-name my-eks-cluster

Saída:

{ "addons": [ "kube-proxy", "vpc-cni" ] }
  • Para ver detalhes da API, consulte ListAddons na AWS CLI Command Reference.

O código de exemplo a seguir mostra como usar list-clusters.

AWS CLI

Para listar todos os complementos instalados em seu cluster do Amazon EKS chamado `my-eks-cluster`

O exemplo list-clusters a seguir lista todos os complementos instalados em seu cluster do Amazon EKS chamado my-eks-cluster.

aws eks list-clusters

Saída:

{ "clusters": [ "prod", "qa", "stage", "my-eks-cluster" ] }
  • Para obter detalhes da API, consulte ListClusters na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar list-fargate-profiles.

AWS CLI

Para listar todos os perfis de fargate em seu cluster do Amazon EKS chamado `my-eks-cluster`

O exemplo list-fargate-profiles a seguir lista todos os perfis do Fargate em seu cluster do Amazon EKS chamado my-eks-cluster.

aws eks list-fargate-profiles \ --cluster-name my-eks-cluster

Saída:

{ "fargateProfileNames": [ "my-fargate-profile" ] }
  • Para ver detalhes da API, consulte ListFargateProfiles na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar list-identity-provider-configs.

AWS CLI

Listar provedores de identidade associados a um cluster do Amazon EKS

O exemplo list-identity-provider-configs a seguir lista o provedor de identidade associado a um cluster do Amazon EKS.

aws eks list-identity-provider-configs \ --cluster-name my-eks-cluster

Saída:

{ "identityProviderConfigs": [ { "type": "oidc", "name": "my-identity-provider" } ] }

Para obter mais informações, consulte Autenticar usuários para seu cluster a partir de um provedor de identidade OpenID Connect no Guia do usuário do Amazon EKS.

O código de exemplo a seguir mostra como usar list-nodegroups.

AWS CLI

Listar todos os grupos de nós em um cluster do Amazon EKS

O exemplo list-nodegroups a seguir lista todos os grupos de nós gerenciados em um cluster do Amazon EKS.

aws eks list-nodegroups \ --cluster-name my-eks-cluster

Saída:

{ "nodegroups": [ "my-eks-managed-node-group", "my-eks-nodegroup" ] }
  • Para ver detalhes da API, consulte ListNodegroups na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar list-tags-for-resource.

AWS CLI

Exemplo 1: listar todas as tags de um ARN do cluster do Amazon EKS

O exemplo list-tags-for-resource a seguir lista todas as tags de um ARN do cluster do Amazon EKS.

aws eks list-tags-for-resource \ --resource-arn arn:aws:eks:us-east-2:111122223333:cluster/my-eks-cluster

Saída:

{ "tags": { "aws:cloudformation:stack-name": "eksctl-my-eks-cluster-cluster", "alpha.eksctl.io/cluster-name": "my-eks-cluster", "karpenter.sh/discovery": "my-eks-cluster", "aws:cloudformation:stack-id": "arn:aws:cloudformation:us-east-2:111122223333:stack/eksctl-my-eks-cluster-cluster/e752ea00-e217-11ee-beae-0a9599c8c7ed", "auto-delete": "no", "eksctl.cluster.k8s.io/v1alpha1/cluster-name": "my-eks-cluster", "EKS-Cluster-Name": "my-eks-cluster", "alpha.eksctl.io/cluster-oidc-enabled": "true", "aws:cloudformation:logical-id": "ControlPlane", "alpha.eksctl.io/eksctl-version": "0.173.0-dev+a7ee89342.2024-03-01T03:40:57Z", "Name": "eksctl-my-eks-cluster-cluster/ControlPlane" } }

Exemplo 2: listar todas as tags de um ARN do grupo de nós do Amazon EKS

O exemplo list-tags-for-resource a seguir lista todas as tags de um ARN do grupo de nós do Amazon EKS.

aws eks list-tags-for-resource \ --resource-arn arn:aws:eks:us-east-2:111122223333:nodegroup/my-eks-cluster/my-eks-managed-node-group/60c71ed2-2cfb-020f-a5f4-ad32477f198c

Saída:

{ "tags": { "aws:cloudformation:stack-name": "eksctl-my-eks-cluster-nodegroup-my-eks-managed-node-group", "aws:cloudformation:stack-id": "arn:aws:cloudformation:us-east-2:111122223333:stack/eksctl-my-eks-cluster-nodegroup-my-eks-managed-node-group/eaa20310-e219-11ee-b851-0ab9ad8228ff", "eksctl.cluster.k8s.io/v1alpha1/cluster-name": "my-eks-cluster", "EKS-Cluster-Name": "my-eks-cluster", "alpha.eksctl.io/nodegroup-type": "managed", "NodeGroup Name 1": "my-eks-managed-node-group", "k8s.io/cluster-autoscaler/enabled": "true", "nodegroup-role": "worker", "alpha.eksctl.io/cluster-name": "my-eks-cluster", "alpha.eksctl.io/nodegroup-name": "my-eks-managed-node-group", "karpenter.sh/discovery": "my-eks-cluster", "NodeGroup Name 2": "AmazonLinux-Linux-Managed-NG-v1-26-v1", "auto-delete": "no", "k8s.io/cluster-autoscaler/my-eks-cluster": "owned", "aws:cloudformation:logical-id": "ManagedNodeGroup", "alpha.eksctl.io/eksctl-version": "0.173.0-dev+a7ee89342.2024-03-01T03:40:57Z" } }

Exemplo 3: listar todas as tags de um ARN do perfil do Amazon EKS Fargate

O exemplo list-tags-for-resource a seguir lista todas as tags de um ARN do perfil do Amazon EKS Fargate.

aws eks list-tags-for-resource \ --resource-arn arn:aws:eks:us-east-2:111122223333:fargateprofile/my-eks-cluster/my-fargate-profile/d6c76780-e541-0725-c816-36754cab734b

Saída:

{ "tags": { "eks-fargate-profile-key-2": "value-2", "eks-fargate-profile-key-1": "value-1" } }

Exemplo 4: listar todas as tags de um ARN complementar do Amazon EKS

O exemplo list-tags-for-resource a seguir lista todas as tags de um ARN adicional do Amazon EKS.

aws eks list-tags-for-resource \ --resource-arn arn:aws:eks:us-east-2:111122223333:addon/my-eks-cluster/vpc-cni/0ec71efc-98dd-3203-60b0-4b939b2a5e5f

Saída:

{ "tags": { "eks-addon-key-2": "value-2", "eks-addon-key-1": "value-1" } }

Exemplo 5: listar todas as tags de um ARN provedor de identidade OIDC do Amazon EKS

O exemplo list-tags-for-resource a seguir lista todas as tags de um ARN do provedor de identidade OIDC do Amazon EKS.

aws eks list-tags-for-resource \ --resource-arn arn:aws:eks:us-east-2:111122223333:identityproviderconfig/my-eks-cluster/oidc/my-identity-provider/8ac76722-78e4-cec1-ed76-d49eea058622

Saída:

{ "tags": { "my-identity-provider": "test" } }

O código de exemplo a seguir mostra como usar list-update.

AWS CLI

Exemplo 1: listar as atualizações associadas a um nome de cluster do Amazon EKS

O exemplo list-updates a seguir lista todos os IDs de atualização para um nome de cluster do Amazon EKS.

aws eks list-updates \ --name my-eks-cluster

Saída:

{ "updateIds": [ "5f78d14e-c57b-4857-a3e4-cf664ae20949", "760e5a3f-adad-48c7-88d3-7ac283c09c26", "cd4ec863-bc55-47d5-a377-3971502f529b", "f12657ce-e869-4f17-b158-a82ab8b7d937" ] }

Exemplo 2: listar todos os IDs de atualização de um grupo de nós do Amazon EKS

O exemplo list-updates a seguir lista todos os IDs de atualização de um grupo de nós do Amazon EKS.

aws eks list-updates \ --name my-eks-cluster \ --nodegroup-name my-eks-managed-node-group

Saída:

{ "updateIds": [ "8c6c1bef-61fe-42ac-a242-89412387b8e7" ] }

Exemplo 3: listar todos os IDs de atualização em um complemento do Amazon EKS

O exemplo list-updates a seguir lista todos os IDs de atualização de um complemento do Amazon EKS.

aws eks list-updates \ --name my-eks-cluster \ --addon-name vpc-cni

Saída:

{ "updateIds": [ "9cdba8d4-79fb-3c83-afe8-00b508d33268" ] }
  • Para ver detalhes da API, consulte ListUpdate na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar list-updates.

AWS CLI

Para listar as atualizações de um cluster

Este comando de exemplo lista as atualizações atuais de um cluster chamado example na sua região padrão.

Comando:

aws eks list-updates --name example

Saída:

{ "updateIds": [ "10bddb13-a71b-425a-b0a6-71cd03e59161" ] }
  • Para ver detalhes da API, consulte ListUpdates na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar register-cluster.

AWS CLI

Exemplo 1: registrar um cluster do Kubernetes externo EKS_ANYWHERE no Amazon EKS

O exemplo register-cluster a seguir registra um cluster do Kubernetes externo EKS_ANYWHERE no Amazon EKS.

aws eks register-cluster \ --name my-eks-anywhere-cluster \ --connector-config 'roleArn=arn:aws:iam::111122223333:role/AmazonEKSConnectorAgentRole,provider=EKS_ANYWHERE'

Saída:

{ "cluster": { "name": "my-eks-anywhere-cluster", "arn": "arn:aws:eks:us-east-2:111122223333:cluster/my-eks-anywhere-cluster", "createdAt": "2024-04-12T12:38:37.561000-04:00", "status": "PENDING", "tags": {}, "connectorConfig": { "activationId": "xxxxxxxxACTIVATION_IDxxxxxxxx", "activationCode": "xxxxxxxxACTIVATION_CODExxxxxxxx", "activationExpiry": "2024-04-15T12:38:37.082000-04:00", "provider": "EKS_ANYWHERE", "roleArn": "arn:aws:iam::111122223333:role/AmazonEKSConnectorAgentRole" } } }

Para obter mais informações, consulte Conectar um cluster externo no Guia do usuário do Amazon EKS.

Exemplo 2: registrar qualquer cluster externo do Kubernetes no Amazon EKS

O exemplo register-cluster a seguir registra um cluster do Kubernetes externo EKS_ANYWHERE no Amazon EKS.

aws eks register-cluster \ --name my-eks-anywhere-cluster \ --connector-config 'roleArn=arn:aws:iam::111122223333:role/AmazonEKSConnectorAgentRole,provider=OTHER'

Saída:

{ "cluster": { "name": "my-onprem-k8s-cluster", "arn": "arn:aws:eks:us-east-2:111122223333:cluster/my-onprem-k8s-cluster", "createdAt": "2024-04-12T12:42:10.861000-04:00", "status": "PENDING", "tags": {}, "connectorConfig": { "activationId": "xxxxxxxxACTIVATION_IDxxxxxxxx", "activationCode": "xxxxxxxxACTIVATION_CODExxxxxxxx", "activationExpiry": "2024-04-15T12:42:10.339000-04:00", "provider": "OTHER", "roleArn": "arn:aws:iam::111122223333:role/AmazonEKSConnectorAgentRole" } } }

Para obter mais informações, consulte Conectar um cluster externo no Guia do usuário do Amazon EKS.

  • Para ver detalhes da API, consulte RegisterCluster na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar tag-resource.

AWS CLI

Exemplo 1: adicionar as tags especificadas a um cluster do Amazon EKS

O exemplo tag-resource a seguir adiciona as tags especificadas a um cluster do Amazon EKS.

aws eks tag-resource \ --resource-arn arn:aws:eks:us-east-2:111122223333:cluster/my-eks-cluster \ --tag 'my-eks-cluster-test-1=test-value-1,my-eks-cluster-dev-1=dev-value-2'

Este comando não produz saída.

Exemplo 2: adicionar as tags especificadas a um grupo de nós do Amazon EKS

O exemplo tag-resource a seguir adiciona as tags especificadas a um grupo de nós do Amazon EKS.

aws eks tag-resource \ --resource-arn arn:aws:eks:us-east-2:111122223333:nodegroup/my-eks-cluster/my-eks-managed-node-group/60c71ed2-2cfb-020f-a5f4-ad32477f198c \ --tag 'my-eks-nodegroup-test-1=test-value-1,my-eks-nodegroup-dev-1=dev-value-2'

Este comando não produz saída.

  • Para obter detalhes da API, consulte TagResource na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar untag-resource.

AWS CLI

Exemplo 1: excluir as tags especificadas de um cluster do Amazon EKS

O exemplo untag-resource a seguir exclui as tags especificadas de um cluster do Amazon EKS.

aws eks untag-resource \ --resource-arn arn:aws:eks:us-east-2:111122223333:cluster/my-eks-cluster \ --tag-keys "my-eks-cluster-test-1" "my-eks-cluster-dev-1"

Este comando não produz saída.

Exemplo 2: excluir as tags especificadas de um grupo de nós do Amazon EKS

O exemplo untag-resource a seguir exclui as tags especificadas de um grupo de nós do Amazon EKS.

aws eks untag-resource \ --resource-arn arn:aws:eks:us-east-2:111122223333:nodegroup/my-eks-cluster/my-eks-managed-node-group/60c71ed2-2cfb-020f-a5f4-ad32477f198c \ --tag-keys "my-eks-nodegroup-test-1" "my-eks-nodegroup-dev-1"

Este comando não produz saída.

  • Para obter detalhes sobre a API, consulte UntagResource na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar update-addon.

AWS CLI

Exemplo 1. Para atualizar um complemento do Amazon EKS com a função ARN da conta de serviço

O comando de exemplo update-addon a seguir atualiza um complemento do Amazon EKS com o ARN da função da conta de serviço.

aws eks update-addon \ --cluster-name my-eks-cluster \ --addon-name vpc-cni \ --service-account-role-arn arn:aws:iam::111122223333:role/eksctl-my-eks-cluster-addon-vpc-cni-Role1-YfakrqOC1UTm

Saída:

{ "update": { "id": "c00d2de2-c2e4-3d30-929e-46b8edec2ce4", "status": "InProgress", "type": "AddonUpdate", "params": [ { "type": "ServiceAccountRoleArn", "value": "arn:aws:iam::111122223333:role/eksctl-my-eks-cluster-addon-vpc-cni-Role1-YfakrqOC1UTm" } ], "updatedAt": "2024-04-12T16:04:55.614000-04:00", "errors": [] } }

Para obter mais informações, consulte Gerenciamento de complementos do Amazon EKS – Atualizar um complemento, no Guia do usuário do Amazon EKS.

Exemplo 2. Para atualizar um complemento do Amazon EKS com uma versão específica de complemento

O comando de exemplo update-addon a seguir atualiza um complemento do Amazon EKS com uma versão específica de complemento.

aws eks update-addon \ --cluster-name my-eks-cluster \ --addon-name vpc-cni \ --service-account-role-arn arn:aws:iam::111122223333:role/eksctl-my-eks-cluster-addon-vpc-cni-Role1-YfakrqOC1UTm \ --addon-version v1.16.4-eksbuild.2

Saída:

{ "update": { "id": "f58dc0b0-2b18-34bd-bc6a-e4abc0011f36", "status": "InProgress", "type": "AddonUpdate", "params": [ { "type": "AddonVersion", "value": "v1.16.4-eksbuild.2" }, { "type": "ServiceAccountRoleArn", "value": "arn:aws:iam::111122223333:role/eksctl-my-eks-cluster-addon-vpc-cni-Role1-YfakrqOC1UTm" } ], "createdAt": "2024-04-12T16:07:16.550000-04:00", "errors": [] } }

Para obter mais informações, consulte Gerenciamento de complementos do Amazon EKS – Atualizar um complemento, no Guia do usuário do Amazon EKS.

Exemplo 3. Para atualizar um complemento do Amazon EKS com valores de configuração personalizados e resolver detalhes de conflitos

O comando de exemplo update-addon a seguir atualiza um complemento do Amazon EKS com valores de configuração personalizados e resolve detalhes de conflitos.

aws eks update-addon \ --cluster-name my-eks-cluster \ --addon-name vpc-cni \ --service-account-role-arn arn:aws:iam::111122223333:role/eksctl-my-eks-cluster-addon-vpc-cni-Role1-YfakrqOC1UTm \ --addon-version v1.16.4-eksbuild.2 \ --configuration-values '{"resources": {"limits":{"cpu":"100m"}, "requests":{"cpu":"50m"}}}' \ --resolve-conflicts PRESERVE

Saída:

{ "update": { "id": "cd9f2173-a8d8-3004-a90f-032f14326520", "status": "InProgress", "type": "AddonUpdate", "params": [ { "type": "AddonVersion", "value": "v1.16.4-eksbuild.2" }, { "type": "ServiceAccountRoleArn", "value": "arn:aws:iam::111122223333:role/eksctl-my-eks-cluster-addon-vpc-cni-Role1-YfakrqOC1UTm" }, { "type": "ResolveConflicts", "value": "PRESERVE" }, { "type": "ConfigurationValues", "value": "{\"resources\": {\"limits\":{\"cpu\":\"100m\"}, \"requests\":{\"cpu\":\"50m\"}}}" } ], "createdAt": "2024-04-12T16:16:27.363000-04:00", "errors": [] } }

Para obter mais informações, consulte Gerenciamento de complementos do Amazon EKS – Atualizar um complemento, no Guia do usuário do Amazon EKS.

Exemplo 4. Para atualizar um complemento do Amazon EKS com um arquivo de valores de configuração JSON personalizado

O comando de exemplo update-addon a seguir atualiza um complemento do Amazon EKS com valores de configuração JSON personalizados e detalhes de resolução de conflitos.

aws eks update-addon \ --cluster-name my-eks-cluster \ --addon-name vpc-cni \ --service-account-role-arn arn:aws:iam::111122223333:role/eksctl-my-eks-cluster-addon-vpc-cni-Role1-YfakrqOC1UTm \ --addon-version v1.17.1-eksbuild.1 \ --configuration-values 'file://configuration-values.json' \ --resolve-conflicts PRESERVE

Conteúdo de configuration-values.json:

{ "resources": { "limits": { "cpu": "100m" }, "requests": { "cpu": "50m" } }, "env": { "AWS_VPC_K8S_CNI_LOGLEVEL": "ERROR" } }

Saída:

{ "update": { "id": "6881a437-174f-346b-9a63-6e91763507cc", "status": "InProgress", "type": "AddonUpdate", "params": [ { "type": "AddonVersion", "value": "v1.17.1-eksbuild.1" }, { "type": "ServiceAccountRoleArn", "value": "arn:aws:iam::111122223333:role/eksctl-my-eks-cluster-addon-vpc-cni-Role1-YfakrqOC1UTm" }, { "type": "ResolveConflicts", "value": "PRESERVE" }, { "type": "ConfigurationValues", "value": "{\n \"resources\": {\n \"limits\": {\n \"cpu\": \"100m\"\n },\n \"requests\": {\n \"cpu\": \"50m\"\n }\n },\n \"env\": {\n \"AWS_VPC_K8S_CNI_LOGLEVEL\": \"ERROR\"\n }\n}" } ], "createdAt": "2024-04-12T16:22:55.519000-04:00", "errors": [] } }

Para obter mais informações, consulte Gerenciamento de complementos do Amazon EKS – Atualizar um complemento, no Guia do usuário do Amazon EKS.

Exemplo 5. Para atualizar um complemento do Amazon EKS com o arquivo de valores de configuração YAML personalizados

O comando de exemplo update-addon a seguir atualiza um complemento do Amazon EKS com valores de configuração YAML personalizados e resolve detalhes de conflitos.

aws eks update-addon \ --cluster-name my-eks-cluster \ --addon-name vpc-cni \ --service-account-role-arn arn:aws:iam::111122223333:role/eksctl-my-eks-cluster-addon-vpc-cni-Role1-YfakrqOC1UTm \ --addon-version v1.18.0-eksbuild.1 \ --configuration-values 'file://configuration-values.yaml' \ --resolve-conflicts PRESERVE

Conteúdo de configuration-values.yaml:

resources: limits: cpu: '100m' requests: cpu: '50m' env: AWS_VPC_K8S_CNI_LOGLEVEL: 'DEBUG'

Saída:

{ "update": { "id": "a067a4c9-69d0-3769-ace9-d235c5b16701", "status": "InProgress", "type": "AddonUpdate", "params": [ { "type": "AddonVersion", "value": "v1.18.0-eksbuild.1" }, { "type": "ServiceAccountRoleArn", "value": "arn:aws:iam::111122223333:role/eksctl-my-eks-cluster-addon-vpc-cni-Role1-YfakrqOC1UTm" }, { "type": "ResolveConflicts", "value": "PRESERVE" }, { "type": "ConfigurationValues", "value": "resources:\n limits:\n cpu: '100m'\n requests:\n cpu: '50m'\nenv:\n AWS_VPC_K8S_CNI_LOGLEVEL: 'DEBUG'" } ], "createdAt": "2024-04-12T16:25:07.212000-04:00", "errors": [] } }

Para obter mais informações, consulte Gerenciamento de complementos do Amazon EKS – Atualizar um complemento, no Guia do usuário do Amazon EKS.

  • Para ver detalhes da API, consulte UpdateAddon na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar update-cluster-config.

AWS CLI

Para atualizar o acesso ao endpoint do cluster

Este comando de exemplo atualiza um cluster para desativar o acesso público ao endpoint e habilitar o acesso ao endpoint privado.

Comando:

aws eks update-cluster-config --name example \ --resources-vpc-config endpointPublicAccess=false,endpointPrivateAccess=true

Saída:

{ "update": { "id": "ec883c93-2e9e-407c-a22f-8f6fa6e67d4f", "status": "InProgress", "type": "EndpointAccessUpdate", "params": [ { "type": "EndpointPublicAccess", "value": "false" }, { "type": "EndpointPrivateAccess", "value": "true" } ], "createdAt": 1565806986.506, "errors": [] } }

Para habilitar o log para um cluster

Este comando de exemplo habilita todos os tipos de registro do ambiente de gerenciamento de cluster para um cluster chamado example.

Comando:

aws eks update-cluster-config --name example \ --logging '{"clusterLogging":[{"types":["api","audit","authenticator","controllerManager","scheduler"],"enabled":true}]}'

Saída:

{ "update": { "id": "7551c64b-1d27-4b1e-9f8e-c45f056eb6fd", "status": "InProgress", "type": "LoggingUpdate", "params": [ { "type": "ClusterLogging", "value": "{\"clusterLogging\":[{\"types\":[\"api\",\"audit\",\"authenticator\",\"controllerManager\",\"scheduler\"],\"enabled\":true}]}" } ], "createdAt": 1565807210.37, "errors": [] } }
  • Para ver detalhes da API, consulte UpdateClusterConfig na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar update-cluster-version.

AWS CLI

Para atualizar um cluster do Amazon EKS chamado `my-eks-cluster` para a versão especificada do Kubernetes

O exemplo update-cluster-version a seguir atualiza um cluster do Amazon EKS para a versão especificada do Kubernetes.

aws eks update-cluster-version \ --name my-eks-cluster \ --kubernetes-version 1.27

Saída:

{ "update": { "id": "e4091a28-ea14-48fd-a8c7-975aeb469e8a", "status": "InProgress", "type": "VersionUpdate", "params": [ { "type": "Version", "value": "1.27" }, { "type": "PlatformVersion", "value": "eks.16" } ], "createdAt": "2024-04-12T16:56:01.082000-04:00", "errors": [] } }

Para obter mais informações, consulte Atualizar uma versão do Kubernetes do cluster do Amazon EKS no Guia do usuário do Amazon EKS.

O código de exemplo a seguir mostra como usar update-kubeconfig.

AWS CLI

Exemplo 1: configura seu kubectl criando ou atualizando o kubeconfig para que você possa se conectar a um cluster do Amazon EKS chamado `my-eks-cluster`

O exemplo update-kubeconfig a seguir configura seu kubectl criando ou atualizando o kubeconfig para que você possa se conectar a um cluster do Amazon EKS chamado my-eks-cluster.

aws eks update-kubeconfig \ --name my-eks-cluster

Saída:

Updated context arn:aws:eks:us-east-2:111122223333:cluster/my-eks-cluster in /Users/xxx/.kube/config

Para obter mais informações, consulte Criar ou atualizar um arquivo kubeconfig para um cluster do Amazon EKS no Guia do usuário do Amazon EKS.

Exemplo 2: configura seu kubectl criando ou atualizando o kubeconfig (com a opção role-arn para assumir uma função de autenticação de cluster) para que você possa se conectar a um cluster do Amazon EKS chamado `my-eks-cluster`

O exemplo update-kubeconfig a seguir configura seu kubectl criando ou atualizando o kubeconfig (com a opção role-arn para assumir uma função de autenticação de cluster) para que você possa se conectar a um cluster do Amazon EKS chamado my-eks-cluster.

aws eks update-kubeconfig \ --name my-eks-cluster \ --role-arn arn:aws:iam::111122223333:role/eksctl-EKS-Linux-Cluster-v1-24-cluster-ServiceRole-j1k7AfTIQtnM

Saída:

Updated context arn:aws:eks:us-east-2:111122223333:cluster/my-eks-cluster in /Users/xxx/.kube/config

Para obter mais informações, consulte Criar ou atualizar um arquivo kubeconfig para um cluster do Amazon EKS no Guia do usuário do Amazon EKS.

Exemplo 3: configura seu kubectl criando ou atualizando o kubeconfig (com a opção role-arn para assumir uma função de autenticação de cluster junto com o alias de cluster e o user-alias personalizados) para que você possa se conectar a um cluster do Amazon EKS chamado `my-eks-cluster`

O exemplo update-kubeconfig a seguir configura seu kubectl criando ou atualizando o kubeconfig (com a opção role-arn para assumir uma função de autenticação de cluster junto com o alias de cluster e user-alias personalizados) para que você possa se conectar a um cluster do Amazon EKS chamado my-eks-cluster.

aws eks update-kubeconfig \ --name my-eks-cluster \ --role-arn arn:aws:iam::111122223333:role/eksctl-EKS-Linux-Cluster-v1-24-cluster-ServiceRole-j1k7AfTIQtnM \ --alias stage-eks-cluster \ --user-alias john

Saída:

Updated context stage-eks-cluster in /Users/dubaria/.kube/config

Para obter mais informações, consulte Criar ou atualizar um arquivo kubeconfig para um cluster do Amazon EKS no Guia do usuário do Amazon EKS.

Exemplo 4: imprime entradas do arquivo kubeconfig para análise e configura seu kubectl para que você possa se conectar a um cluster do Amazon EKS chamado `my-eks-cluster`

O exemplo update-kubeconfig a seguir configura seu kubectl criando ou atualizando o kubeconfig (com a opção role-arn para assumir uma função de autenticação de cluster junto com o alias de cluster e user-alias personalizados) para que você possa se conectar a um cluster do Amazon EKS chamado my-eks-cluster.

aws eks update-kubeconfig \ --name my-eks-cluster \ --role-arn arn:aws:iam::111122223333:role/eksctl-EKS-Linux-Cluster-v1-24-cluster-ServiceRole-j1k7AfTIQtnM \ --alias stage-eks-cluster \ --user-alias john \ --verbose

Saída:

Updated context stage-eks-cluster in /Users/dubaria/.kube/config Entries: context: cluster: arn:aws:eks:us-east-2:111122223333:cluster/my-eks-cluster user: john name: stage-eks-cluster name: john user: exec: apiVersion: client.authentication.k8s.io/v1beta1 args: - --region - us-east-2 - eks - get-token - --cluster-name - my-eks-cluster - --output - json - --role - arn:aws:iam::111122223333:role/eksctl-EKS-Linux-Cluster-v1-24-cluster-ServiceRole-j1k7AfTIQtnM command: aws cluster: certificate-authority-data: xxx_CA_DATA_xxx server: https://DALSJ343KE23J3RN45653DSKJTT647TYD.yl4.us-east-2.eks.amazonaws.com name: arn:aws:eks:us-east-2:111122223333:cluster/my-eks-cluster

Para obter mais informações, consulte Criar ou atualizar um arquivo kubeconfig para um cluster do Amazon EKS no Guia do usuário do Amazon EKS.

  • Para ver detalhes da API, consulte UpdateKubeconfig na Referência de comandos da AWS CLI.

O código de exemplo a seguir mostra como usar update-nodegroup-config.

AWS CLI

Exemplo 1: atualizar um grupo de nós gerenciados para adicionar novos rótulos e taint ao nó de processamento do EKS para um cluster do Amazon EKS

O exemplo update-nodegroup-config a seguir atualiza um grupo de nós gerenciados para adicionar novos rótulos e taint ao nó de processamento do EKS para um cluster do Amazon EKS.

aws eks update-nodegroup-config \ --cluster-name my-eks-cluster \ --nodegroup-name my-eks-nodegroup \ --labels 'addOrUpdateLabels={my-eks-nodegroup-label-1=value-1,my-eks-nodegroup-label-2=value-2}' \ --taints 'addOrUpdateTaints=[{key=taint-key-1,value=taint-value-1,effect=NO_EXECUTE}]'

Saída:

{ "update": { "id": "e66d21d3-bd8b-3ad1-a5aa-b196dc08c7c1", "status": "InProgress", "type": "ConfigUpdate", "params": [ { "type": "LabelsToAdd", "value": "{\"my-eks-nodegroup-label-2\":\"value-2\",\"my-eks-nodegroup-label-1\":\"value-1\"}" }, { "type": "TaintsToAdd", "value": "[{\"effect\":\"NO_EXECUTE\",\"value\":\"taint-value-1\",\"key\":\"taint-key-1\"}]" } ], "createdAt": "2024-04-08T12:05:19.161000-04:00", "errors": [] } }

Para obter mais informações, consulte Atualizar um grupo de nós gerenciados no Guia do usuário do Amazon EKS.

Exemplo 2: atualizar um grupo de nós gerenciados para remover rótulos e taints do nó de processamento do EKS de um cluster do Amazon EKS

O exemplo update-nodegroup-config a seguir atualiza um grupo de nós gerenciados para remover rótulos e taint do nó de processamento do EKS de um cluster do Amazon EKS.

aws eks update-nodegroup-config \ --cluster-name my-eks-cluster \ --nodegroup-name my-eks-nodegroup \ --labels 'removeLabels=my-eks-nodegroup-label-1, my-eks-nodegroup-label-2' \ --taints 'removeTaints=[{key=taint-key-1,value=taint-value-1,effect=NO_EXECUTE}]'

Saída:

{ "update": { "id": "67a08692-9e59-3ace-a916-13929f44cec3", "status": "InProgress", "type": "ConfigUpdate", "params": [ { "type": "LabelsToRemove", "value": "[\"my-eks-nodegroup-label-1\",\"my-eks-nodegroup-label-2\"]" }, { "type": "TaintsToRemove", "value": "[{\"effect\":\"NO_EXECUTE\",\"value\":\"taint-value-1\",\"key\":\"taint-key-1\"}]" } ], "createdAt": "2024-04-08T12:17:31.817000-04:00", "errors": [] } }

Para obter mais informações, consulte Atualizar um grupo de nós gerenciados no Guia do usuário do Amazon EKS.

Exemplo 3: atualizar um grupo de nós gerenciados para remover e adicionar rótulos e taints ao nó de processamento do EKS de um cluster do Amazon EKS

O exemplo update-nodegroup-config a seguir atualiza um grupo de nós gerenciados para remover e adicionar rótulos e taint do nó de processamento do EKS de um cluster do Amazon EKS.

aws eks update-nodegroup-config \ --cluster-name my-eks-cluster \ --nodegroup-name my-eks-nodegroup \ --labels 'addOrUpdateLabels={my-eks-nodegroup-new-label-1=new-value-1,my-eks-nodegroup-new-label-2=new-value-2},removeLabels=my-eks-nodegroup-label-1, my-eks-nodegroup-label-2' \ --taints 'addOrUpdateTaints=[{key=taint-new-key-1,value=taint-new-value-1,effect=PREFER_NO_SCHEDULE}],removeTaints=[{key=taint-key-1,value=taint-value-1,effect=NO_EXECUTE}]'

Saída:

{ "update": { "id": "4a9c8c45-6ac7-3115-be71-d6412a2339b7", "status": "InProgress", "type": "ConfigUpdate", "params": [ { "type": "LabelsToAdd", "value": "{\"my-eks-nodegroup-new-label-1\":\"new-value-1\",\"my-eks-nodegroup-new-label-2\":\"new-value-2\"}" }, { "type": "LabelsToRemove", "value": "[\"my-eks-nodegroup-label-1\",\"my-eks-nodegroup-label-2\"]" }, { "type": "TaintsToAdd", "value": "[{\"effect\":\"PREFER_NO_SCHEDULE\",\"value\":\"taint-new-value-1\",\"key\":\"taint-new-key-1\"}]" }, { "type": "TaintsToRemove", "value": "[{\"effect\":\"NO_EXECUTE\",\"value\":\"taint-value-1\",\"key\":\"taint-key-1\"}]" } ], "createdAt": "2024-04-08T12:30:55.486000-04:00", "errors": [] } }

Para obter mais informações, consulte Atualizar um grupo de nós gerenciados no Guia do usuário do Amazon EKS.

Exemplo 4: atualizar um grupo de nós gerenciados para atualizar scaling-config e update-config para o nó de processamento do EKS para um cluster do Amazon EKS

O exemplo update-nodegroup-config a seguir atualiza um grupo de nós gerenciados para atualizar scaling-config e update-config para o nó de processamento do EKS para um cluster do Amazon EKS.

aws eks update-nodegroup-config \ --cluster-name my-eks-cluster \ --nodegroup-name my-eks-nodegroup \ --scaling-config minSize=1,maxSize=5,desiredSize=2 \ --update-config maxUnavailable=2

Saída:

{ "update": { "id": "a977160f-59bf-3023-805d-c9826e460aea", "status": "InProgress", "type": "ConfigUpdate", "params": [ { "type": "MinSize", "value": "1" }, { "type": "MaxSize", "value": "5" }, { "type": "DesiredSize", "value": "2" }, { "type": "MaxUnavailable", "value": "2" } ], "createdAt": "2024-04-08T12:35:17.036000-04:00", "errors": [] } }

Para obter mais informações, consulte Atualizar um grupo de nós gerenciados no Guia do usuário do Amazon EKS.

O código de exemplo a seguir mostra como usar update-nodegroup-version.

AWS CLI

Exemplo 1: atualizar a versão do Kubernetes ou a versão da AMI de um grupo de nós gerenciados do Amazon EKS

O exemplo update-nodegroup-version a seguir atualiza a versão do Kubernetes ou a versão da AMI de um grupo de nós gerenciados do Amazon EKS para a versão mais recente disponível para seu cluster do Kubernetes.

aws eks update-nodegroup-version \ --cluster-name my-eks-cluster \ --nodegroup-name my-eks-nodegroup \ --no-force

Saída:

{ "update": { "id": "a94ebfc3-6bf8-307a-89e6-7dbaa36421f7", "status": "InProgress", "type": "VersionUpdate", "params": [ { "type": "Version", "value": "1.26" }, { "type": "ReleaseVersion", "value": "1.26.12-20240329" } ], "createdAt": "2024-04-08T13:16:00.724000-04:00", "errors": [] } }

Para obter mais informações, consulte Atualizar um grupo de nós gerenciados no Guia do usuário do Amazon EKS.

Exemplo 2: atualizar a versão do Kubernetes ou a versão da AMI de um grupo de nós gerenciados do Amazon EKS

O exemplo update-nodegroup-version a seguir atualiza a versão do Kubernetes ou a versão da AMI de um grupo de nós gerenciados do Amazon EKS para a versão de lançamento da AMI especificada.

aws eks update-nodegroup-version \ --cluster-name my-eks-cluster \ --nodegroup-name my-eks-nodegroup \ --kubernetes-version '1.26' \ --release-version '1.26.12-20240307' \ --no-force

Saída:

{ "update": { "id": "4db06fe1-088d-336b-bdcd-3fdb94995fb7", "status": "InProgress", "type": "VersionUpdate", "params": [ { "type": "Version", "value": "1.26" }, { "type": "ReleaseVersion", "value": "1.26.12-20240307" } ], "createdAt": "2024-04-08T13:13:58.595000-04:00", "errors": [] } }

Para obter mais informações, consulte Atualizar um grupo de nós gerenciados – <https://docs.aws.amazon.com/eks/latest/userguide/update-managed-node-group.html>` no Guia do usuário do Amazon EKS.