본문 바로가기
DevOps/EKS

[AEWS4기] 실습환경 구성

by 서어켜엉 2026. 3. 18.

사전 준비

k8s 실습에 필요한 관리 도구 설치

  • krew
    • kubectl 플러그인 매니저. kubectl 플러그인을 쉽게 검색·설치·관리할 수 있게 해줌
  • k9s
    • 터미널 기반 Kubernetes 클러스터 UI. 리소스를 실시간으로 시각화하고 인터랙티브하게 관리할 수 있음
  • kube-ps1
    • 현재 kubeconfig의 context와 namespace를 shell 프롬프트에 표시해주는 도구
  • kubectx
    • Kubernetes context와 namespace를 빠르게 전환할 수 있게 해주는 CLI 도구
  • kubecolor
    • kubectl 출력 시 하이라이트 처리

 

AWS 자격증명 세팅 및 key-pair 생성

aws configure
AWS Access Key ID : <액세스 키 입력>
AWS Secret Access Key : <시크릿 키 입력>
Default region name : ap-northeast-2
# 기본 Key Pair 생성 (pem 파일 생성)
aws ec2 create-key-pair \
  --key-name my-keypair \
  --query 'KeyMaterial' \
  --output text > my-keypair.pem

# 권한 설정
chmod 400 my-keypair.pem

# 확인
aws ec2 describe-key-pairs --key-names my-keypair

 

아래 코드는 반드시 key-pair가 하나만 있을 때 할것.

aws ec2 describe-key-pairs --query "KeyPairs[].KeyName" --output text
export TF_VAR_KeyName=$(aws ec2 describe-key-pairs --query "KeyPairs[].KeyName" --output text)
export TF_VAR_ssh_access_cidr=$(curl -s ipinfo.io/ip)/32
echo $TF_VAR_KeyName $TF_VAR_ssh_access_cidr

여러개가 있다면 export TF_VAR_KeyName="my-keyname" 직접 실행

 

실습환경 구성

terraform 을 활용해서 vpc, EKS, EKS managed nodegroup, Security group 등을 생성한다.

 

분명 key-pair를 생성했는데, 키가 없다고 한다.

 

Terraform 의 리소스 생성 리전은 ap-northeast-2 가 default 값이다.

역시나 region이 문제였다. key를 us-east-1 에 생성해서 발생한 에러

삭제 후 서울 리전에 재생성 후 terraform apply를 하니까 node group이 생성 됐다.

 

Nodegroup 접속

# 노드 IP 확인 및 공인IP 변수 지정
aws ec2 describe-instances --query "Reservations[*].Instances[*].{PublicIPAdd:PublicIpAddress,PrivateIPAdd:PrivateIpAddress,InstanceName:Tags[?Key=='Name']|[0].Value,Status:State.Name}" --filters Name=instance-state-name,Values=running --output table
NODE1=13.124.172.105
NODE2=15.164.250.203

# 노드의IP ping 테스트
ping -c 1 $NODE1
ping -c 1 $NODE2

# 노드 보안그룹 확인
aws ec2 describe-security-groups | jq
aws ec2 describe-security-groups --filters "Name=tag:Name,Values=myeks-node-group-sg" | jq
aws ec2 describe-security-groups --filters "Name=tag:Name,Values=myeks-node-group-sg" --query 'SecurityGroups[*].IpPermissions' --output text


# 워커 노드 SSH 접속
ssh -i ~/.ssh/id_rsa -o StrictHostKeyChecking=no ec2-user@$NODE1 hostname
ssh -i ~/.ssh/id_rsa -o StrictHostKeyChecking=no ec2-user@$NODE2 hostname
ssh -o StrictHostKeyChecking=no ec2-user@$NODE1 hostname
ssh -o StrictHostKeyChecking=no ec2-user@$NODE2 hostname


# Tip. ssh config
cat ~/.ssh/config       
...
Host *
    User ec2-user
    IdentityFile ~/.ssh/kp-gasida.pem
    
ssh ec2-user@$NODE1
exit

ssh ec2-user@$NODE2
exit

 

와이파이 공인 IP가 security group에 들어갔는데 이상하게 접속이 되질 않는다.

security group 룰을 0.0.0.0/0 에 대해 모든 port를 개방했다.

그리고 ssh -i my-key-pair.pem 옵션을 해야지만 접속이 된다.

뭔가 문제가 있다.

'DevOps > EKS' 카테고리의 다른 글

[AEWS4기] VPC CNI 네트워크 이해하기  (0) 2026.03.22
[AEWS4기] EKS Cluster Endpoint Access  (0) 2026.03.18
AWS EKS vs Vanilla k8s  (0) 2026.03.17