를 사용한 Amazon EKS 예제 AWS CLI - AWS SDK 코드 예제

AWS Doc SDK ExamplesWord AWS SDK 리포지토리에는 더 많은 GitHub 예제가 있습니다.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

를 사용한 Amazon EKS 예제 AWS CLI

다음 코드 예제에서는 Amazon EKS AWS Command Line Interface 와 함께를 사용하여 작업을 수행하고 일반적인 시나리오를 구현하는 방법을 보여줍니다.

작업은 대규모 프로그램에서 발췌한 코드이며 컨텍스트에 맞춰 실행해야 합니다. 작업은 개별 서비스 함수를 직접적으로 호출하는 방법을 보여주며 관련 시나리오의 컨텍스트에 맞는 작업을 볼 수 있습니다.

각 예제에는 컨텍스트에서 코드를 설정하고 실행하는 방법에 대한 지침을 찾을 수 있는 전체 소스 코드에 대한 링크가 포함되어 있습니다.

주제

작업

다음 코드 예시에서는 associate-encryption-config을 사용하는 방법을 보여 줍니다.

AWS CLI

암호화 구성을 기존 클러스터에 연결하려면

다음 associate-encryption-config 예제에서는 암호화가 아직 활성화되지 않은 기존 EKS 클러스터에서의 암호화를 활성화합니다.

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

출력:

{ "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": [] } }

자세한 내용은 Amazon EKS 사용 설명서기존 클러스터에서 보안 암호 암호화 활성화를 참조하세요.

다음 코드 예시에서는 associate-identity-provider-config을 사용하는 방법을 보여 줍니다.

AWS CLI

자격 증명 공급자를 Amazon EKS 클러스터에 연결

다음 associate-identity-provider-config 예제에서는 자격 증명 공급자를 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

출력:

{ "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" } }

자세한 내용은 Amazon OIDC 사용 설명서의 OpenID Connect 자격 증명 공급자에서 클러스터 사용자 인증 - Word 자격 증명 공급자 연결을 참조하세요. EKS

다음 코드 예시에서는 create-addon을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: 해당 EKS 클러스터 버전에 대한 기본 호환성 버전을 사용하여 Amazon EKS 추가 기능 생성

다음 create-addon 예제 명령은 해당 EKS 클러스터 버전에 대한 기본 호환성 버전이 있는 Amazon 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

출력:

{ "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": {} } }

자세한 내용은 Amazon EKS 사용 설명서의 Amazon Word 추가 기능 관리 - 추가 기능 생성을 참조하세요. EKS

예제 2: 특정 추가 기능 버전으로 Amazon EKS 추가 기능을 생성하려면

다음 create-addon 예제 명령은 특정 추가 기능 버전을 사용하여 Amazon 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 \ --addon-version v1.16.4-eksbuild.2

출력:

{ "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": {} } }

자세한 내용은 Amazon EKS 사용 설명서의 Amazon Word 추가 기능 관리 - 추가 기능 생성을 참조하세요. EKS

예제 3: 사용자 지정 구성 값을 사용하여 Amazon EKS 추가 기능을 생성하고 충돌 세부 정보를 해결하려면

다음 create-addon 예제 명령은 사용자 지정 구성 값을 사용하여 Amazon 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 \ --addon-version v1.16.4-eksbuild.2 \ --configuration-values '{"resources":{"limits":{"cpu":"100m"}}}' \ --resolve-conflicts OVERWRITE

출력:

{ "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\"}}}" } }

자세한 내용은 Amazon EKS 사용 설명서의 Amazon Word 추가 기능 관리 - 추가 기능 생성을 참조하세요. EKS

예제 4: 사용자 지정 EKS 구성 값 파일을 사용하여 Amazon JSON 추가 기능 생성

다음 create-addon 예제 명령은 사용자 지정 구성 값을 사용하여 Amazon 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 \ --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"}'

configuration-values.json의 콘텐츠:

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

출력:

{ "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}" } }

자세한 내용은 Amazon EKS 사용 설명서의 Amazon Word 추가 기능 관리 - 추가 기능 생성을 참조하세요. EKS

예제 5: 사용자 지정 EKS 구성 값 파일을 사용하여 Amazon YAML 추가 기능 생성

다음 create-addon 예제 명령은 사용자 지정 구성 값을 사용하여 Amazon 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 \ --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"}'

configuration-values.yaml의 콘텐츠:

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

출력:

{ "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'" } }

자세한 내용은 Amazon EKS 사용 설명서의 Amazon Word 추가 기능 관리 - 추가 기능 생성을 참조하세요. EKS

  • API 세부 정보는 AWS CLI 명령 참조CreateAddon를 참조하세요.

다음 코드 예시에서는 create-cluster을 사용하는 방법을 보여 줍니다.

AWS CLI

새로운 클러스터를 생성하는 방법

이 예시 명령은 기본 리전에 이름이 prod인 클러스터를 생성합니다.

명령:

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

출력:

{ "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": {} } }

프라이빗 엔드포인트 액세스 및 로깅이 활성화된 새 클러스터를 생성하는 방법

이 예시 명령은 퍼블릭 엔드포인트 액세스가 비활성화되고, 프라이빗 엔드포인트 액세스가 활성화되고, 모든 로깅 유형이 활성화된 상태로 기본 리전에 이름이 example인 클러스터를 생성합니다.

명령:

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}]}'

출력:

{ "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" } }
  • API 세부 정보는 AWS CLI 명령 참조CreateCluster를 참조하세요.

다음 코드 예시에서는 create-fargate-profile을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: 네임스페이스가 있는 선택기에 대한 EKS Fargate 프로파일 생성

다음 create-fargate-profile 예제에서는 네임스페이스가 있는 선택기에 대한 EKS Fargate 프로파일을 생성합니다.

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"}]'

출력:

{ "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": {} } }

자세한 내용은 Amazon EKS 사용 설명서AWS Fargate 프로필 - Fargate 프로필 생성을 참조하세요.

예제 2: 네임스페이스와 레이블이 있는 선택기에 대한 EKS Fargate 프로파일 생성

다음 create-fargate-profile 예제에서는 네임스페이스와 레이블이 있는 선택기에 대한 EKS Fargate 프로파일을 생성합니다.

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"}}]'

출력:

{ "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": {} } }

자세한 내용은 Amazon EKS 사용 설명서AWS Fargate 프로필 - Fargate 프로필 생성을 참조하세요.

예제 3: 포드를 시작할 서브넷의 EKS와 함께 네임스페이스와 레이블이 있는 선택기에 대한 IDs Fargate 프로파일 생성.

다음 create-fargate-profile 예제에서는 포드를 시작할 서브넷의 EKS와 함께 네임스페이스와 레이블이 있는 선택기에 대한 IDs Fargate 프로파일을 생성합니다.

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"]'

출력:

{ "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": {} } }

자세한 내용은 Amazon EKS 사용 설명서AWS Fargate 프로필 - Fargate 프로필 생성을 참조하세요.

예제 4: 여러 네임스페이스와 레이블이 있는 선택기에 대한 EKS Fargate 프로파일 생성과 포드를 시작할 서브넷의 IDs

다음 create-fargate-profile 예제에서는 포드를 시작할 서브넷의 EKS와 함께 여러 네임스페이스 및 레이블이 있는 선택기에 대한 IDs Fargate 프로파일을 생성합니다.

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"}'

출력:

{ "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" } } }

자세한 내용은 Amazon EKS 사용 설명서AWS Fargate 프로필 - Fargate 프로필 생성을 참조하세요.

예제 5: 포드를 시작할 서브넷의 EKS와 함께 네임스페이스 및 레이블의 와일드카드 선택기를 사용하여 IDs Fargate 프로파일 생성

다음 create-fargate-profile 예제에서는 포드를 시작할 서브넷의 EKS와 함께 여러 네임스페이스 및 레이블이 있는 선택기에 대한 IDs Fargate 프로파일을 생성합니다.

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"}'

출력:

{ "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" } } }

자세한 내용은 Amazon EKS 사용 설명서AWS Fargate 프로필 - Fargate 프로필 생성을 참조하세요.

다음 코드 예시에서는 create-nodegroup을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: Amazon EKS 클러스터에 대한 관리형 노드 그룹을 생성합니다.

다음 create-nodegroup 예제에서는 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

출력:

{ "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": {} } }

자세한 내용은 Amazon EKS 사용 설명서관리형 노드 그룹 생성을 참조하세요.

예제 2: 사용자 지정 인스턴스 유형 및 디스크 크기를 사용하여 Amazon EKS 클러스터에 대한 관리형 노드 그룹을 생성합니다.

다음 create-nodegroup 예제에서는 사용자 지정 인스턴스 유형 및 디스크 크기가 있는 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 \ --capacity-type ON_DEMAND \ --instance-types 'm5.large' \ --disk-size 50 \ --region us-east-2

출력:

{ "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": {} } }

자세한 내용은 Amazon EKS 사용 설명서관리형 노드 그룹 생성을 참조하세요.

예제 3: 사용자 지정 인스턴스 유형, 디스크 크기, ami 유형, 용량 유형, 업데이트 구성, 레이블, 테인트 및 태그를 사용하여 Amazon EKS 클러스터에 대한 관리형 노드 그룹을 생성합니다.

다음 create-nodegroup 예제에서는 사용자 지정 인스턴스 유형, 디스크 크기, ami 유형, 용량 유형, update-config, 레이블, 테인트 및 태그가 있는 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=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"}'

출력:

{ "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" } } }

자세한 내용은 Amazon EKS 사용 설명서관리형 노드 그룹 생성을 참조하세요.

  • API 세부 정보는 AWS CLI 명령 참조CreateNodegroup를 참조하세요.

다음 코드 예시에서는 delete-addon을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1. Amazon EKS 추가 기능을 삭제하지만 EKS 클러스터에서 추가 기능 소프트웨어를 보존하려면

다음 delete-addon 예제 명령은 Amazon EKS 추가 기능을 삭제하지만 EKS 클러스터에서 추가 기능 소프트웨어를 유지합니다.

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

출력:

{ "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": {} } }

자세한 내용은 Amazon EKS 추가 기능 관리 - Amazon Word에서 추가 기능 삭제를 참조하세요. EKS

예 2. Amazon EKS 추가 기능을 삭제하고 EKS 클러스터에서 추가 기능 소프트웨어도 삭제하려면

다음 delete-addon 예제 명령은 Amazon EKS 추가 기능을 삭제하고 EKS 클러스터에서 추가 기능 소프트웨어도 삭제합니다.

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

출력:

{ "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": {} } }

자세한 내용은 Amazon EKS 추가 기능 관리 - Amazon Word에서 추가 기능 삭제를 참조하세요. EKS

  • API 세부 정보는 AWS CLI 명령 참조DeleteAddon를 참조하세요.

다음 코드 예시에서는 delete-cluster을 사용하는 방법을 보여 줍니다.

AWS CLI

Amazon EKS 클러스터 제어 영역 삭제

다음 delete-cluster 예제에서는 Amazon EKS 클러스터 제어 영역을 삭제합니다.

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

출력:

{ "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" } } }

자세한 내용은 Amazon EKS 사용 설명서의 Amazon Word 클러스터 삭제를 참조하세요. EKS

  • API 세부 정보는 AWS CLI 명령 참조DeleteCluster를 참조하세요.

다음 코드 예시에서는 delete-fargate-profile을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: 네임스페이스가 있는 선택기에 대한 EKS Fargate 프로파일 생성

다음 delete-fargate-profile 예제에서는 네임스페이스가 있는 선택기에 대한 EKS Fargate 프로파일을 생성합니다.

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

출력:

{ "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": {} } }

자세한 내용은 Amazon EKS 사용 설명서AWS Fargate 프로필 - Fargate 삭제를 참조하세요.

다음 코드 예시에서는 delete-nodegroup을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: Amazon EKS 클러스터의 관리형 노드 그룹 삭제

다음 delete-nodegroup 예제에서는 Amazon EKS 클러스터의 관리형 노드 그룹을 삭제합니다.

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

출력:

{ "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" } } }
  • API 세부 정보는 AWS CLI 명령 참조DeleteNodegroup를 참조하세요.

다음 코드 예시에서는 deregister-cluster을 사용하는 방법을 보여 줍니다.

AWS CLI

연결된 클러스터를 등록 취소하여 Amazon EKS 컨트롤 플레인에서 제거하려면

다음 deregister-cluster 예제에서는 연결된 클러스터를 등록 취소하여 Amazon EKS 컨트롤 플레인에서 제거합니다.

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

출력:

{ "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" } } }

자세한 내용은 Amazon EKS 사용 설명서클러스터 등록 취소를 참조하세요.

  • API 세부 정보는 AWS CLI 명령 참조DeregisterCluster를 참조하세요.

다음 코드 예시에서는 describe-addon-configuration을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: Amazon vpc-cni AddOns를 생성하거나 업데이트할 때 사용할 수 있는 구성 옵션

다음 describe-addon-configuration 예제에서는 vpc-cni 추가 기능에 대한 추가 기능이 생성되거나 해당 버전으로 업데이트될 때 사용하는 사용 가능한 모든 구성 스키마를 반환합니다.

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

출력:

{ "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\"}" }

예제 2: Amazon coredns AddOns를 생성하거나 업데이트할 때 사용 가능한 구성 옵션

다음 describe-addon-configuration 예제에서는 코어 추가 기능에 대한 추가 기능이 생성되거나 업데이트될 때 사용하는 사용 가능한 모든 구성 스키마를 해당 버전으로 반환합니다.

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

출력:

{ "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\"}}}" }

자세한 내용은 Amazon EKS에서 Amazon Word 클러스터에 대한 kubeconfig 파일 생성 또는 업데이트를 참조하세요EKS.

다음 코드 예시에서는 describe-addon-versions을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: EKS 클러스터에 사용할 수 있는 모든 추가 기능 나열

다음 describe-addon-versions 예제에서는 사용 가능한 AWS 모든 추가 기능을 나열합니다.

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

출력:

-------------------------------------------------------------------------------------------------------------------- | 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 | +---------------------------------------------+------------------+-----------------------+-------------------------+

자세한 내용은 Amazon EKS 사용 설명서의 Amazon Word 추가 기능 관리 - 추가 기능 생성을 참조하세요. EKS

예제 2: EKS용으로 지원되는 지정된 Kubernetes 버전에 사용 가능한 모든 추가 기능 나열

다음 describe-addon-versions 예제에서는 EKS용으로 지원되는 지정된 Kubernetes 버전에 사용할 수 있는 모든 추가 기능을 나열합니다.

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

출력:

-------------------------------------------------------------------------------------------------------------------- | 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 | +---------------------------------------------+------------------+-----------------------+-------------------------+

자세한 내용은 Amazon EKS 사용 설명서의 Amazon Word 추가 기능 관리 - 추가 기능 생성을 참조하세요. EKS

예제 3: EKS용으로 지원되는 지정된 Kubernetes 버전에 대해 사용 가능한 모든 vpc-cni 추가 기능 버전 나열

다음 describe-addon-versions 예제에서는 EKS용으로 지원되는 지정된 Kubernetes 버전에 사용 가능한 모든 vpc-cni 추가 기능 버전을 나열합니다.

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

출력:

[ "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" ]

자세한 내용은 Amazon EKS 사용 설명서의 Amazon Word 추가 기능 관리 - 추가 기능 생성을 참조하세요. EKS

다음 코드 예시에서는 describe-addon을 사용하는 방법을 보여 줍니다.

AWS CLI

Amazon EKS 클러스터에서 실행 중인 EKS 추가 기능 설명

다음 describe-addon 예제에서는 Amazon EKS 클러스터에서 EKS 추가 기능을 적극적으로 실행합니다.

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

출력:

{ "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'" } }
  • API 세부 정보는 AWS CLI 명령 참조DescribeAddon를 참조하세요.

다음 코드 예시에서는 describe-cluster을 사용하는 방법을 보여 줍니다.

AWS CLI

Amazon EKS 클러스터에서 실행 중인 EKS 추가 기능 설명

다음 describe-cluster 예제에서는 Amazon EKS 클러스터에서 EKS 추가 기능을 적극적으로 실행합니다.

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

출력:

{ "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" } } }
  • API 세부 정보는 AWS CLI 명령 참조DescribeCluster를 참조하세요.

다음 코드 예시에서는 describe-fargate-profile을 사용하는 방법을 보여 줍니다.

AWS CLI

Fargate 프로필 설명

다음 describe-fargate-profile 예제에서는 Fargate 프로파일을 설명합니다.

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

출력:

{ "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" } } }

다음 코드 예시에서는 describe-identity-provider-config을 사용하는 방법을 보여 줍니다.

AWS CLI

Amazon EKS 클러스터와 연결된 자격 증명 공급자 구성 설명

다음 describe-identity-provider-config 예제에서는 Amazon EKS 클러스터와 연결된 자격 증명 공급자 구성을 설명합니다.

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

출력:

{ "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" } } }

자세한 내용은 Amazon EKS 사용 설명서 OpenID Connect 자격 증명 공급자에서 클러스터 사용자 인증을 참조하세요.

다음 코드 예시에서는 describe-nodegroup을 사용하는 방법을 보여 줍니다.

AWS CLI

Amazon EKS 클러스터의 관리형 노드 그룹 설명

다음 describe-nodegroup 예제에서는 Amazon EKS 클러스터의 관리형 노드 그룹에 대해 설명합니다.

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

출력:

{ "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": {} } }
  • API 세부 정보는 AWS CLI 명령 참조DescribeNodegroup를 참조하세요.

다음 코드 예시에서는 describe-update을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: 클러스터에 대한 업데이트를 설명하는 방법

다음 describe-update 예제에서는 라는 클러스터에 대한 업데이트를 설명합니다.

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

출력:

{ "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": [] } }

자세한 내용은 Amazon EKS 사용 설명서의 Amazon Word 클러스터 Kubernetes 버전 업데이트를 참조하세요. EKS

예제 2: 클러스터에 대한 업데이트를 설명하는 방법

다음 describe-update 예제에서는 라는 클러스터에 대한 업데이트를 설명합니다.

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

출력:

{ "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": [] } }

자세한 내용은 Amazon EKS 사용 설명서의 Amazon Word 클러스터 Kubernetes 버전 업데이트를 참조하세요. EKS

예제 3: 클러스터에 대한 업데이트를 설명하는 방법

다음 describe-update 예제에서는 라는 클러스터에 대한 업데이트를 설명합니다.

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

출력:

{ "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": [] } }

자세한 내용은 Amazon EKS 사용 설명서의 Amazon Word 클러스터 Kubernetes 버전 업데이트를 참조하세요. EKS

  • API 세부 정보는 AWS CLI 명령 참조DescribeUpdate를 참조하세요.

다음 코드 예시에서는 disassociate-identity-provider-config을 사용하는 방법을 보여 줍니다.

AWS CLI

자격 증명 공급자를 Amazon EKS 클러스터에 연결 해제

다음 disassociate-identity-provider-config 예제에서는 자격 증명 공급자를 Amazon EKS 클러스터에 연결 해제합니다.

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

출력:

{ "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": [] } }

자세한 내용은 Amazon Word EKS 사용 설명서 OpenID Connect 자격 증명 공급자에서 클러스터 사용자 인증 - 클러스터에서 OIDC 자격 증명 공급자 연결 해제를 참조하세요.

다음 코드 예시에서는 get-token을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: 'my-eks-cluster'라는 Amazon EKS 클러스터에 대한 인증 토큰 가져오기

다음 get-token 예제에서는 my-eks-cluster라는 Amazon EKS 클러스터에 대한 인증 토큰을 가져옵니다.

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

출력:

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

예제 2: 토큰에 서명할 때이 ARN my-eks-cluster'라는 Amazon EKS 클러스터의 인증 토큰을 가져옵니다.

다음 get-token 예제에서는 토큰에 서명할 때 자격 증명에 대해이 ARN my-eks-cluster라는 Amazon EKS 클러스터의 인증 토큰을 가져옵니다.

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

출력:

{ "kind": "ExecCredential", "apiVersion": "client.authentication.k8s.io/v1beta1", "spec": {}, "status": { "expirationTimestamp": "2024-04-11T21:05:26Z", "token": "k8s-aws-v1.EXAMPLE_TOKEN_DATA_STRING..." } }
  • API 세부 정보는 AWS CLI 명령 참조GetToken를 참조하세요.

다음 코드 예시에서는 list-addons을 사용하는 방법을 보여 줍니다.

AWS CLI

'my-eks-cluster'라는 Amazon EKS 클러스터에 설치된 모든 추가 기능 나열

다음 list-addons 예제에서는 Amazon EKS 클러스터에 설치된 모든 추가 기능인 my-eks-cluster를 나열합니다.

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

출력:

{ "addons": [ "kube-proxy", "vpc-cni" ] }
  • API 세부 정보는 AWS CLI 명령 참조ListAddons를 참조하세요.

다음 코드 예시에서는 list-clusters을 사용하는 방법을 보여 줍니다.

AWS CLI

'my-eks-cluster'라는 Amazon EKS 클러스터에 설치된 모든 추가 기능을 나열하려면

다음 list-clusters 예제에서는 Amazon EKS 클러스터에 설치된 모든 추가 기능 my-eks-cluster를 나열합니다.

aws eks list-clusters

출력:

{ "clusters": [ "prod", "qa", "stage", "my-eks-cluster" ] }
  • API 세부 정보는 AWS CLI 명령 참조ListClusters를 참조하세요.

다음 코드 예시에서는 list-fargate-profiles을 사용하는 방법을 보여 줍니다.

AWS CLI

'my-eks-cluster'라는 Amazon EKS 클러스터의 모든 fargate 프로파일을 나열하려면

다음 list-fargate-profiles 예제에서는 Amazon EKS 클러스터의 모든 fargate 프로파일을 my-eks-cluster로 나열합니다.

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

출력:

{ "fargateProfileNames": [ "my-fargate-profile" ] }

다음 코드 예시에서는 list-identity-provider-configs을 사용하는 방법을 보여 줍니다.

AWS CLI

Amazon EKS 클러스터에 연결된 자격 증명 공급자 나열

다음 list-identity-provider-configs 예제에서는 Amazon EKS 클러스터와 연결된 자격 증명 공급자를 나열합니다.

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

출력:

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

자세한 내용은 Amazon EKS 사용 설명서 OpenID Connect 자격 증명 공급자에서 클러스터 사용자 인증을 참조하세요.

다음 코드 예시에서는 list-nodegroups을 사용하는 방법을 보여 줍니다.

AWS CLI

Amazon EKS 클러스터의 모든 노드 그룹 나열

다음 list-nodegroups 예제에서는 Amazon EKS 클러스터의 모든 노드 그룹을 나열합니다.

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

출력:

{ "nodegroups": [ "my-eks-managed-node-group", "my-eks-nodegroup" ] }
  • API 세부 정보는 AWS CLI 명령 참조ListNodegroups를 참조하세요.

다음 코드 예시에서는 list-tags-for-resource을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: Amazon EKS 클러스터 ARN의 모든 태그를 나열하려면

다음 list-tags-for-resource 예제에서는 Amazon EKS 클러스터 ARN의 모든 태그를 나열합니다.

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

출력:

{ "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" } }

예제 2: Amazon EKS 노드 그룹 ARN의 모든 태그를 나열하려면

다음 list-tags-for-resource 예제에서는 Amazon EKS Node 그룹 ARN의 모든 태그를 나열합니다.

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

출력:

{ "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" } }

예제 3: Amazon EKS Fargate 프로필 ARNe의 모든 태그를 나열하려면

다음 list-tags-for-resource 예제에서는 Amazon EKS Fargate 프로필 ARN의 모든 태그를 나열합니다.

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

출력:

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

예제 4: Amazon EKS 추가 기능 ARN의 모든 태그를 나열하려면

다음 list-tags-for-resource 예제에서는 Amazon EKS 추가 기능 ARN의 모든 태그를 나열합니다.

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

출력:

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

예제 5: Amazon OIDC EKS 자격 증명 공급자 ARN의 모든 태그를 나열하려면

다음 list-tags-for-resource 예제에서는 Amazon EKS 자격 증명 공급자 OIDC의 모든 태그를 나열합니다ARN.

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

출력:

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

다음 코드 예시에서는 list-update을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: Amazon EKS 클러스터 이름과 연결된 업데이트를 나열하려면

다음 list-updates 예제에서는 Amazon IDs 클러스터 이름에 대한 모든 업데이트 EKS를 나열합니다.

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

출력:

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

예제 2: Amazon IDs 노드 그룹에 대한 모든 업데이트 EKS를 나열하려면

다음 list-updates 예제에서는 Amazon IDs Node 그룹에 대한 모든 업데이트 EKS를 나열합니다.

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

출력:

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

예제 3: Amazon IDs 추가 기능에서 모든 업데이트 EKS를 나열하려면

다음 list-updates 예제에서는 Amazon IDs 추가 기능에 대한 모든 업데이트 EKS를 나열합니다.

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

출력:

{ "updateIds": [ "9cdba8d4-79fb-3c83-afe8-00b508d33268" ] }
  • API 세부 정보는 AWS CLI 명령 참조ListUpdate를 참조하세요.

다음 코드 예시에서는 list-updates을 사용하는 방법을 보여 줍니다.

AWS CLI

클러스터에 대한 업데이트를 나열하려면

이 예제 명령은 기본 리전example에 이름이 지정된 클러스터의 현재 업데이트를 나열합니다.

명령:

aws eks list-updates --name example

출력:

{ "updateIds": [ "10bddb13-a71b-425a-b0a6-71cd03e59161" ] }
  • API 세부 정보는 AWS CLI 명령 참조ListUpdates를 참조하세요.

다음 코드 예시에서는 register-cluster을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: Amazon EKS에 외부 Word_ANYWHERE Kubernetes 클러스터 등록 EKS

다음 register-cluster 예제에서는 외부 EKS_ANYWHERE Kubernetes 클러스터를 Amazon EKS에 등록합니다.

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

출력:

{ "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" } } }

자세한 내용은 Amazon EKS 사용 설명서외부 클러스터 연결을 참조하세요.

예제 2: Amazon EKS에 외부 Kubernetes 클러스터 등록

다음 register-cluster 예제에서는 외부 EKS_ANYWHERE Kubernetes 클러스터를 Amazon EKS에 등록합니다.

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

출력:

{ "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" } } }

자세한 내용은 Amazon EKS 사용 설명서외부 클러스터 연결을 참조하세요.

  • API 세부 정보는 AWS CLI 명령 참조RegisterCluster를 참조하세요.

다음 코드 예시에서는 tag-resource을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: Amazon EKS 클러스터에 지정된 태그를 추가하려면

다음 tag-resource 예제에서는 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'

이 명령은 출력을 생성하지 않습니다.

예제 2: Amazon EKS 노드 그룹에 지정된 태그를 추가하려면

다음 tag-resource 예제에서는 지정된 태그를 Amazon EKS Node 그룹에 추가합니다.

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'

이 명령은 출력을 생성하지 않습니다.

  • API 세부 정보는 AWS CLI 명령 참조TagResource를 참조하세요.

다음 코드 예시에서는 untag-resource을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: Amazon EKS 클러스터에서 지정된 태그를 삭제하는 방법

다음 untag-resource 예제에서는 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"

이 명령은 출력을 생성하지 않습니다.

예제 2: Amazon EKS 노드 그룹에서 지정된 태그를 삭제하는 방법

다음 untag-resource 예제에서는 Amazon EKS Node 그룹에서 지정된 태그를 삭제합니다.

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"

이 명령은 출력을 생성하지 않습니다.

  • API 세부 정보는 AWS CLI 명령 참조UntagResource를 참조하세요.

다음 코드 예시에서는 update-addon을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1. 서비스 계정 역할 EKS로 Amazon ARN 추가 기능을 업데이트하려면

다음 update-addon 예제 명령은 서비스 계정 역할 EKS로 Amazon ARN 추가 기능을 업데이트합니다.

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

출력:

{ "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": [] } }

자세한 내용은 Amazon EKS 사용 설명서의 Amazon Word 추가 기능 관리 - 추가 기능 업데이트를 참조하세요. EKS

예 2. 특정 추가 기능 버전으로 Amazon EKS 추가 기능을 업데이트하려면

다음 update-addon 예제 명령은 특정 추가 기능 버전으로 Amazon EKS 추가 기능을 업데이트합니다.

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

출력:

{ "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": [] } }

자세한 내용은 Amazon EKS 사용 설명서의 Amazon Word 추가 기능 관리 - 추가 기능 업데이트를 참조하세요. EKS

예제 3. 사용자 지정 구성 값으로 Amazon EKS 추가 기능을 업데이트하고 충돌 세부 정보를 해결하려면

다음 update-addon 예제 명령은 Amazon EKS 추가 기능을 사용자 지정 구성 값으로 업데이트하고 충돌 세부 정보를 해결합니다.

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

출력:

{ "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": [] } }

자세한 내용은 Amazon EKS 사용 설명서의 Amazon Word 추가 기능 관리 - 추가 기능 업데이트를 참조하세요. EKS

예제 4. 사용자 지정 EKS 구성 값 파일로 Amazon JSON 추가 기능을 업데이트하려면

다음 update-addon 예제 명령은 Amazon EKS 추가 기능을 사용자 지정 JSON 구성 값으로 업데이트하고 충돌 세부 정보를 해결합니다.

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

configuration-values.json의 콘텐츠:

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

출력:

{ "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": [] } }

자세한 내용은 Amazon EKS 사용 설명서의 Amazon Word 추가 기능 관리 - 추가 기능 업데이트를 참조하세요. EKS

예제 5. 사용자 지정 EKS 구성 값 파일로 Amazon YAML 추가 기능을 업데이트하려면

다음 update-addon 예제 명령은 Amazon EKS 추가 기능을 사용자 지정 YAML 구성 값으로 업데이트하고 충돌 세부 정보를 해결합니다.

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

configuration-values.yaml의 콘텐츠:

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

출력:

{ "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": [] } }

자세한 내용은 Amazon EKS 사용 설명서의 Amazon Word 추가 기능 관리 - 추가 기능 업데이트를 참조하세요. EKS

  • API 세부 정보는 AWS CLI 명령 참조UpdateAddon를 참조하세요.

다음 코드 예시에서는 update-cluster-config을 사용하는 방법을 보여 줍니다.

AWS CLI

클러스터 엔드포인트 액세스를 업데이트하려면

이 예제 명령은 클러스터를 업데이트하여 엔드포인트 퍼블릭 액세스를 비활성화하고 프라이빗 엔드포인트 액세스를 활성화합니다.

명령:

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

출력:

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

클러스터에 대한 로깅을 활성화하려면

이 예제 명령은 라는 클러스터에 대한 모든 클러스터 제어 영역 로깅 유형을 활성화합니다example.

명령:

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

출력:

{ "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": [] } }

다음 코드 예시에서는 update-cluster-version을 사용하는 방법을 보여 줍니다.

AWS CLI

'my-eks-cluster'라는 Amazon EKS 클러스터를 지정된 Kubernetes 버전으로 업데이트하려면

다음 update-cluster-version 예제에서는 Amazon EKS 클러스터를 지정된 Kubernetes 버전으로 업데이트합니다.

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

출력:

{ "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": [] } }

자세한 내용은 Amazon EKS 사용 설명서의 Amazon Word 클러스터 Kubernetes 버전 업데이트를 참조하세요. EKS

다음 코드 예시에서는 update-kubeconfig을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: 'my-eks-cluster'라는 Amazon EKS 클러스터에 연결할 수 있도록 kubeconfig를 생성하거나 업데이트하여 kubectl을 구성합니다.

다음 update-kubeconfig 예제에서는 kubeconfig를 생성하거나 업데이트하여 my-eks-cluster라는 Amazon EKS 클러스터에 연결할 수 있도록 kubectl을 구성합니다.

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

출력:

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

자세한 내용은 Amazon EKS 사용 설명서의 Amazon Word 클러스터에 대한 kubeconfig 파일 생성 또는 업데이트를 참조하세요. EKS

예제 2: 'my-eks-cluster'라는 Amazon EKS 클러스터에 연결할 수 있도록 kubeconfig(클러스터 인증을 위한 역할을 수임하는 role-arn 옵션 포함)를 생성하거나 업데이트하여 kubectl을 구성합니다.

다음 update-kubeconfig 예제에서는 kubeconfig(클러스터 인증을 위한 역할을 수임하는 role-arn 옵션 포함)를 생성하거나 업데이트하여 kubectl을 구성하여 my-eks-cluster라는 Amazon EKS 클러스터에 연결할 수 있도록 합니다.

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

출력:

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

자세한 내용은 Amazon EKS 사용 설명서의 Amazon Word 클러스터에 대한 kubeconfig 파일 생성 또는 업데이트를 참조하세요. EKS

예제 3: 'my-eks-cluster'라는 Amazon EKS 클러스터에 연결할 수 있도록 kubeconfig(사용자 지정 클러스터 별칭 및 사용자 별칭과 함께 클러스터 인증을 위한 역할을 수임하는 role-arn 옵션 포함)를 생성하거나 업데이트하여 kubectl을 구성합니다.

다음 update-kubeconfig 예제에서는 kubeconfig(사용자 지정 클러스터 별칭 및 사용자 별칭과 함께 클러스터 인증을 위한 역할을 수임하는 role-arn 옵션 포함)를 생성하거나 업데이트하여 kubectl을 구성하여 my-eks-cluster라는 Amazon EKS 클러스터에 연결할 수 있습니다.

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

출력:

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

자세한 내용은 Amazon EKS 사용 설명서의 Amazon Word 클러스터에 대한 kubeconfig 파일 생성 또는 업데이트를 참조하세요. EKS

예제 4: 검토할 kubeconfig 파일 항목 인쇄 및 'my-eks-cluster'라는 Amazon EKS 클러스터에 연결할 수 있도록 kubectl 구성

다음 update-kubeconfig 예제에서는 kubeconfig(사용자 지정 클러스터 별칭 및 사용자 별칭과 함께 클러스터 인증을 위한 역할을 수임하는 role-arn 옵션 포함)를 생성하거나 업데이트하여 kubectl을 구성하여 my-eks-cluster라는 Amazon EKS 클러스터에 연결할 수 있습니다.

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

출력:

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

자세한 내용은 Amazon EKS 사용 설명서의 Amazon Word 클러스터에 대한 kubeconfig 파일 생성 또는 업데이트를 참조하세요. EKS

  • API 세부 정보는 AWS CLI 명령 참조UpdateKubeconfig를 참조하세요.

다음 코드 예시에서는 update-nodegroup-config을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: Amazon EKS EKS 클러스터의 Word 작업자 노드에 새 레이블과 taint을 추가하도록 관리형 노드 그룹 업데이트

다음 update-nodegroup-config 예제에서는 관리형 노드 그룹을 업데이트하여 Amazon EKS EKS 클러스터의 Word 작업자 노드에 새 레이블과 테인트를 추가합니다.

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}]'

출력:

{ "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": [] } }

자세한 내용은 Amazon EKS 사용 설명서관리형 노드 그룹 업데이트를 참조하세요.

예 2: Amazon Word 클러스터의 EKS 작업자 노드에 대한 레이블 및 테인트를 제거하도록 관리EKS 노드 그룹 업데이트

다음 update-nodegroup-config 예제에서는 관리형 노드 그룹을 업데이트하여 Amazon EKS EKS 클러스터의 Word 작업자 노드에 대한 레이블과 테인트를 제거합니다.

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}]'

출력:

{ "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": [] } }

자세한 내용은 Amazon EKS 사용 설명서관리형 노드 그룹 업데이트를 참조하세요.

예제 3: Amazon Word 클러스터의 EKS 작업자 노드에 대한 레이블 및 taint을 제거하고 추가하도록 관리EKS 노드 그룹 업데이트

다음 update-nodegroup-config 예제에서는 관리형 노드 그룹을 업데이트하여 Amazon EKS EKS 클러스터의 Word 작업자 노드에 대한 레이블과 테인트를 제거하고 추가합니다.

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}]'

출력:

{ "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": [] } }

자세한 내용은 Amazon EKS 사용 설명서관리형 노드 그룹 업데이트를 참조하세요.

예제 4: 관리형 노드 그룹을 업데이트하여 Amazon EKS EKS 클러스터의 Word 작업자 노드에 대한 Scaling-config 및 update-config를 업데이트합니다.

다음 update-nodegroup-config 예제에서는 관리형 노드 그룹을 업데이트하여 Amazon EKS EKS 클러스터의 Word 작업자 노드에 대한 Scaling-config 및 update-config를 업데이트합니다.

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

출력:

{ "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": [] } }

자세한 내용은 Amazon EKS 사용 설명서관리형 노드 그룹 업데이트를 참조하세요.

다음 코드 예시에서는 update-nodegroup-version을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: Amazon AMI 관리형 노드 그룹의 Kubernetes 버전 또는 EKS 버전 업데이트

다음 update-nodegroup-version 예제에서는 Amazon AMI 관리형 노드 그룹의 Kubernetes 버전 또는 EKS 버전을 Kubernetes 클러스터에 사용할 수 있는 최신 버전으로 업데이트합니다.

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

출력:

{ "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": [] } }

자세한 내용은 Amazon EKS 사용 설명서관리형 노드 그룹 업데이트를 참조하세요.

예제 2: Amazon AMI 관리형 노드 그룹의 Kubernetes 버전 또는 EKS 버전 업데이트

다음 update-nodegroup-version 예제에서는 Amazon AMI 관리형 노드 그룹의 Kubernetes 버전 또는 EKS 버전을 지정된 AMI 릴리스 버전으로 업데이트합니다.

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

출력:

{ "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": [] } }

자세한 내용은 Amazon EKS 사용 설명서의 관리형 노드 그룹 업데이트 - <https://docs.aws.amazon.com/eks/latest/userguide/updateWord-managed-node-group.html>`을 참조하세요.