Yaml 파일을 이용한 EKS Clutser 생성 방법 입니다.
AWS CLI Upgrade
- AWS CLI Upgrade
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
Kubectl 설치
- kubectl 설치
# kubectl 설치
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.30.0/2024-05-12/bin/linux/amd64/kubectl
# 바이너리에 실행 권한 적용
chmod +x ./kubectl
# 바이너리 PATH 설정
mkdir -p $HOME/bin && cp ./kubectl $HOME/bin/kubectl && export PATH=$HOME/bin:$PATH
echo 'export PATH=$HOME/bin:$PATH' >> ~/.bash_profile
# kubectl 버전 확인
kubectl version --client
eksctl 설치
- eksctl 설치
# for ARM systems, set ARCH to: `arm64`, `armv6` or `armv7`
ARCH=amd64
PLATFORM=$(uname -s)_$ARCH
curl -sLO "https://github.com/eksctl-io/eksctl/releases/latest/download/eksctl_$PLATFORM.tar.gz"
# (Optional) Verify checksum
curl -sL "https://github.com/eksctl-io/eksctl/releases/latest/download/eksctl_checksums.txt" | grep $PLATFORM | sha256sum --check
tar -xzf eksctl_$PLATFORM.tar.gz -C /tmp && rm eksctl_$PLATFORM.tar.gz
sudo mv /tmp/eksctl /usr/local/bin
AWS Configure 등록
- AWS Configure 등록
aws configure
AWS Access Key ID [None]:
AWS Secret Access Key [None]:
Default region name [None]:
Default output format [None]:
EKS Cluster 생성
- yaml 파일 생성
vi cluster.yaml
apiVersion: eksctl.io/v1alpha5
kind: ClusterConfig
metadata:
name: ydy-eks # 클러스터 이름
region: ap-northeast-2
version: "1.30" # K8s 버전 지정
vpc:
subnets:
private:
ap-northeast-2a: # 서브넷 필드 이름 지정 (임의의 이름 지정 가능)
id: subnet-00eb92a5007e3---- # 서브넷 ID
ap-northeast-2c:
id: subnet-0580f040bef65----
public:
subnet-pub-ap-northeast-2a:
id: subnet-0e3b82a26c19c----
subnet-pub-ap-northeast-2c:
id: subnet-01f2f26c10544----
managedNodeGroups:
- name: ydy-eks-ng # 노드그룹 이름 지정
tags: {
"Name": "ydy-eks-ng"
}
labels:
project: ydytest
privateNetworking: true # Private 서브넷 사용시 필수 필드 (NAT필요)
instanceType: t3.medium # 인스턴스 유형 선택
desiredCapacity: 3 # WorkerNode 원하는 용량
maxSize: 4
volumeSize: 30
volumeType: gp3
subnets: # WorkerNode에서 사용할 위 VPC 필드에 명시한 서브넷 지정
- ap-northeast-2a
- ap-northeast-2c
ssh:
publicKeyName: ydy-seoul
iam:
withAddonPolicies:
imageBuilder: true
autoScaler: true
cloudWatch: true
- eksctl 명령어로 cluster 생성
eksctl create cluster -f cluster.yaml
'AWS' 카테고리의 다른 글
[AWS] EKS - Horizontal Pod AutoScaler ( HPA ) 설정 (8) | 2024.09.29 |
---|---|
[AWS] EKS - Nginx Ingress Controller 설치 및 NLB 생성 (0) | 2024.09.29 |
[AWS] EKS - Load Balancer Controller 설치 및 ALB 생성 (0) | 2024.09.29 |
[AWS] S3, Athena, Lambda - 최근 액세스 날짜 기준 이후의 객체 삭제 (0) | 2024.09.21 |
[AWS] S3 - Cross Account Access (3) | 2024.09.21 |