python과 aws를 이용하여 게임 테스트 환경 구축하기
TRANSCRIPT
![Page 1: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/1.jpg)
2017iFunFactoryDevDay-GreatTechnologyForGreatGames-
Python 과 AWS를 이용하여게임 테스트환경 구축하기Great Technology For Great Games
발 표 자 : 민 영 기
m i c h a e l m i n @ i f u n f a c t o r y . c o m
![Page 2: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/2.jpg)
2017iFunFactoryDevDay-GreatTechnologyForGreatGames-
01 왜 클라우드인가?
Flexibility for a wide range of games
![Page 3: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/3.jpg)
32017iFunFactoryDevDay-GreatTechnologyForGreatGames-
게임 테스트Chapter 01.
Great Technology For Great Games
![Page 4: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/4.jpg)
42017iFunFactoryDevDay-GreatTechnologyForGreatGames-
게임 테스트Chapter 01.
Great Technology For Great Games
•재미 테스트•정말 게임이 재미있나
•기능 테스트•기획한 대로, 버그 없이 만들어졌나
•부하/스트레스 테스트•서비스할 만한 성능이 되나
![Page 5: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/5.jpg)
52017iFunFactoryDevDay-GreatTechnologyForGreatGames-
부하 테스트Chapter 01.
Great Technology For Great Games
•서버 스펙이 얼마나 좋아야 하나
•최대 동접이 몇 명인가
•동접(요청) 증가에 따른 상태 변화는?
![Page 6: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/6.jpg)
62017iFunFactoryDevDay-GreatTechnologyForGreatGames-
부하 테스트Chapter 01.
Great Technology For Great Games
게임 서버
더미 클라이언트
![Page 7: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/7.jpg)
72017iFunFactoryDevDay-GreatTechnologyForGreatGames-
부하 테스트Chapter 01.
Great Technology For Great Games
클라우드에서서비스 할 것도
아닌데…
그냥사무실에서
하면안 되나요?
![Page 8: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/8.jpg)
82017iFunFactoryDevDay-GreatTechnologyForGreatGames-
부하 테스트Chapter 01.
Great Technology For Great Games
하지만…
![Page 9: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/9.jpg)
92017iFunFactoryDevDay-GreatTechnologyForGreatGames-
부하 테스트Chapter 01.
Great Technology For Great Games
게임 서버
더미 클라이언트
![Page 10: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/10.jpg)
102017iFunFactoryDevDay-GreatTechnologyForGreatGames-
부하 테스트용 서버Chapter 01.
Great Technology For Great Games
•스펙 좋은 서버 머신 필요
•다양한 스펙의 머신 필요
•다수의 머신 필요
![Page 11: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/11.jpg)
112017iFunFactoryDevDay-GreatTechnologyForGreatGames-
부하 테스트Chapter 01.
Great Technology For Great Games
게임 서버
더미 클라이언트
![Page 12: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/12.jpg)
122017iFunFactoryDevDay-GreatTechnologyForGreatGames-
더미 클라이언트Chapter 01.
Great Technology For Great Games
•코어 많은 머신 필요
•Nic 가 좋은 머신 필요
•많은, 더 많은 머신 필요
![Page 13: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/13.jpg)
132017iFunFactoryDevDay-GreatTechnologyForGreatGames-
부하 테스트Chapter 01.
Great Technology For Great Games
게임 서버
더미 클라이언트
![Page 14: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/14.jpg)
142017iFunFactoryDevDay-GreatTechnologyForGreatGames-
네트워크Chapter 01.
Great Technology For Great Games
•회선/사무실 라우터가 병목이 될 수도• Bandwidth•라우터의 전송 속도
•사무실 내 네턱 속도 저하로 인한 갈굼
![Page 15: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/15.jpg)
152017iFunFactoryDevDay-GreatTechnologyForGreatGames-
유지 비용 문제Chapter 01.
Great Technology For Great Games
•성능 좋은 장비들이 필요
•성능 좋은 장비들이 많이 필요
![Page 16: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/16.jpg)
162017iFunFactoryDevDay-GreatTechnologyForGreatGames-
질러라?Chapter 01.
Great Technology For Great Games
![Page 17: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/17.jpg)
172017iFunFactoryDevDay-GreatTechnologyForGreatGames-
효율성Chapter 01.
Great Technology For Great Games
성능 좋은(=비싼) 장비가
많이 필요하지만
항상 필요한 건 아님
![Page 18: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/18.jpg)
182017iFunFactoryDevDay-GreatTechnologyForGreatGames-
왜 클라우드인가Chapter 01.
Great Technology For Great Games
필요한 리소스를필요한 때에 사용하고사용한 만큼만 지불
![Page 19: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/19.jpg)
2017iFunFactoryDevDay-GreatTechnologyForGreatGames-
02 왜AWSPython인가?
Flexibility for a wide range of games
![Page 20: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/20.jpg)
202017iFunFactoryDevDay-GreatTechnologyForGreatGames-
부하 테스트Chapter 02.
Great Technology For Great Games
•큰 데이터를 전송해야 하는 경우가 있음
•로그•디비 덤프•기타 메타데이터
국내 데이터센터가 존재하는 서비스를 사용
![Page 21: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/21.jpg)
212017iFunFactoryDevDay-GreatTechnologyForGreatGames-
API/SDKChapter 02.
Great Technology For Great Games
•인스턴스 컨트롤 자동화에 필요
•대부분 RESTAPI 만 제공
• RESTAPI는 요청생성, 응답 파싱이 어려움
• SDK를 제공하는 서비스 사용
![Page 22: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/22.jpg)
222017iFunFactoryDevDay-GreatTechnologyForGreatGames-
Amazon RDSChapter 02.
Great Technology For Great Games
• AMAZONRelationalDatabaseService
• RDBMS를 서비스 형태로 제공
•스냅샷 생성, 자동 백업 등의 기능 제공
![Page 23: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/23.jpg)
232017iFunFactoryDevDay-GreatTechnologyForGreatGames-
Amazon ElasticacheChapter 02.
Great Technology For Great Games
• In-memory메모리 스토리지
•Memcached,Redis 사용 가능
•운영 및 안정성 확보에 필요한 기능 제공•스냅샷 생성 및 백업•샤딩
![Page 24: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/24.jpg)
242017iFunFactoryDevDay-GreatTechnologyForGreatGames-
부하 테스트Chapter 02.
Great Technology For Great Games
테스트용도로쓸모가있나요?
![Page 25: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/25.jpg)
252017iFunFactoryDevDay-GreatTechnologyForGreatGames-
RDS/ElasticacheChapter 02.
Great Technology For Great Games
•별도의 설치과정 없이 사용 가능•모니터링 기능 지원
![Page 26: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/26.jpg)
262017iFunFactoryDevDay-GreatTechnologyForGreatGames-
왜 Python인가Chapter 02.
Great Technology For Great Games
![Page 27: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/27.jpg)
2017iFunFactoryDevDay-GreatTechnologyForGreatGames-
03AWS 상에 Boto3 로테스트 환경 만들기
Flexibility for a wide range of games
![Page 28: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/28.jpg)
282017iFunFactoryDevDay-GreatTechnologyForGreatGames-
Boto3Chapter 03.
Great Technology For Great Games
• AWS의 officialpythonsdk
• Json model기반 구현
•OOP기반의 리소스 관리(일부만…) 지원
![Page 29: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/29.jpg)
292017iFunFactoryDevDay-GreatTechnologyForGreatGames-
Session Chapter 03.
Great Technology For Great Games
•인증 정보 등을 담는 자료구조
•모든 boto3api 는 session상에서 통신
![Page 30: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/30.jpg)
302017iFunFactoryDevDay-GreatTechnologyForGreatGames-
Resource Chapter 03.
Great Technology For Great Games
•Objectoriented, 고수준 인터페이스
• Aws상의 자원에 대응
• Ec2instance,VPC,Subnet….
![Page 31: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/31.jpg)
312017iFunFactoryDevDay-GreatTechnologyForGreatGames-
CollectoinChapter 03.
Great Technology For Great Games
• Resource들의 묶음
•보통 resource에서 관련있는 resource관리용으로 사용
•메소드들은 Chain형태로 사용 가능
![Page 32: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/32.jpg)
322017iFunFactoryDevDay-GreatTechnologyForGreatGames-
WaiterChapter 03.
Great Technology For Great Games
• Resource의 상태가 변경될 때까지 block
•순차적으로 실행되어야 하는스크립트작성 등의 경우에 유용
![Page 33: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/33.jpg)
332017iFunFactoryDevDay-GreatTechnologyForGreatGames-
ClientChapter 03.
Great Technology For Great Games
•저수준 api•모든 AWSAPI 사용 가능
![Page 34: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/34.jpg)
342017iFunFactoryDevDay-GreatTechnologyForGreatGames-
구성도Chapter 03.
Great Technology For Great Games
![Page 35: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/35.jpg)
352017iFunFactoryDevDay-GreatTechnologyForGreatGames-
TaggingChapter 03.
Great Technology For Great Games
•리소스 별로 key의종류가 다름• Id• name
• Tagging활용추천•한 타입의 리소스를여러개관리할 때편리
• Tagging지원하지않는 리소스도 있음
![Page 36: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/36.jpg)
362017iFunFactoryDevDay-GreatTechnologyForGreatGames-
Endpoint 관리Chapter 03.
Great Technology For Great Games
•각호스트에 aws api 설치
• ElasticIP 등 다른 리소스활용
•접속 정보를 파일에 기록각머신에 전송
![Page 37: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/37.jpg)
372017iFunFactoryDevDay-GreatTechnologyForGreatGames-
VPC 생성Chapter 03.
Great Technology For Great Games
•보안 설정을위해 별도 생성권장
•기본적으로외부에서 접근 불가
•의존성 있는 리소스가 많아 관리 어려움
![Page 38: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/38.jpg)
382017iFunFactoryDevDay-GreatTechnologyForGreatGames-
VPC 생성Chapter 03.
Great Technology For Great Games
•외부 접근허용위해 다음작업 필요
• Internetgateway생성 및붙임
• Routingtable에 Internetgateway추가
• Securitygroup에 정책추가 후연동
![Page 39: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/39.jpg)
392017iFunFactoryDevDay-GreatTechnologyForGreatGames-
Chapter 03.
Great Technology For Great Games
![Page 40: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/40.jpg)
402017iFunFactoryDevDay-GreatTechnologyForGreatGames-
Chapter 03.
Great Technology For Great Games
![Page 41: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/41.jpg)
412017iFunFactoryDevDay-GreatTechnologyForGreatGames-
남은 과제Chapter 03.
Great Technology For Great Games
•보안 설정•데모 버전은 모든 서비스가열려 있음
•저장소 공간•게임 로그등을남기려면저장소 변경 필요
•비용• Aws 비용계산시 사용시간은 올림계산
![Page 42: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/42.jpg)
42
Great�Technology�For�Great�GamesGreat�Technology�For�Great�Games
Q&A
![Page 43: Python과 AWS를 이용하여 게임 테스트 환경 구축하기](https://reader030.vdocuments.mx/reader030/viewer/2022013104/58f9ad2c760da3da068b95a8/html5/thumbnails/43.jpg)
2017iFunFactoryDevDay-GreatTechnologyForGreatGames-
iFunFactory Development Teams
www.ifunfactory.com
+82-70-4923-6566
THANKS!Grea t Techno l ogy Fo r G r ea t Games , i FunFac t o r y