-
2019 Games on AWS 후기 & 요약개발, 코딩 2020. 3. 8. 16:41
행사 관련 아마존 공식 사이트의 홍보 링크
트랙: AWS 사용자용 강연 + AWS 사용자를 위한 만렙 달성 트랙
참고로 여기 SlideShare에 프레젠테이션도 AWS Korea에서 올렸으니 참고하실 수 있습니다.
앞의 강연부터 차례차례 요약해보겠습니다. 중간중간 강연자의 의도와 맞지 않는 부분이 있을 수 있습니다.
기조 연설
- 2016년 서울리전 오픈 이후 2018년에 서울리전 3rd AZ 오픈
- 왜 쓰는가? 오토스케일링. + 글로벌. AWS는 새로운 표준이다.
- 어쨌든 한국 들어오고 나서 다양한 feature들을 추가했다. DynamoDB, Aurora 등. 한국인이 요청해서 추가한 것도 많다
- 대만 접속 latency가 높아서 홍콩 리전을 오픈함
- 한국어 case를 지원한다. 한국내 cse 조직을 구성해 빠르게 확충중이다.
Does your IT really matter?
- 정말 당신의 IT가 중요한가? 결론부터 말하면 Yes.
- 옛날에는 철도가 큰 자산이었다. 그래서 투자를 많이 했었는데 요즘은 잘 안한다.
- IT도 요즘 모두가 중요하다고 생각해 투자를 많이 한다. 하지만 IT가 비즈니스에 큰 영향을 정말로 끼치는게 맞는가?
- IT Value Chain의 개념이 있다. 맨 위에 비즈니스 가치. 가장 밑에는 Infra. 인프라가 가장 중요하다.
- 예를 들어 게임회사. 게임회사가 성공하려면 반드시 더 많은 시도를 해야한다.
- 더 많은 시도를 하려면? 무조건 Amazon AWS를 쓰는게 좋다. 모듈화 및 MSA. 결론은 무조건 cloud를 사용하자.
- 클라우드가 비싸지 않나요? nono. 우리 아마존이 Business Value Workshop에서 도와줄 것이다. 그리고 RI, Spot instance를 쓰면 비용이 절감됨
새로운 게임을 준비하며 아쉬웠던 2%를 채워줄 AWS 서비스와 기능 업데이트
- (바나나: 이 강연은 진짜 최근에 업데이트된 AWS 서비스와 기능 업데이트를 알려주는 강연이므로, SlideShare에서 프레젠테이션을 직접 보시는 것을 추천합니다)
- 바레인, 홍콩 리전 추가, AWS Snowball, VPC, ELB에서 UDP 로드 밸런싱 추가, C5N 인스턴스, arm 기반 A1 인스턴스, EC2 hibernation, Dynamo DB transaction, Client VPN 등등
- 추가로 aws.amazon.com/ko/new 여기서도 보세요.
Aurora로 게임 데이터베이스 레벨 업!
- 근본적으로 Aurora가 왜 우수한지에 대한 강연
- 전통적인 DB Architecture는 하나에 박스에 구성된 Monolithic stack(SQL Caching + Logging + Storage)이다.
- 근데 여기서 Storage를 분리한게 Aurora임
- Amazon Aurora는 Primary instance에 쓰고 4/6 quorum을 해서 쓰기 성능이 mysql과 비교했을 때에 비해 훨씬 빠름. Async여서 그런듯
- Aurora read scaling. 공유 스토리지이고 복제에 쓰기가 없고 페이지 캐시만 업데이트 함. Replica lag도 20ms를 넘지 않음
- 처리량 최적화. Connection 처리 thread 모델. Aurora는 thread pool과 epoll을 사용해서 lock을 잘 안걸리게 함.
- Aurora는 DML 변경시 table lock이 필요 없는 경우가 많다. Modify on write여서 영향을 잘 안주고, 테이블 끝에 nullable column 추가 지원
- Aurora Serverless 등의 고급 기능. SPOF 없도록 DB connection 분리등을 진행함
AWS에서 분산 서비스 거부 공격(DDoS)을 고민하지 않는 방법 및 사례 소개
- 결론은 AWS Shield Advanced + AWS WAF를 쓰면 된다
- 요즘 LoL, 콜옵, 마크, 배틀필드 등 다양한 게임들이 DDoS 영향을 받는다.
- 데이터센터 시절에는 DDoS 대응이 참 어려웠지만 요즘은 바로 Firewall Manager 등을 이용해 AWS Instance에 대해 자동으로 해준다
- 그냥 AWS Shield도 있지만 Shield Advanced가 더 좋다.
- 80% 정도는 AWS Shield가 막아주는데 나머지는 App layer를 분석해서 하는 공격이다.
- AWS WAF를 적용한 실제 사례를 PUBG 홍석주님께서 발표해주심
- 프레젠테이션 보시는 것을 추천
AWS 최적화 사용을 위해 운영자가 아닌 개발자들이 해야 할 일
- 요즘 서버 개발자들중에 인프라를 모르는 사람들이 꽤 있는데 인프라를 알아야 큰 그림이 보이고 진짜 잘해질 수 있다.
- 또 AWS를 on premise 경험에 기반해 사용하면 안된다. AWS의 장점을 살린 아키텍쳐로 구현을 해야한다
- 개발자들이 실제로 해야할 것들을 운영쪽, 보안쪽, 신뢰성 등등으로 나눠놔서 이 모든것들을 해야한다.
코드 기반으로 인프라 운영하기
- Ansible, Terraform, AWS Cloud Development Kit등으로 Infrastructure as code 구축 가능
- 직접 AWS Console에서 설정을 바꿔줄 수 있지만 이 설정들이 많아지면 재구축하기도 너무 불편하다.
- 이를 위해 인프라 설정에 대한 코드를 작성해놓고 나중에 해당 코드로 인프라를 재구축하고 유지보수하기 쉽도록 한 것
- 직접 실습하는 시간을 많이 가짐
'개발, 코딩' 카테고리의 다른 글
2023 카카오 백엔드 신입 공채 합격 후기 (1) 2023.07.14 신입 서버 개발자 정규직 취업 후기 & 준비 과정(feat. 사이드 프로젝트) (0) 2020.03.28