저작권 안내
- 책 또는 웹사이트의 내용을 복제하여 다른 곳에 게시하는 것을 금지합니다.
- 책 또는 웹사이트의 내용을 발췌, 요약하여 강의 자료, 발표 자료, 블로그 포스팅 등으로 만드는 것을 금지합니다.
자동 확장 가능한 모바일 게임 서버 구축하기
이재홍 http://www.pyrasis.com 2014.03.24 ~ 2014.06.30
게임 서버 Auto Scaling 설정하기
게임 서버 AMI도 준비되었으니 EC2 인스턴스 생성 옵션 설정과 Auto Scaling 그룹을 생성합니다(그림 33-12).
- My AMIs에서 방금 생성한 웹 서버 AMI(ExampleGameAutoScalingAMI)를 사용합니다. 기본 Amazon Linux AMI를 선택하지 않도록 주의합니다.
- S3, DynamoDB 접근용 IAM 역할(ExampleGameRole) 사용하도록 설정합니다.
- CloudWatch 세부 모니터링 사용하도록 설정합니다.
- User data에 아래 코드 입력합니다.
- 나머지는 기본값 그대로 사용합니다.
User data
#!/bin/bash
cd /home/ec2-user
aws s3 sync --region=ap-northeast-1 \
s3://examplegame.src/ExampleGameServer ExampleGameServer
cd ExampleGameServer
npm install
forever start -w app.js
S3 버킷에서 웹 서버 소스를 최신 버전으로 업데이트합니다. 그리고 package.json 파일에 모듈이 추가되었을 때 추가된 모듈을 설치할 수 있도록 npm install 명령을 한 번 더 실행하고 forever 명령을 실행합니다.
생성될 EC2 인스턴스에서 사용할 Security Group을 설정합니다. Create a new security group으로 Security Group을 새로 생성할 때는 Add Rule 버튼을 클릭하여 HTTP 프로토콜(80번 포트)을 꼭 추가합니다.
Select an existing security group으로 이미 있는 Security Group을 선택할 때는 HTTP 프로토콜(80번 포트)이 열려있는 Security Group을 선택합니다.
Auto Scaling 그룹을 생성합니다(그림 33-14).
- 그룹 이름은 ExampleGameAutoScalingGroup으로 합니다.
- Subnet 부분을 클릭하여 EC2 인스턴스를 생성할 서브넷을 선택합니다.
- Load Balancing을 사용하도록 설정하고, 앞에서 생성한 ELB 로드 밸런서를 선택합니다.
- CloudWatch 세부 모니터링을 사용하도록 설정합니다.
- 나머지는 기본값 그대로 사용합니다.
- Auto Scaling 정책은 '19.2 EC2 생성 옵션 설정과 Auto Scaling 그룹 생성하기'를 참조하여 설정하기 바랍니다.
웹 서버 Auto Scaling 그룹을 생성한 모습입니다.
저작권 안내
이 웹사이트에 게시된 모든 글의 무단 복제 및 도용을 금지합니다.- 블로그, 게시판 등에 퍼가는 것을 금지합니다.
- 비공개 포스트에 퍼가는 것을 금지합니다.
- 글 내용, 그림을 발췌 및 요약하는 것을 금지합니다.
- 링크 및 SNS 공유는 허용합니다.
Published
2014-09-30