[Gaming on AWS] AWS 위에서의 Dev & Test, 그리고 비용 - 위메이드
-
Upload
amazon-web-services-korea -
Category
Documents
-
view
6.716 -
download
6
description
Transcript of [Gaming on AWS] AWS 위에서의 Dev & Test, 그리고 비용 - 위메이드
AWS 위에서의 Dev & Test, 그리고 비용
위메이드 강명완
Who am I ?
■ 이 력 1. ㈜구름인터렉티브(2007년 04월 ~ 2008년 07월) - 시스템운영팀 내 시스템엔지니어로 업무 - 게임 시스템 구축 및 운용 2. ㈜갈라랩_구 이온소프트(2008년 8월 ~2012년 1월) - 기술지원팀 내 시스템엔지니어로 업무 - 국내 및 해외 시스템 구축 및 운용 3. ㈜위메이드(2012년 1월 ~ 현재) - 인프라운영팀 내 시스템엔지니어로 업무 - 국내 PC 게임 시스템 구축 및 운용 - 모바일 게임 시스템 구축 및 운용
개발/테스트 환경의 3가지 특징
일시적으로 필요하며, 끝나면 사라짐
Disposable
운영 환경으로 빠른 전환이 필요함
Fast Transition to Prod
제한이 없는 리소스 필요
Numerous
테스트 하기 전에 Wemade가 한 일?
테스트 하기 전에 Wemade가 한 일?
테스트 하기 전에 Wemade가 한 일?
1. 해외 진출의 숙제!! 2. 인프라는 어디에? 3. 가상화? CLOUD?
테스트 환경 구성하기
기존 IDC를 확장한다
아마존 VPC를 세팅한다 (Virtual Private Cloud)
테스트 환경 구성하기
테스트 환경 구성하기
원하는 테스트 환경을 VPC 내에 세팅합니다.
테스트 환경 구성하기
기존 IDC와 Amazon VPC와 VPN으로 연결함
테스트 환경 구성하기
테스트가 끝난 후에는 모두 삭제하고 VPN도 종료
테스트의 일시성 측면
아마존과 IDC 환경 비교
성능 테스트 중 성능 테스트 후
• Test만의 목적으로 100대, 200대의 Resource를 준비해 놓기는 어려움
• Test가 완료 된 이후에는 바로 Turn Off하여 비용 Zero
$100 $100
$100 $0
빠른 운영환경 전환
템플릿화 가능 (AMI)
Custom building block
Generic image
• 테스트가 완료되어 검증된 인스턴스에 대해서는 AMI(Amazon
Machine Image 통해 S3에 저장 (99.999999999% 가용성)
빠른 운영환경 전환 (Cont.)
운영 시 서버 Spec 즉시 업그레이드
• Change Instance Type 기능을 통
해 Scale Up이 즉시 가능
제한없는 Resource 활용
• AMI로부터 Instance 생성
• Game Server Module 설치
• 단위 성능 테스트
• 기능 테스트
제한없는 Resource 활용
• 제한 없는 인스턴스 생성
• Scalability 테스트 용이
제한없는 Resource 활용
• 테스트가 끝난 후 Launching 시
까지는 다시 축소 개발 모드
ELB Performance Test
ELB란 (Elastic Load Balancing)?
• Traffic을 Backend로 고르게
분산시켜 주는 기능
• DNS Name으로 접근 가능
• ELB는 하나의 하드웨어가 아
닌 여러개의 Component로
구성된 서비스임
• 내부적으로 Scale-up, Scale-
out을 하여 사용자는 하나의
ELB만 사용 하면 됨
myLB-1234567890.us-east-1.elb.amazonaws.com
ELB
What is ELB?
ELB Performance Test
ELB의 동작 원리
ELB
• 사용자의 증감에 따라 ELB가 가지고 있는
Resource 역시 Scale Up/Down 함
• Scale Up이 되는 경우 IP가 여러개가
Resolve되거나 IP가 바뀌는 경우를 봄
• 한번 변화가 있을 때 1분~7분 정도의 시간
이 소요되는 것으로 보임
• 만약 5분 내에 기존 사용자의 수보다 50%이
상 많은 사용자가 몰리는 경우 Pre-Warm
통해 해결할 수 있음
ELB Performance Test
Prewarm 정보
• Pre-warm은 AWS
Support에 가입이 되어
있어야 신청가능
• TPS, Transaction Size,
Use Case등을 명기하여
Support 신청
• 해당 Load를 견딜 수 있
는 ELB를 PreWarm해
줌
• ELB Name: myELB.us-west-1.elb.amazonaws.com
• Traffic delta OR request rate expected at surge: 1000 to 10,000 in 5 minutes
• Requests per second: 50,000/sec
• Request + Response size (bytes): 10KBytes …… …… • Use-case: ELB Performance Test
• Period: permanent by production - Start date: 2014. 1. 24 - End Date: 2014. 2.24
ELB Performance Test
Prewarm 적용 사례
• nGrinder 을 이용하여 성능 테스트 결과
(Pre-Warm 신청 전 성능 테스트 그래프)
ELB Performance Test
Prewarm 적용 사례
• nGrinder 을 이용하여 성능 테스트 결과
(Pre-Warm 적용 후 성능 테스트 그래프)
ELB Performance Test
ELB Monitoring Metrics
• Latency : ELB와 Back-End 서버간의 지연시간
• ELB HTTP 4XX – 5XX : ELB 단에서 생성된 Error Code
• HTTP 2XX – 5XX : BackEnd 단에서 생성된 Response Code
• SurgeQueueLength : ELB에서 Backend로 가지 못하고 Queue에 있는 요청
• Spillovers : SurgeQueue가 꽉 채워져 ELB에 의해 Reject 된 요청
ELB Performance Test
Tips for ELB Testing
• Sticky Sessions 설정이 되어있는 경우 테스트 시 반드시 Unique한 User로 인식이 되는지 확인해야함. 아닌 경우 특정 Backend 서버로만 트래픽이 몰리는 현상 발생
• ELB의 Connection Timeout은 60초로 초기 설정되어있으나, AWS Support를 통해 17분까지 조정이 가능함
• ELB는 관리가 필요없고 알아서 Scaling이 되고 가용성이 높은 장점이 있음
• 만약 특정기능 사용을 원하는 경우 HAProxy, Riverbed Stingray 등과 같은 ELB를 MarketPlace에서 검색할 수 있음
AWS 위에서 비용 최적화
Cost Optimization
Pay as you go!
집에서 전등을 끄면 전기세가 안 나오듯
클라우드에서 서버를 끄면
비용이 안나감
80% 20%
50% 50%
서버 비용 Traffic
좋은 예
나쁜 예
하나의 서버당 효율을 높여라!
비용 절감을 위한 3가지 옵션
선납금을 통한 할인, 5개월 만에 손익분기점 도달
Reserved Instance
10% 미만의 Low Utilization 스펙 Down
Instance Type
트래픽에 따라 유동적으로 Provisioning
Elastic Capacity
1년 최대 45% Saving
한단계 Spec Down 시
50% Saving
Auto Scaling 적용 시
30% 이상 Saving
비용절감 보안 가용성 성능 • Low Utilization 되고 있는 인스턴스 자체 파악
• RI 추천 기능
Trusted Advisor
• Trusted Advisor 의 사례 - 현재 사용하고 있는 컨텐츠(EC2, ELB, RDS, Route53)등에 대해 불 필요하게 사용되는 리소스를 측정하여 고객에게 제시하여 비용 절감의 효과를 볼 수 있다.
Trusted Advisor
• Trusted Advisor 의 사례 - 현재 위메이드에서는 AWS에서 제시하고 있는 비용 절감 3가지 방법 중에 Instance Type 변경 및 Elastic Capacity(Auto Scaling) 을 올해 2월 부터 적용하여 올해 1월 AWS 사용료 대비 25%의 비용을 절감한 상태입니다. - 비용 절감을 이루고 번외로 인스턴스도 추가적으로 증가한 상태이므로 실질적인 비용 절감은 MAX 사용료 대비 30% 정도 예상하고 있습니다.
Trusted Advisor
…….
적절한 Instance Type 고르기
large에서 medium으로 내리게 되면 50%를 바로 절감
-50%
-50%
-50%
X2
X2
X2
http://www.rankey.com/images/infographic/2013/rankey_2013infographic01_timeline_201402.png
우리는 이정도는 준비해 놔야지..
(X)
Auto Scaling
Auto Scaling