記錄

생활코딩_AWS) Auto Scaling 본문

Web/AWS

생활코딩_AWS) Auto Scaling

surhommejk 2018. 8. 23. 15:25

이번 수업(https://opentutorials.org/course/2717/11336) 에서는 AutoScaling을 배웠다. 컴퓨터를 자동으로 생성해서 해당 컴퓨터가 자동으로 서비스를 시작하게 했다가 트래픽이 줄어들면 과금이 발생하지 않도록 자동으로 컴퓨터를 없애주는 기능이다. 클라우드 컴퓨팅의 이점인 탄력성을 제대로 보여주는 서비스이다.

EC2 탭에 보면 AUTO SCALING이 있는데 여기서 설정을 시작한다. Launch Configurations와 Auto Scaling Groups가 있는데 Configurations 탭에서는 말 그대로 설정을 하는 탭이고 그런 설정을 기반으로 Auto Scaling Groups에서 Auto Scaling을 시작한다.

먼저 Launch Configurations를 하면 Auto Scaling에 사용될 이미지를 선택해야 한다. 거기서 Quick Start 말고 My AMIs를 누르면 내가 만들어 뒀던 이미지를 선택할 수 있게 된다. 원하는 이미지를 선택 후 인스턴스를 만드는 인터페이스가 시작되는데 원하는 대로 설정을 하면 된다. 최종적으로 설정이 다 끝났으면 Launch Configurations를 최종적으로 만들게 된다.

Launch Configurations가 만들어 졌으면 이제 본격적으로 Auto Scaling을 하도록 하는데 여기서는 두 가지 포인트가 있다.

1) 어떤 조건에서 Auto Scaling이 작동하게 할 것인가

2) Auto Scaling 시 어떤 인스턴스를 생성하게 할 것인가

우선 Launch Configurations 작업이 끝났으면 AutoScaling Group을 만들면 된다. 절차대로 편하게 진행하면 되는데 그 중 서브넷이라는 부분은 필기가 필요해서 포스팅 한다. 서브넷은 두 개를 지정하게 되는데 하나의 가용 구역에서 문제가 발생하면 보험성으로 다른 가용구역이 이를 받아주기 위함이다.

고급세부정보(Advanced Details)에서는 로드밸런싱 등 여러가지를 더 설정할 수 있는데 로드밸런싱에서 원하는 로드 밸런서를 설정해두면 인스턴스 생성시 자동으로 해당 로드밸런서 밑에 인스턴스를 둘 수 있게 된다.

단계를 진행하다 보면 Create Auto Scaling Group에서 두 가지 탭을 만나게 된다.

1) Keep this group at its initial size

2) Use scaling policies to adjust the capacity of this group

여기서 1번을 누르면 내가 정한 인스턴스 갯수를 유지하겠다는 뜻이고 2번은 원하는 인스턴스의 수를 조건에 따라 설정하도록 하겠다는 것이다. 인스턴스 갯수의 하한선, 상한선을 두는 것이다. 또 알람 기능이 있는데 특정 조건이 되면 사용자에게 이메일이 가도록 하는 기능이다. 요금 폭탄을 미리 예방할 수 있는 기능이라고 보면 된다. 알람이 울리는 조건은 CPU 점유율 등 세부적으로 설정이 가능하다.

강의에서 이 부분을 콕 짚어서 말하고 있지는 않은데 맥락상 Auto Scaling은 반드시 ELB와 엮여야만 사용이 가능한 기능인 것 같다. 왜냐하면 트래픽을 분담해줄 인스턴스를 자동으로 생성해주는 것이 Auto Scaling 기능의 핵심인데 둘 이상의 인스턴스가 트래픽을 분담하는 것이 ELB와 엮일 수 밖에 없기 때문이다. 강의에서도 ELB를 Auto Scaling에서 활용하고 있는데 아마 ELB와 반드시 엮여야만 Auto Scaling을 사용할 수 있는 것 같다.

'Web > AWS' 카테고리의 다른 글

생활코딩_AWS) RDS  (0) 2018.08.24
생활코딩_AWS) Simple Storage Service(S3)  (0) 2018.08.23
생활코딩_AWS) Scale Out  (0) 2018.08.23
생활코딩_AWS) Scale Up  (0) 2018.08.23
생활코딩_AWS) EC2 리눅스 인스턴스 접속  (0) 2018.08.23
Comments