사전 준비
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 |