Amazon 쿠버네티스 서비스인 EKS를 설치해 보자.
1
준비물 ?
EC2 키페어
EKS 만들 수 있는 권한 = AWS IAM > Access-key / Secret-Key
2
참고 자료
https://brunch.co.kr/@topasvga/3572
3
CloudFormation으로 설치
최신버전인 1.30 버전 설치를 한다.
비용 절감을 위해 워커 노드 1대만 생성한다.
30분 걸린다.
https://vclock.kr/timer/#countdown=00:10:00&enabled=0&seconds=0&sound=xylophone&loop=1
1
k get nodes
2
# 노드 보안그룹 ID 확인
aws ec2 describe-security-groups --filters Name=group-name,Values=*ng1* --query "SecurityGroups[*].[GroupId]" --output text
NGSGID=$(aws ec2 describe-security-groups --filters Name=group-name,Values=*ng1* --query "SecurityGroups[*].[GroupId]" --output text)
echo $NGSGID
3
# 노드 보안그룹에 eksctl-host 에서 노드(파드)에 접속 가능하게 룰(Rule) 추가 설정
aws ec2 authorize-security-group-ingress --group-id $NGSGID --protocol '-1' --cidr 192.168.1.100/32
helm repo add geek-cookbook https://geek-cookbook.github.io/charts/
helm install kube-ops-view geek-cookbook/kube-ops-view --version 1.2.2 --set env.TZ="Asia/Seoul" --namespace kube-system
kubectl patch svc -n kube-system kube-ops-view -p '{"spec":{"type":"LoadBalancer"}}'
kubectl annotate service kube-ops-view -n kube-system "external-dns.alpha.kubernetes.io/hostname=kubeopsview.$MyDomain"
echo -e "Kube Ops View URL = http://kubeopsview.$MyDomain:8080/#scale=1.5"
( 5분 걸림)
watch -d kubectl get svc,pods -A
1
게임 1개 올리기
cat <<EOF | k create -f -
apiVersion: apps/v1
kind: Deployment
metadata:
name: deployment-2048
spec:
selector:
matchLabels:
app.kubernetes.io/name: app-2048
replicas: 2
template:
metadata:
labels:
app.kubernetes.io/name: app-2048
spec:
containers:
- image: alexwhen/docker-2048
name: app-2048
ports:
- containerPort: 80
EOF
k expose deployment deployment-2048 --port=80 --type=LoadBalancer
2
게임용 로드 밸런서 생성됨
LoadBalancer 10.100.222.177 a60502c2c4aef4aa0afeb1c8fb410d65-1812132346.ap-northeast-2.elb.amazonaws.com 80:31403/TCP
3
로드 밸런서 IP 확인?
dig +short a60502c2c4aef4aa0afeb1c8fb410d65-1812132346.ap-northeast-2.elb.amazonaws.com
52.78.63.27
15.165.219.209
4
서비스에 추가
GTM > Traffic Policy
5
현재 구축된 내용
6
CSP마다 다른 서비스 운영
7
마리오 게임
https://brunch.co.kr/@topasvga/3193
8
node 수 증가 시키기
https://brunch.co.kr/@topasvga/3572
9
https://brunch.co.kr/@topasvga/1656
10
https://brunch.co.kr/@topasvga/3594
11
https://brunch.co.kr/@topasvga/3588
다음
클라우드 코드로 관리하기.
https://brunch.co.kr/@topasvga/3943
감사합니다.