Search

Cluster

Fargate

EC2

AutoMode

Basic
apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: skills-eks-cluster version: "1.32" region: ap-northeast-2 cloudWatch: clusterLogging: enableTypes: ["*"] iam: withOIDC: true serviceAccounts: - metadata: name: aws-load-balancer-controller namespace: kube-system wellKnownPolicies: awsLoadBalancerController: true - metadata: name: cert-manager namespace: cert-manager wellKnownPolicies: certManager: true vpc: subnets: public: ap-northeast-2a: { id: public_a } ap-northeast-2b: { id: public_b } private: ap-northeast-2a: { id: private_a } ap-northeast-2b: { id: private_b } managedNodeGroups: - name: skills-app-nodegroup # labels: { dev/deployed: deploy } instanceName: skills-app-node instanceType: c5.large desiredCapacity: 2 minSize: 2 maxSize: 4 privateNetworking: true # ssh: # allow: true # publicKeyName: <KeyPair>
YAML
복사
Tags shell
#!/bin/bash public_a=$(aws ec2 describe-subnets --filters "Name=tag:Name,Values=skills-public-subnet-a" --query "Subnets[].SubnetId[]" --region ap-northeast-2 --output text) public_b=$(aws ec2 describe-subnets --filters "Name=tag:Name,Values=skills-public-subnet-b" --query "Subnets[].SubnetId[]" --region ap-northeast-2 --output text) private_a=$(aws ec2 describe-subnets --filters "Name=tag:Name,Values=skills-private-subnet-a" --query "Subnets[].SubnetId[]" --region ap-northeast-2 --output text) private_b=$(aws ec2 describe-subnets --filters "Name=tag:Name,Values=skills-private-subnet-b" --query "Subnets[].SubnetId[]" --region ap-northeast-2 --output text) sed -i "s|public_a|$public_a|g" cluster.yaml sed -i "s|public_b|$public_b|g" cluster.yaml sed -i "s|private_a|$private_a|g" cluster.yaml sed -i "s|private_b|$private_b|g" cluster.yaml
Shell
복사
# 필요시 사용 ACCOUNT_ID=$(aws sts get-caller-identity --query "Account" --output text) REGION_CODE=$(aws configure get default.region --output text) # kubeconfig 등록 aws eks --region ap-northeast-2 update-kubeconfig --name skills-eks-cluster --alias skills-eks-cluster # 등록된 kubeconfig 확인 cat ~/.kube/config # context 변경 kubectl config use-context skills-eks-cluster # kubectl 명령어로 클러스터 정보 확인 kubectl cluster-info # 별칭 지정 echo 'alias k=kubectl' >> ~/.bash_profile && source ~/.bash_profile
Shell
복사
nodeGroup 잘못 생성 했을 시 해결방안
# 새 노드그룹 생성 eksctl create nodegroup -f cluster.yaml > skills-eks-app-nodegroup -> skills-eks-app-nodegroup-c5 # 기존 노드그룹 삭제 eksctl delete nodegroup --cluster=skills-eks-cluster --name=skills-eks-app-nodegroup
YAML
복사
delete eks cluster
eksctl delete cluster --name $EKS_CLUSTER_NAME
YAML
복사