<1> Amazon EKS 구축
<2> 게임 컨테이너 올리기
<3> GSLB에서 dns 매칭하기
<4> ops-view 설치해 구성 보기 (옵션)
<5> Node 수를 늘려보자~
<6> Pod를 늘려보자~
<7> 추가 테스트
<8> 삭제
<10> 전체 프로젝트 보기
<20> Amazon EKS 배워보기
<1> Amazon EKS 구축
1
https://brunch.co.kr/@topasvga/1815
2
https://brunch.co.kr/@topasvga/1876
<2> 게임 컨테이너 올리기
1
clb에 Pod (컨테이너1개) 생성해 외부 노출하기
디플로이먼트를 만들고, LB를 생성하는 작업 2가지를 해야 한다.
그러면 , LB 가 생긴다.
https://brunch.co.kr/@topasvga/1868
2
확인
LoadBalancer가 위처럼 생성되었다면 웹브라우저에서 접속해보자.
af39999999999999999999999
방향키를 움직여 게임을 해보자
<3> GSLB에서 dns 매칭하기
1
Route53에서 매칭하기?
www.bestgame10.com 을 cname으로 LoadBalancer로 변경하자
변경전
www.bestgame10.com 100.1.1.1
변경후
www.bestgame10.com cname afxxxxxxxxxxxxxxxxxxx.elb.amazonaws.com
3
으로 접속해보자~
<4> ops-view 설치해 구성 보기 (옵션)
1
https://brunch.co.kr/@topasvga/1867
2
웹브라우저로 접속해 확인
3
명령어로 확인
pod 2개가 각각 다른 node에 떠 있다 ~~
watch -d kubectl get pod,rs,svc,ds,nodes -owide
<5> Node 수를 늘려보자~
1
Node 를 늘려보자~
변경전
node 2
변경후
node 4
2
work node 수 늘리기
오토스케일링 그룹 이름을 알아야 한다
aws autoscaling describe-auto-scaling-groups --query "AutoScalingGroups[? Tags[? (Key=='eks:cluster-name') && Value=='myeks']].[AutoScalingGroupName, MinSize, MaxSize,DesiredCapacity]" --output table
echo ${ASG_NAME}
ASG_NAME=eks-ng-a8d19dc2-20be0-0c6b-1d16-a9e16995bda2
echo ${ASG_NAME}
aws autoscaling describe-auto-scaling-groups --query "AutoScalingGroups[? Tags[? (Key=='eks:cluster-name') && Value=='myeks']].[AutoScalingGroupName, MinSize, MaxSize,DesiredCapacity]" --output table
aws autoscaling update-auto-scaling-group --auto-scaling-group-name ${ASG_NAME} --min-size 2 --desired-capacity 2 --max-size 6
aws autoscaling describe-auto-scaling-groups --query "AutoScalingGroups[? Tags[? (Key=='eks:cluster-name') && Value=='myeks']].[AutoScalingGroupName, MinSize, MaxSize,DesiredCapacity]" --output table
https://brunch.co.kr/@topasvga/1888
<6> Pod를 늘려보자~
1
kubectl scale deployment deployment-2048 --replicas=10
kubectl scale deployment deployment-2048 --replicas=20
kubectl scale deployment deployment-2048 --replicas=100
2
앗! node 수가 부족하다~
node 서버의 사양에 따라 넣을수 있는 Pod 수가 제한된다.
Node 수를 8개로 늘리자~ (2분 정도 기다린다~)
aws autoscaling update-auto-scaling-group --auto-scaling-group-name ${ASG_NAME} --min-size 2 --desired-capacity 8 --max-size 10
k get nodes
aws autoscaling describe-auto-scaling-groups --query "AutoScalingGroups[? Tags[? (Key=='eks:cluster-name') && Value=='myeks']].[AutoScalingGroupName, MinSize, MaxSize,DesiredCapacity]" --output table
3
pod를 다시 2개로
kubectl scale deployment deployment-2048 --replicas=2
4
node를 다시 2개로
aws autoscaling update-auto-scaling-group --auto-scaling-group-name ${ASG_NAME} --min-size 2 --desired-capacity 2 --max-size 6
<7> 추가 테스트
위 내용은 CLB(클래식 로드밸런서)를 이용한 구축이다.
IP 타입의 NLB 또는 IP 타입의 ALB 로 구축해보자~
https://brunch.co.kr/@topasvga/1868
https://brunch.co.kr/@topasvga/1869
<8> 삭제
1
eks 모니터링을 eksmon 으로 cname 으로 지정해서 사용해보자~
k8smon은 온프라미스 모니터링이 되겠죠
aksmon은 azure 모니터링 ^^
2
pod를 지워도 deployment로 배포되어 pod가 다시 살아 난다.
deployment와 service를 지워야 한다. ~
3
k delete deploy --all
k delete service --all
ops-view도 같이 삭제되니 참고~
<10> 전체 프로젝트 보기
https://brunch.co.kr/@topasvga/1927
<20> Amazon EKS 배워보기
(몰아보기) Amazon EKS 실습
https://brunch.co.kr/@topasvga/1816
감사합니다.