이 문서는 AWS CLI의 버전 1에만 해당합니다. AWS CLI의 버전 2와 관련된 문서는 버전 2 사용 설명서를 참조하세요.
AWS CLI를 사용한 Amazon EKS 예시
다음 코드 예시에서는 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 사용 설명서의 기존 클러스터에서 보안 암호 암호화 활성화 섹션을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 AssociateEncryptionConfig
섹션을 참조하세요.
-
다음 코드 예시에서는 associate-identity-provider-config
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
ID 제공업체를 Amazon EKS 클러스터에 연결하려면
다음
associate-identity-provider-config
예시에서는 ID 제공업체를 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}
' \ --tagsenv=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 EKS 사용 설명서의 OpenID Connect ID 제공업체에서 클러스터에 대한 사용자 인증 - OIDC ID 제공업체 연결 섹션을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 AssociateIdentityProviderConfig
섹션을 참조하세요.
-
다음 코드 예시에서는 create-addon
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예시 1: 각 EKS 클러스터 버전에 대한 기본 호환성 버전으로 Amazon EKS 추가 기능을 만들려면
다음
create-addon
예시 명령은 각 EKS 클러스터 버전에 대한 기본 호환 버전으로 Amazon EKS 추가 기능을 만듭니다.aws eks create-addon \ --cluster-name
my-eks-cluster
\ --addon-namemy-eks-addon
\ --service-account-role-arnarn: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 EKS 추가 기능 관리 - 추가 기능 생성 섹션을 참조하세요.
예시 2: 특정 추가 기능 버전으로 Amazon EKS 추가 기능을 만들려면
다음
create-addon
예시 명령은 특정 추가 기능 버전으로 Amazon EKS 추가 기능을 만듭니다.aws eks create-addon \ --cluster-name
my-eks-cluster
\ --addon-namemy-eks-addon
\ --service-account-role-arnarn:aws:iam::111122223333:role/role-name
\ --addon-versionv1.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 EKS 추가 기능 관리 - 추가 기능 생성 섹션을 참조하세요.
예시 3: 사용자 지정 구성 값으로 Amazon EKS 추가 기능을 만들고 충돌 세부 정보를 해결하려면
다음
create-addon
예시 명령은 사용자 지정 구성 값으로 Amazon EKS 추가 기능을 만들고 세부 정보 충돌을 해결합니다.aws eks create-addon \ --cluster-name
my-eks-cluster
\ --addon-namemy-eks-addon
\ --service-account-role-arnarn:aws:iam::111122223333:role/role-name
\ --addon-versionv1.16.4-eksbuild.2
\ --configuration-values '{"resources":{"limits":{"cpu":"100m"}}}
' \ --resolve-conflictsOVERWRITE
출력:
{ "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 EKS 추가 기능 관리 - 추가 기능 생성 섹션을 참조하세요.
예시 4: 사용자 지정 JSON 구성 값 파일을 사용하여 Amazon EKS 추가 기능을 만들려면
다음
create-addon
예시 명령은 사용자 지정 구성 값으로 Amazon EKS 추가 기능을 만들고 세부 정보 충돌을 해결합니다.aws eks create-addon \ --cluster-name
my-eks-cluster
\ --addon-namemy-eks-addon
\ --service-account-role-arnarn:aws:iam::111122223333:role/role-name
\ --addon-versionv1.16.4-eksbuild.2
\ --configuration-values 'file://configuration-values.json
' \ --resolve-conflictsOVERWRITE
\ --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 EKS 추가 기능 관리 - 추가 기능 생성 섹션을 참조하세요.
예시 5: 사용자 지정 YAML 구성 값 파일을 사용하여 Amazon EKS 추가 기능을 만들려면
다음
create-addon
예시 명령은 사용자 지정 구성 값으로 Amazon EKS 추가 기능을 만들고 세부 정보 충돌을 해결합니다.aws eks create-addon \ --cluster-name
my-eks-cluster
\ --addon-namemy-eks-addon
\ --service-account-role-arnarn:aws:iam::111122223333:role/role-name
\ --addon-versionv1.16.4-eksbuild.2
\ --configuration-values 'file://configuration-values.yaml
' \ --resolve-conflictsOVERWRITE
\ --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 EKS 추가 기능 관리 - 추가 기능 생성 섹션을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 CreateAddon
섹션을 참조하세요.
-
다음 코드 예시에서는 create-cluster
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
새로운 클러스터를 생성하는 방법
이 예시 명령은 기본 리전에 이름이
prod
인 클러스터를 생성합니다.명령:
aws eks create-cluster --name
prod
\ --role-arnarn:aws:iam::012345678910:role/eks-service-role-AWSServiceRoleForAmazonEKS-J7ONKE3BQ4PI
\ --resources-vpc-configsubnetIds=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-version1.12
\ --role-arnarn:aws:iam::012345678910:role/example-cluster-ServiceRole-1XWBQWYSFRE2Q
\ --resources-vpc-configsubnetIds=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-arnarn:aws:iam::111122223333:role/role-name
\ --fargate-profile-namemy-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-arnarn:aws:iam::111122223333:role/role-name
\ --fargate-profile-namemy-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: 포드를 시작할 서브넷 ID와 함께 네임스페이스와 레이블이 있는 선택기의 EKS Fargate 프로파일을 만들려면
다음
create-fargate-profile
예시에서는 네임스페이스와 레이블, 포드를 실행할 서브넷의 ID가 있는 선택기에 대한 EKS Fargate 프로파일을 만듭니다.aws eks create-fargate-profile \ --cluster-name
my-eks-cluster
\ --pod-execution-role-arnarn:aws:iam::111122223333:role/role-name
\ --fargate-profile-namemy-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: 포드를 시작할 서브넷의 ID와 함께 여러 네임스페이스 및 레이블이 있는 선택기의 EKS Fargate 프로파일을 만들려면
다음
create-fargate-profile
예시에서는 포드를 실행할 서브넷의 ID와 함께 여러 네임스페이스 및 레이블이 있는 선택기에 대한 EKS Fargate 프로파일을 만듭니다.aws eks create-fargate-profile \ --cluster-name
my-eks-cluster
\ --pod-execution-role-arnarn:aws:iam::111122223333:role/role-name
\ --fargate-profile-namemy-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: 포드를 시작할 서브넷의 ID와 함께 네임스페이스 및 레이블의 와일드카드 선택기를 사용하여 EKS Fargate 프로파일을 만들려면
다음
create-fargate-profile
예시에서는 포드를 실행할 서브넷의 ID와 함께 여러 네임스페이스 및 레이블이 있는 선택기에 대한 EKS Fargate 프로파일을 만듭니다.aws eks create-fargate-profile \ --cluster-name
my-eks-cluster
\ --pod-execution-role-arnarn:aws:iam::111122223333:role/role-name
\ --fargate-profile-namemy-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 프로파일 생성 섹션을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 CreateFargateProfile
섹션을 참조하세요.
-
다음 코드 예시에서는 create-nodegroup
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예시 1: Amazon EKS 클러스터에 대한 관리형 노드 그룹을 만들려면
다음
create-nodegroup
예시에서는 Amazon EKS 클러스터의 관리형 노드 그룹을 만듭니다.aws eks create-nodegroup \ --cluster-name
my-eks-cluster
\ --nodegroup-namemy-eks-nodegroup
\ --node-rolearn:aws:iam::111122223333:role/role-name
\ --subnets"subnet-0e2907431c9988b72"
"subnet-04ad87f71c6e5ab4d"
"subnet-09d912bb63ef21b9a"
\ --scaling-configminSize=1,maxSize=3,desiredSize=1
\ --regionus-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: 사용자 지정 instance-types 및 disk-size를 사용하여 Amazon EKS 클러스터에 대한 관리형 노드 그룹을 만들려면
다음
create-nodegroup
예시에서는 사용자 지정 instance-types 및 disk-size를 사용하여 Amazon EKS 클러스터에 대한 관리형 노드 그룹을 만듭니다.aws eks create-nodegroup \ --cluster-name
my-eks-cluster
\ --nodegroup-namemy-eks-nodegroup
\ --node-rolearn:aws:iam::111122223333:role/role-name
\ --subnets"subnet-0e2907431c9988b72"
"subnet-04ad87f71c6e5ab4d"
"subnet-09d912bb63ef21b9a"
\ --scaling-configminSize=1,maxSize=3,desiredSize=1
\ --capacity-typeON_DEMAND
\ --instance-types 'm5.large
' \ --disk-size50
\ --regionus-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: 사용자 지정 instance-types, disk-size, ami-type, capacity-type, update-config, labels, taints 및 tags를 사용하여 Amazon EKS 클러스터에 대한 관리형 노드 그룹을 만들려면
다음
create-nodegroup
예시에서는 사용자 지정 instance-types, disk-size, ami-type, capacity-type, update-config, labels, taints 및 tags를 사용하여 Amazon EKS 클러스터에 대한 관리형 노드 그룹을 만듭니다.aws eks create-nodegroup \ --cluster-name
my-eks-cluster
\ --nodegroup-namemy-eks-nodegroup
\ --node-rolearn:aws:iam::111122223333:role/role-name
\ --subnets"subnet-0e2907431c9988b72"
"subnet-04ad87f71c6e5ab4d"
"subnet-09d912bb63ef21b9a"
\ --scaling-configminSize=1,maxSize=5,desiredSize=4
\ --instance-types 't3.large
' \ --disk-size50
\ --ami-typeAL2_x86_64
\ --capacity-typeSPOT
\ --update-configmaxUnavailable=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-namemy-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 EKS 추가 기능 관리 - 추가 기능 삭제 섹션을 참조하세요.
예시 2. Amazon EKS 추가 기능을 삭제하고 EKS 클러스터에서 추가 기능 소프트웨어도 삭제하려면
다음
delete-addon
예시 명령은 Amazon EKS 추가 기능을 삭제하고 EKS 클러스터에서 추가 소프트웨어도 삭제합니다.aws eks delete-addon \ --cluster-name
my-eks-cluster
\ --addon-namemy-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 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 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-namemy-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 삭제 섹션을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DeleteFargateProfile
섹션을 참조하세요.
-
다음 코드 예시에서는 delete-nodegroup
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예시 1: Amazon EKS 클러스터의 관리형 노드 그룹을 삭제하려면
다음
delete-nodegroup
예시에서는 Amazon EKS 클러스터의 관리형 노드 그룹을 삭제합니다.aws eks delete-nodegroup \ --cluster-name
my-eks-cluster
\ --nodegroup-namemy-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 추가 기능을 만들거나 업데이트할 때 사용할 수 있는 구성 옵션
다음
describe-addon-configuration
예시에서는 vpc-cni 추가 기능에 대해 추가 기능이 생성되거나 업데이트될 때 사용 가능한 모든 구성 스키마를 해당 버전과 함께 반환합니다.aws eks describe-addon-configuration \ --addon-name
vpc-cni
\ --addon-versionv1.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 추가 기능을 만들거나 업데이트할 때 사용할 수 있는 구성 옵션
다음
describe-addon-configuration
예시에서는 coredns 추가 기능에 대한 추가 기능이 생성되거나 업데이트될 때 사용 가능한 모든 구성 스키마를 해당 버전과 함께 반환합니다.aws eks describe-addon-configuration \ --addon-name
coredns
\ --addon-versionv1.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 EKS 클러스터에 대한 kubeconfig 파일 생성 또는 업데이트 섹션을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DescribeAddonConfiguration
섹션을 참조하세요.
-
다음 코드 예시에서는 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}
' \ --outputtable
출력:
-------------------------------------------------------------------------------------------------------------------- | 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 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}
' \ --outputtable
출력:
-------------------------------------------------------------------------------------------------------------------- | 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 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 EKS 추가 기능 관리 - 추가 기능 생성 섹션을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DescribeAddonVersions
섹션을 참조하세요.
-
다음 코드 예시에서는 describe-addon
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
Amazon EKS 클러스터에서 EKS 추가 기능을 능동적으로 실행하는 방법 설명
다음
describe-addon
예시에서는 Amazon EKS 클러스터에서 EKS 추가 기능을 능동적으로 실행합니다.aws eks describe-addon \ --cluster-name
my-eks-cluster
\ --addon-namevpc-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 \ --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-namemy-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" } } }
-
API 세부 정보는 AWS CLI 명령 참조의 DescribeFargateProfile
섹션을 참조하세요.
-
다음 코드 예시에서는 describe-identity-provider-config
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
Amazon EKS 클러스터와 연결된 ID 제공업체 구성 설명
다음
describe-identity-provider-config
예시에서는 Amazon EKS 클러스터에 연결된 ID 제공업체 구성을 설명합니다.aws eks describe-identity-provider-config \ --cluster-name
my-eks-cluster
\ --identity-provider-configtype=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 ID 제공업체에서 클러스터에 대한 사용자 인증 섹션을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DescribeIdentityProviderConfig
섹션을 참조하세요.
-
다음 코드 예시에서는 describe-nodegroup
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
Amazon EKS 클러스터에 대한 관리형 노드 그룹 설명
다음
describe-nodegroup
예시에서는 Amazon EKS 클러스터의 관리형 노드 그룹을 설명합니다.aws eks describe-nodegroup \ --cluster-name
my-eks-cluster
\ --nodegroup-namemy-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-id10bddb13-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 EKS 클러스터 Kubernetes 버전 업데이트 섹션을 참조하세요.
예시 2: 클러스터 업데이트를 설명하려면
다음
describe-update
예시에서는 이름이 지정된 클러스터에 대한 업데이트를 설명합니다.aws eks describe-update \ --name
my-eks-cluster
\ --update-ide4994991-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 EKS 클러스터 Kubernetes 버전 업데이트 섹션을 참조하세요.
예시 3: 클러스터 업데이트를 설명하려면
다음
describe-update
예시에서는 이름이 지정된 클러스터에 대한 업데이트를 설명합니다.aws eks describe-update \ --name
my-eks-cluster
\ --update-idb5f0ba18-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 EKS 클러스터 Kubernetes 버전 업데이트 섹션을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DescribeUpdate
섹션을 참조하세요.
-
다음 코드 예시에서는 disassociate-identity-provider-config
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
Amazon EKS 클러스터에서 ID 제공업체 연결 해제
다음
disassociate-identity-provider-config
예시에서는 ID 제공업체를 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 EKS 사용 설명서의 OpenID Connect ID 제공업체에서 클러스터에 대한 사용자 인증 - 클러스터에서 OIDC ID 제공업체 연결 해제 섹션을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DisassociateIdentityProviderConfig
섹션을 참조하세요.
-
다음 코드 예시에서는 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: 토큰에 서명할 때 자격 증명에 대해 이 roleARN을 수임하여 'my-eks-cluster'라는 Amazon EKS 클러스터의 인증 토큰 가져오기
다음
get-token
예시에서는 토큰에 서명할 때 자격 증명에 대해 이 roleARN을 수임하여 my-eks-cluster라는 Amazon EKS 클러스터에 대한 인증 토큰을 가져옵니다.aws eks get-token \ --cluster-name
my-eks-cluster
\ --role-arnarn: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
예시에서는 my-eks-cluster라는 Amazon EKS 클러스터에 설치된 모든 추가 기능을 나열합니다.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
예시에서는 my-eks-cluster라는 Amazon EKS 클러스터에 설치된 모든 추가 기능을 나열합니다.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
예시에서는 my-eks-cluster라는 Amazon EKS 클러스터의 모든 Fargate 프로파일을 나열합니다.aws eks list-fargate-profiles \ --cluster-name
my-eks-cluster
출력:
{ "fargateProfileNames": [ "my-fargate-profile" ] }
-
API 세부 정보는 AWS CLI 명령 참조의 ListFargateProfiles
섹션을 참조하세요.
-
다음 코드 예시에서는 list-identity-provider-configs
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
Amazon EKS 클러스터에 연결된 ID 제공업체 나열
다음
list-identity-provider-configs
예시에서는 Amazon EKS 클러스터에 연결된 ID 제공업체를 나열합니다.aws eks list-identity-provider-configs \ --cluster-name
my-eks-cluster
출력:
{ "identityProviderConfigs": [ { "type": "oidc", "name": "my-identity-provider" } ] }
자세한 내용은 Amazon EKS 사용 설명서의 OpenID Connect ID 제공업체에서 클러스터에 대한 사용자 인증 섹션을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 ListIdentityProviderConfigs
섹션을 참조하세요.
-
다음 코드 예시에서는 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 노드 그룹 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 프로파일 ARN의 모든 태그를 나열하려면
다음
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 EKS OIDC ID 제공업체 ARN의 모든 태그를 나열하려면
다음
list-tags-for-resource
예시에서는 Amazon EKS OIDC ID 제공업체 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" } }
-
API 세부 정보는 AWS CLI 명령 참조의 ListTagsForResource
섹션을 참조하세요.
-
다음 코드 예시에서는 list-update
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예시 1: Amazon EKS 클러스터 이름과 연결된 업데이트를 나열하려면
다음
list-updates
예시에서는 Amazon EKS 클러스터 이름의 모든 업데이트 ID를 나열합니다.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 EKS 노드 그룹의 모든 업데이트 ID를 나열하려면
다음
list-updates
예시에서는 Amazon EKS 노드 그룹의 모든 업데이트 ID를 나열합니다.aws eks list-updates \ --name
my-eks-cluster
\ --nodegroup-namemy-eks-managed-node-group
출력:
{ "updateIds": [ "8c6c1bef-61fe-42ac-a242-89412387b8e7" ] }
예시 3: Amazon EKS 추가 기능의 모든 업데이트 ID를 나열하려면
다음
list-updates
예시에서는 Amazon EKS 추가 기능의 모든 업데이트 ID를 나열합니다.aws eks list-updates \ --name
my-eks-cluster
\ --addon-namevpc-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에 외부 EKS_ANYWHERE Kubernetes 클러스터 등록
다음
register-cluster
예시에서는 Amazon EKS에 외부 EKS_ANYWHERE Kubernetes 클러스터를 등록합니다.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
예시에서는 Amazon EKS에 외부 EKS_ANYWHERE Kubernetes 클러스터를 등록합니다.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 노드 그룹에 추가합니다.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 노드 그룹에서 삭제합니다.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. 서비스 계정 역할 ARN으로 Amazon EKS 추가 기능을 업데이트하려면
다음
update-addon
예시 명령은 서비스 계정 역할 ARN으로 Amazon EKS 추가 기능을 업데이트합니다.aws eks update-addon \ --cluster-name
my-eks-cluster
\ --addon-namevpc-cni
\ --service-account-role-arnarn: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 EKS 추가 기능 관리 - 추가 기능 업데이트 섹션을 참조하세요.
예시 2. 특정 추가 기능 버전으로 Amazon EKS 추가 기능을 업데이트하려면
다음
update-addon
예시 명령은 특정 추가 기능 버전으로 Amazon EKS 추가 기능을 업데이트합니다.aws eks update-addon \ --cluster-name
my-eks-cluster
\ --addon-namevpc-cni
\ --service-account-role-arnarn:aws:iam::111122223333:role/eksctl-my-eks-cluster-addon-vpc-cni-Role1-YfakrqOC1UTm
\ --addon-versionv1.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 EKS 추가 기능 관리 - 추가 기능 업데이트 섹션을 참조하세요.
예시 3. 사용자 지정 구성 값으로 Amazon EKS 추가 기능을 업데이트하고 충돌 세부 정보를 해결하려면
다음
update-addon
예시 명령은 Amazon EKS 추가 기능을 사용자 지정 구성 값으로 업데이트하고 충돌 세부 정보를 해결합니다.aws eks update-addon \ --cluster-name
my-eks-cluster
\ --addon-namevpc-cni
\ --service-account-role-arnarn:aws:iam::111122223333:role/eksctl-my-eks-cluster-addon-vpc-cni-Role1-YfakrqOC1UTm
\ --addon-versionv1.16.4-eksbuild.2
\ --configuration-values '{"resources": {"limits":{"cpu":"100m"}, "requests":{"cpu":"50m"}}}
' \ --resolve-conflictsPRESERVE
출력:
{ "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 EKS 추가 기능 관리 - 추가 기능 업데이트 섹션을 참조하세요.
예시 4. 사용자 지정 JSON 구성 값 파일로 Amazon EKS 추가 기능을 업데이트하려면
다음
update-addon
예시 명령은 Amazon EKS 추가 기능을 사용자 지정 JSON 구성 값으로 업데이트하고 충돌 세부 정보를 해결합니다.aws eks update-addon \ --cluster-name
my-eks-cluster
\ --addon-namevpc-cni
\ --service-account-role-arnarn:aws:iam::111122223333:role/eksctl-my-eks-cluster-addon-vpc-cni-Role1-YfakrqOC1UTm
\ --addon-versionv1.17.1-eksbuild.1
\ --configuration-values 'file://configuration-values.json
' \ --resolve-conflictsPRESERVE
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 EKS 추가 기능 관리 - 추가 기능 업데이트 섹션을 참조하세요.
예시 5. 사용자 지정 YAML 구성 값 파일로 Amazon EKS 추가 기능을 업데이트하려면
다음
update-addon
예시 명령은 Amazon EKS 추가 기능을 사용자 지정 YAML 구성 값으로 업데이트하고 충돌 세부 정보를 해결합니다.aws eks update-addon \ --cluster-name
my-eks-cluster
\ --addon-namevpc-cni
\ --service-account-role-arnarn:aws:iam::111122223333:role/eksctl-my-eks-cluster-addon-vpc-cni-Role1-YfakrqOC1UTm
\ --addon-versionv1.18.0-eksbuild.1
\ --configuration-values 'file://configuration-values.yaml
' \ --resolve-conflictsPRESERVE
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 EKS 추가 기능 관리 - 추가 기능 업데이트 섹션을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UpdateAddon
섹션을 참조하세요.
-
다음 코드 예시에서는 update-cluster-config
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
클러스터 엔드포인트 액세스를 업데이트하려면
이 예시 명령은 클러스터를 업데이트하여 엔드포인트 퍼블릭 액세스를 비활성화하고 프라이빗 엔드포인트 액세스를 활성화합니다.
명령:
aws eks update-cluster-config --name
example
\ --resources-vpc-configendpointPublicAccess=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": [] } }
-
API 세부 정보는 AWS CLI 명령 참조의 UpdateClusterConfig
섹션을 참조하세요.
-
다음 코드 예시에서는 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-version1.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 EKS 클러스터 Kubernetes 버전 업데이트 섹션을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UpdateClusterVersion
섹션을 참조하세요.
-
다음 코드 예시에서는 update-kubeconfig
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예시 1: 'my-eks-cluster'라는 Amazon EKS 클러스터에 연결할 수 있도록 kubeconfig를 만들거나 업데이트하여 kubectl 구성
다음
update-kubeconfig
예시에서는 my-eks-cluster라는 Amazon EKS 클러스터에 연결할 수 있도록 kubeconfig를 만들거나 업데이트하여 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 EKS 클러스터에 대한 kubeconfig 파일 생성 또는 업데이트 섹션을 참조하세요.
예시 2: 'my-eks-cluster'라는 Amazon EKS 클러스터에 연결할 수 있도록 kubeconfig(클러스터 인증을 위한 역할을 수임하는 role-arn 옵션 포함)를 만들거나 업데이트하여 kubectl을 구성
다음
update-kubeconfig
예시에서는 my-eks-cluster라는 Amazon EKS 클러스터에 연결할 수 있도록 kubeconfig(클러스터 인증을 위한 역할을 수임하는 role-arn 옵션 포함)를 만들거나 업데이트하여 kubectl을 구성합니다.aws eks update-kubeconfig \ --name
my-eks-cluster
\ --role-arnarn: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 EKS 클러스터에 대한 kubeconfig 파일 생성 또는 업데이트 섹션을 참조하세요.
예시 3: `my-eks-cluster`라는 Amazon EKS 클러스터에 연결할 수 있도록 kubeconfig(사용자 지정 클러스터 별칭 및 user-alias와 함께 클러스터 인증을 위한 역할을 수임하는 role-arn 옵션 포함)를 만들거나 업데이트하여 kubectl 구성
다음
update-kubeconfig
예시에서는 my-eks-cluster라는 Amazon EKS 클러스터에 연결할 수 있도록 kubeconfig(사용자 지정 클러스터 별칭 및 user-alias와 함께 클러스터 인증을 위한 역할을 수임하는 role-arn 옵션 포함)를 만들거나 업데이트하여 kubectl을 구성합니다.aws eks update-kubeconfig \ --name
my-eks-cluster
\ --role-arnarn:aws:iam::111122223333:role/eksctl-EKS-Linux-Cluster-v1-24-cluster-ServiceRole-j1k7AfTIQtnM
\ --aliasstage-eks-cluster
\ --user-aliasjohn
출력:
Updated context stage-eks-cluster in /Users/dubaria/.kube/config
자세한 내용은 Amazon EKS 사용 설명서의 Amazon EKS 클러스터에 대한 kubeconfig 파일 생성 또는 업데이트 섹션을 참조하세요.
예시 4: 검토를 위해 kubeconfig 파일 항목을 출력하고 'my-eks-cluster'라는 Amazon EKS 클러스터에 연결할 수 있도록 kubectl 구성
다음
update-kubeconfig
예시에서는 my-eks-cluster라는 Amazon EKS 클러스터에 연결할 수 있도록 kubeconfig(사용자 지정 클러스터 별칭 및 user-alias와 함께 클러스터 인증을 위한 역할을 수임하는 role-arn 옵션 포함)를 만들거나 업데이트하여 kubectl을 구성합니다.aws eks update-kubeconfig \ --name
my-eks-cluster
\ --role-arnarn:aws:iam::111122223333:role/eksctl-EKS-Linux-Cluster-v1-24-cluster-ServiceRole-j1k7AfTIQtnM
\ --aliasstage-eks-cluster
\ --user-aliasjohn
\ --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 EKS 클러스터에 대한 kubeconfig 파일 생성 또는 업데이트 섹션을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UpdateKubeconfig
섹션을 참조하세요.
-
다음 코드 예시에서는 update-nodegroup-config
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예시 1: Amazon EKS 클러스터의 EKS 워커 노드에 새 레이블과 테인트를 추가하도록 관리형 노드 그룹 업데이트
다음
update-nodegroup-config
예시에서는 관리형 노드 그룹을 업데이트하여 Amazon EKS 클러스터의 EKS 워커 노드에 새 레이블과 테인트를 추가합니다.aws eks update-nodegroup-config \ --cluster-name
my-eks-cluster
\ --nodegroup-namemy-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 EKS 클러스터의 EKS 워커 노드에 대한 레이블 및 테인트를 제거하도록 관리형 노드 그룹 업데이트
다음
update-nodegroup-config
예시에서는 Amazon EKS 클러스터의 EKS 워커 노드에 대한 레이블과 테인트를 제거하도록 관리형 노드 그룹을 업데이트합니다.aws eks update-nodegroup-config \ --cluster-name
my-eks-cluster
\ --nodegroup-namemy-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 EKS 클러스터의 EKS 워커 노드에 대한 레이블 및 테인트를 제거 및 추가하도록 관리형 노드 그룹 업데이트
다음
update-nodegroup-config
예시에서는 Amazon EKS 클러스터의 EKS 워커 노드에 대한 레이블과 테인트를 제거하고 추가하도록 관리형 노드 그룹을 업데이트합니다.aws eks update-nodegroup-config \ --cluster-name
my-eks-cluster
\ --nodegroup-namemy-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 워커 노드에 대한 scaling-config 및 update-config를 업데이트하도록 관리형 노드 그룹 업데이트
다음
update-nodegroup-config
예시에서는 Amazon EKS 클러스터의 EKS 워커 노드에 대한 scaling-config 및 update-config를 업데이트하도록 관리형 노드 그룹을 업데이트합니다.aws eks update-nodegroup-config \ --cluster-name
my-eks-cluster
\ --nodegroup-namemy-eks-nodegroup
\ --scaling-configminSize=1,maxSize=5,desiredSize=2
\ --update-configmaxUnavailable=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 사용 설명서의 관리형 노드 그룹 업데이트 섹션을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UpdateNodegroupConfig
섹션을 참조하세요.
-
다음 코드 예시에서는 update-nodegroup-version
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예시 1: Amazon EKS 관리형 노드 그룹의 Kubernetes 버전 또는 AMI 버전 업데이트
다음
update-nodegroup-version
예시에서는 Amazon EKS 관리형 노드 그룹의 Kubernetes 버전 또는 AMI 버전을 Kubernetes 클러스터에 사용 가능한 최신 버전으로 업데이트합니다.aws eks update-nodegroup-version \ --cluster-name
my-eks-cluster
\ --nodegroup-namemy-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 EKS 관리형 노드 그룹의 Kubernetes 버전 또는 AMI 버전 업데이트
다음
update-nodegroup-version
예시에서는 Amazon EKS 관리형 노드 그룹의 Kubernetes 버전 또는 AMI 버전을 지정된 AMI 릴리스 버전으로 업데이트합니다.aws eks update-nodegroup-version \ --cluster-name
my-eks-cluster
\ --nodegroup-namemy-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/update-managed-node-group.html>` 섹션을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UpdateNodegroupVersion
섹션을 참조하세요.
-