`kubectl`과 `eksctl` 설정하기
kubectl과 eksctl 설정하기
AWS CLI를 설치한 뒤에는 Kubernetes 클러스터를 생성·관리하기 위해 설치해야 할 도구가 두 가지 더 있습니다.
kubectl:kubectl명령줄 도구는 Kubernetes 클러스터 내 리소스를 관리하는 데 사용하는 주요 도구입니다. 이 페이지에서는 Kubernetes 클러스터 버전과 일치하는kubectl바이너리를 다운로드·설정하는 방법을 설명합니다. Install or update kubectl을 참고하세요.eksctl:eksctl명령줄 도구는 AWS 클라우드 또는 온프레미스(EKS Anywhere 사용)에서 EKS 클러스터를 만들고 수정·삭제하는 데 사용됩니다. Install eksctl을 참고하세요.
출처: 문서
본문
kubectl 설치 또는 업데이트
이 주제에서는 기기에 kubectl 바이너리를 다운로드·설치하거나 업데이트하는 방법을 안내합니다. 이 바이너리는 커뮤니티의 상위 버전과 동일하며, Amazon EKS나 AWS 고유의 것이 아닙니다. 많은 빌더가 단순히 brew install kubectl로 설치하기도 하지만, 아래 단계를 사용해 필요한 특정 버전의 kubectl을 받을 수 있어요.
Note:
kubectl버전은 Amazon EKS 클러스터 컨트롤 플레인과 마이너 버전 차이가 1 이내여야 합니다. 예를 들어1.35kubectl클라이언트는 Kubernetes1.34,1.35,1.36클러스터에서 작동합니다.
Tip: AWS CloudShell을 통해 EKS 콘솔에서 직접
kubectl을 사용할 수도 있습니다. 어떤 클러스터 세부 정보 페이지에서든 Connect를 선택하면 미리 구성된 세션을 얻을 수 있어요. 자세한 내용은 Connect kubectl to an EKS cluster by creating a kubeconfig file을 참고하세요.
1단계: kubectl 설치 여부 확인
기기에 kubectl이 이미 설치되어 있는지 확인합니다.
kubectl version --client
기기 경로에 kubectl이 설치되어 있다면 예시 출력에 다음과 유사한 정보가 포함됩니다. 설치된 버전을 더 최신 버전으로 업데이트하려면 다음 단계를 완료하고, 새 버전을 현재 버전과 같은 위치에 설치하세요.
Client Version: v1.31.X-eks-1234567
출력이 없다면 kubectl이 설치되지 않았거나 기기 경로에 없는 위치에 설치된 것입니다.
2단계: kubectl 설치 또는 업데이트
다음 운영 체제 중 하나에서 kubectl을 설치·업데이트합니다: macOS / Linux (amd64) / Linux (arm64) / Windows
Note: 이 섹션에서 사용하는 AWS 리전에서 다운로드가 느리다면 CloudFront를 설정해 콘텐츠를 프런트하는 것을 고려해 보세요. 자세한 내용은 Get started with a basic CloudFront distribution을 참고합니다.
macOS
- Amazon S3에서 클러스터의 Kubernetes 버전용 바이너리를 다운로드합니다. 예:
- Kubernetes
1.36:curl -O https://s3.us-west-2.amazonaws.com/amazon-eks/1.36.2/2026-07-05/bin/darwin/amd64/kubectl - Kubernetes
1.35:curl -O https://s3.us-west-2.amazonaws.com/amazon-eks/1.35.6/2026-07-05/bin/darwin/amd64/kubectl - Kubernetes
1.34:curl -O https://s3.us-west-2.amazonaws.com/amazon-eks/1.34.9/2026-07-05/bin/darwin/amd64/kubectl - Kubernetes
1.33:curl -O https://s3.us-west-2.amazonaws.com/amazon-eks/1.33.13/2026-07-05/bin/darwin/amd64/kubectl - Kubernetes
1.32:curl -O https://s3.us-west-2.amazonaws.com/amazon-eks/1.32.13/2026-07-05/bin/darwin/amd64/kubectl - Kubernetes
1.31:curl -O https://s3.us-west-2.amazonaws.com/amazon-eks/1.31.14/2026-07-05/bin/darwin/amd64/kubectl - Kubernetes
1.30:curl -O https://s3.us-west-2.amazonaws.com/amazon-eks/1.30.14/2026-07-05/bin/darwin/amd64/kubectl
- Kubernetes
- (선택) 다운로드한 바이너리를
SHA-256체크섬으로 검증합니다. 클러스터의 Kubernetes 버전용SHA-256체크섬을 다운로드하세요. 체크섬 파일 이름은kubectl.sha256입니다(위 URL에서 마지막 부분을kubectl.sha256으로 변경). - 다운로드한 바이너리의
SHA-256체크섬을 확인합니다:
생성된 체크섬이 다운로드한openssl sha1 -sha256 kubectlkubectl.sha256파일의 체크섬과 일치하는지 확인하세요. - 바이너리에 실행 권한을 적용합니다:
chmod +x ./kubectl - 바이너리를
PATH의 폴더로 복사합니다.kubectl버전이 이미 설치되어 있다면$HOME/bin/kubectl을 만들고$HOME/bin이$PATH의 맨 앞에 오도록 권장합니다.mkdir -p $HOME/bin && cp ./kubectl $HOME/bin/kubectl && export PATH=$HOME/bin:$PATH - (선택)
$HOME/bin경로를 셸 초기화 파일에 추가해 셸을 열 때 구성되도록 합니다.echo 'export PATH=$HOME/bin:$PATH' >> ~/.bash_profile
Linux (amd64)
- Amazon S3에서 클러스터의 Kubernetes 버전용
kubectl바이너리를 다운로드합니다. URL 형식:https://s3.us-west-2.amazonaws.com/amazon-eks/<version>/2026-07-05/bin/linux/amd64/kubectl(예:1.36.2,1.35.6,1.34.9,1.33.13,1.32.13,1.31.14,1.30.14). - (선택)
SHA-256체크섬으로 바이너리를 검증합니다. 체크섬 파일:.../bin/linux/amd64/kubectl.sha256. - 다음 명령 중 하나로 바이너리의
SHA-256체크섬을 확인합니다:
또는sha256sum -c kubectl.sha256
첫 번째는openssl sha1 -sha256 kubectlkubectl: OK가 보여야 하고, 두 번째는 생성된 체크섬이 다운로드한kubectl.sha256파일의 체크섬과 일치하는지 확인합니다. - 실행 권한을 적용합니다:
chmod +x ./kubectl - 바이너리를
PATH의 폴더로 복사합니다(이미 버전이 있으면$HOME/bin/kubectl권장):mkdir -p $HOME/bin && cp ./kubectl $HOME/bin/kubectl && export PATH=$HOME/bin:$PATH - (선택) 셸 초기화 파일에
$HOME/bin경로를 추가합니다. Bash 셸을 사용한다고 가정하며, 다른 셸이라면 해당 셸 초기화 파일을 사용하세요.echo 'export PATH=$HOME/bin:$PATH' >> ~/.bashrc
Linux (arm64)
- Amazon S3에서
kubectl바이너리를 다운로드합니다. URL 형식:https://s3.us-west-2.amazonaws.com/amazon-eks/<version>/2026-07-05/bin/linux/arm64/kubectl. - (선택)
SHA-256체크섬으로 검증합니다. 체크섬 파일:.../bin/linux/arm64/kubectl.sha256. - 체크섬 확인:
또는sha256sum -c kubectl.sha256openssl sha1 -sha256 kubectl - 실행 권한 적용:
chmod +x ./kubectl PATH의 폴더로 복사:mkdir -p $HOME/bin && cp ./kubectl $HOME/bin/kubectl && export PATH=$HOME/bin:$PATH- (선택) 셸 초기화 파일에 경로 추가(Bash 셸 가정):
echo 'export PATH=$HOME/bin:$PATH' >> ~/.bashrc
Windows
- PowerShell 터미널을 엽니다.
- Amazon S3에서
kubectl바이너리를 다운로드합니다. 예:- Kubernetes
1.36:curl.exe -O https://s3.us-west-2.amazonaws.com/amazon-eks/1.36.2/2026-07-05/bin/windows/amd64/kubectl.exe - (다른 버전도
darwin→windows로 변경한 동일한 패턴.1.35.6,1.34.9,1.33.13,1.32.13,1.31.14,1.30.14지원)
- Kubernetes
- (선택)
SHA-256체크섬으로 바이너리를 검증합니다. 체크섬 파일:.../bin/windows/amd64/kubectl.exe.sha256. - 체크섬 확인:
출력의 체크섬이 다운로드한Get-FileHash kubectl.exekubectl.exe.sha256파일의 체크섬과 일치하는지 확인합니다. PowerShell 출력은 대문자 문자열이어야 합니다. - 바이너리를
PATH의 폴더로 복사합니다. 명령줄 유틸리티용으로PATH에 기존 디렉터리가 있으면 거기 복사하고, 아니면 다음 단계를 완료하세요.- 명령줄 바이너리용 새 디렉터리(예:
C:\bin)를 만듭니다. kubectl.exe바이너리를 새 디렉터리에 복사합니다.- 사용자 또는 시스템
PATH환경 변수를 편집해 새 디렉터리를PATH에 추가합니다. - PowerShell 터미널을 닫고 새로 열어 새
PATH변수를 적용합니다.
- 명령줄 바이너리용 새 디렉터리(예:
kubectl을 설치한 후 버전을 확인할 수 있습니다.
kubectl version --client
kubectl을 처음 설치할 때는 아직 어떤 서버와도 통신하도록 구성되지 않았습니다. 이 구성은 다른 절차에서 필요할 때 다룰 거예요. 특정 클러스터와 통신하도록 구성을 업데이트해야 한다면 다음 명령을 실행할 수 있습니다. region-code를 클러스터가 있는 AWS 리전으로, my-cluster를 클러스터 이름으로 바꾸세요.
aws eks update-kubeconfig --region region-code --name my-cluster
자동 완성을 구성하는 것을 고려해 보세요. 그러면 처음 몇 글자를 입력한 뒤 탭 키로 kubectl 하위 명령을 완성할 수 있어요. 자세한 내용은 Kubernetes 문서의 Kubectl autocomplete를 참고하세요.
eksctl 설치
eksctl CLI는 EKS 클러스터를 작업하는 데 사용됩니다. 많은 개별 작업을 자동화합니다. eksctl 문서의 Installation을 참고해 설치 지침을 확인하세요. Linux에서는 UNIX 지침을 사용합니다.
eksctl 사용 시 사용 중인 IAM 보안 주체는 Amazon EKS IAM 역할, 서비스 연결 역할(service-linked roles), AWS CloudFormation, VPC 및 관련 리소스를 작업할 수 있는 권한을 가져야 해요. 자세한 내용은 IAM User Guide의 Actions와 Using service-linked roles를 참고하세요. 이 가이드의 모든 단계를 같은 사용자로 완료해야 합니다. 현재 사용자를 확인하려면 다음 명령을 실행합니다.
aws sts get-caller-identity
다음 단계
- Quickstart: Deploy a web app and store data