인프라
AWS CLI 설치부터 EKS 연결, K9s 실행까지 한 번에 정리
| 서론
안녕하세요, 팡일입니다.
최근 Kubernetes 개발 환경을 세팅하면서 AWS EKS 클러스터를 로컬 환경에 연결하고, K9s 로 클러스터 상태를 확인하는 작업을 진행하게 되었습니다.
처음에는 단순히 k9s 만 실행하면 바로 사용할 수 있을 줄 알았는데, 실제로는 아래와 같이 여러 초기 환경 세팅 과정이 필요했습니다.
AWS CLI 설치
AWS 계정 인증 설정
EKS kubeconfig 등록
Kubernetes Context 연결
특히 처음 EKS 환경을 세팅할 때는 어떤 순서로 진행해야 하는지 헷갈리는 부분이 많았는데, 이번 글에서는 제가 실제로 진행했던 흐름을 기준으로 AWS CLI 설치부터 EKS 연결, 그리고 K9s 실행까지 한 번에 정리해보겠습니다.
| 문제 상황
처음에는 아래 명령어를 실행했습니다.
aws sts get-caller-identity하지만 바로 아래와 같은 에러가 발생했습니다.
zsh: command not found: aws즉, 현재 Mac 환경에 AWS CLI 자체가 설치되어 있지 않은 상태였습니다.
1) AWS CLI 설치하기
macOS에서는 Homebrew로 간단하게 설치할 수 있습니다.
brew install awscli설치가 완료되면 다시 아래 명령어를 실행해봅니다.
aws sts get-caller-identity그러면 이번에는 다른 에러가 발생합니다.
Unable to locate credentials이 에러는 AWS CLI는 설치되었지만, 아직 AWS 계정 인증 정보가 설정되지 않았다는 의미입니다.
2) AWS 인증 정보 설정하기
AWS CLI를 사용하려면 Access Key와 Secret Key를 등록해야 합니다.
아래 명령어를 실행합니다.
aws configure이후 아래 항목들을 입력하게 됩니다.
AWS Access Key ID:
AWS Secret Access Key:
Default region name:
Default output format:서울 리전을 사용하는 경우 보통 아래 값을 입력합니다.
ap-northeast-2설정이 완료되면 다시 아래 명령어를 실행합니다.
aws sts get-caller-identity정상적으로 설정되었다면 현재 로그인된 AWS 계정 정보가 출력됩니다.
3) EKS 클러스터 kubeconfig 등록하기
이제 AWS EKS 클러스터 정보를 로컬 Kubernetes 설정 파일(~/.kube/config)에 등록해야 합니다.
aws eks update-kubeconfig --region ap-northeast-2 --name 이름이 작업을 수행하면 kubectl, K9s 등의 Kubernetes 툴이 해당 클러스터에 접근할 수 있게 됩니다.
4) K9s 실행하기
모든 설정이 완료되었다면 이제 아래 명령어로 K9s를 실행할 수 있습니다.
k9s정상적으로 연결되면 아래와 같은 기능들을 터미널 기반 UI로 편하게 확인할 수 있습니다.
Pod 상태 확인
로그 조회
Namespace 이동
리소스 모니터링
| 함께 알아두면 좋은 명령어
1) 현재 Kubernetes Context 확인
kubectl config current-context2) 등록된 Context 목록 확인
kubectl config get-contexts3) Context 변경하기
kubectl config use-context <context-name>| 결론
처음에는 단순히 K9s만 실행하면 되는 줄 알았는데, 실제로는 아래 흐름이 모두 연결되어 있었습니다.
AWS CLI 설치
AWS 계정 인증 설정
EKS kubeconfig 등록
K9s 실행
특히 aws eks update-kubeconfig 명령어가 핵심이었고, 이 과정을 통해 로컬 환경과 EKS 클러스터를 연결할 수 있었습니다.
처음 EKS를 접하시는 분들이라면 저처럼 어디서 막혀야 정상인지(?) 감이 안 올 수 있는데, 이 글이 조금이나마 도움이 되었으면 좋겠습니다!