
AWS에서 제공하는 k8s Service
이전 글에서 만들었던 인스턴스가 있다. 그것을 사용한다.

# https://docs.aws.amazon.com/ko_kr/eks/latest/userguide/install-kubectl.html
# 파일 내려 받기
curl -O https://s3.us-west-2.amazonaws.com/amazon-eks/1.34.2/2025-11-13/bin/linux/amd64/kubectl
# 권한 부여
chmod +x ./kubectl
# 폴더 생성
mkdir -p $HOME/bin && cp ./kubectl $HOME/bin/kubectl && export PATH=$PATH:$HOME/bin
# 실행
echo 'export PATH=$PATH:$HOME/bin' >> ~/.bashrc
# 버전 확인
kubectl version --client

# https://docs.aws.amazon.com/ko_kr/eks/latest/userguide/eksctl.html
curl --silent --location "https://github.com/weaveworks/eksctl/releases/latest/download/eksctl_$(uname -s)_amd64.tar.gz" | tar xz -C /tmp
mv /tmp/eksctl /usr/local/bin
eksctl version








추가할 것은 아래와 같다.






# 클러스터 용
mkdir cluster && cd cluster
# 클러스터 yaml 생성
vi cluster.yaml
# 작성한 내용
apiVersion: eksctl.io/v1alpha5
kind: ClusterConfig
metadata:
name: yslee-cluster
region: ap-northeast-2
vpc:
id: vpc-087938bd1d3bb5910
subnets:
public:
ap-northeast-2a:
id: subnet-0d8f8b992c8739fde
ap-northeast-2c:
id: subnet-03ca1d569fe5571ba
iam:
withOIDC: true
managedNodeGroups:
- name: yslee-nodeGroup
instanceType: t3.medium
desiredCapacity: 2
minSize: 1
maxSize: 2
privateNetworking: false
subnets:
- subnet-0d8f8b992c8739fde
- subnet-03ca1d569fe5571ba
iam:
withAddonPolicies:
imageBuilder: true
autoScaler: true
ebs: true
ssh:
allow: true
publicKeyName: yslee-02

sudo apt update && sudo apt install unzip -y
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
# 설치 확인
aws --version
# aws config 설정
aws config
# 지역
ap-southeast-2
# config 설정값 확인
aws sts get-caller-identity
eksctl create cluster -f cluster.yaml



eksctl delete cluster --refgion=ap-southeast-2 --name=yslee-cluster



kubectl get nodes -o wide


# 파일 생성
vi nginx-00.yaml
# 작성한 내용
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deploy
spec:
replicas: 2
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: docker.io/yslee4050/yslee-nginx:v1.0
ports:
- containerPort: 80
---
apiVersion: v1
kind: Service
metadata:
name: nginx-svc
spec:
type: NodePort
selector:
app: nginx
ports:
- port: 80
targetPort: 80
nodePort: 30080

kubectl apply -f nginx-00.yaml
kubectl get pod,deploy,svc

kubectl get node -o wide





