Transcript
Page 1: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014
Page 2: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

How We

re:Invented our AWS ModelJonathan McCaffrey : Software Architect

Marty Chong : Sr. Network Engineer

GAM 304

Page 3: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

MARTY CHONGSR. NETWORK ENGINEER

IAAS TEAM

MARTY.CHONG @RIOTGAMES.COM

[email protected]

JONATHAN McCAFFREYSOFTWARE ARCHITECT

MEET YOUR PRESENTERS

Page 4: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

WHO IS RIOT?

Page 5: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014
Page 6: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

RIOT GAMES

Developer & publisher of League of Legends

Hosts some of the largest eSports events

Page 7: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

What is League of Legends?

2009LAUNCH

TEAMORIENTED

100+CHAMPS

MODERNFANTASY

Page 8: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

GAMEPLAY SCREESHOT #2

Page 9: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014
Page 10: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

Where in the World is.....

Page 11: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

League of Legends World Championship 2014

Page 12: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

LEAGUE OF LEGENDS STATS

7.5MILLIONPEAK CONCURRENT

PLAYERS

STATS RELEASED JANUARY 2014

67MILLIONMONTHLY ACTIVE

PLAYERS

MORE THAN

27MILLIONDAILY ACTIVE

PLAYERS

MORE THAN MORE THAN

Page 13: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

ADAPT CONCLUSIONOUR

STORYMOVESTART

INTRODUCTION

Page 14: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

What is LeagueOfLegends.com?

Page 15: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014
Page 16: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014
Page 17: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014
Page 18: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014
Page 19: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014
Page 20: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

League of Legends is a Global Product

Page 21: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014
Page 22: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014
Page 23: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

Goals for the site technology

Page 24: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

SECURITY

Page 25: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

SECURITY QUALITY

Page 26: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

AGILITYSECURITY QUALITY

Page 27: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

Lets look at how we applied these initially…

Page 28: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

INTRODUCTION ADAPT CONCLUSIONOUR

STORYMOVE

STARTIN THE DATACENTER

STRUGGLE TO DELIVER

Page 29: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

GAME SERVICES

ROUTER

DDoS MITIGATION

FIREWALL

LOAD BALANCER

EDGE

NA CMS

NA FORUMS

MySQLSERVER

FRONTEND SERVER

MySQLSERVER

FRONTEND SERVER

Page 30: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

GAME SERVICES

ROUTER

DDoS MITIGATION

FIREWALL

LOAD BALANCER

EDGE

NA CMS

NA FORUMS

MySQLSERVER

FRONTEND SERVER

MySQLSERVER

FRONTEND SERVER

Page 31: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

GAME SERVICES

ROUTER

DDoS MITIGATION

FIREWALL

LOAD BALANCER

EDGE

NA CMS

NA FORUMS

MySQLSERVER

FRONTEND SERVER

MySQLSERVER

FRONTEND SERVER

Page 32: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

GAME SERVICES

ROUTER

DDoS MITIGATION

FIREWALL

LOAD BALANCER

EDGE

NA CMS

NA FORUMS

MySQLSERVER

FRONTEND SERVER

MySQLSERVER

FRONTEND SERVER

Page 33: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

INTRODUCTION ADAPT CONCLUSIONOUR

STORYMOVE

STARTIN THE DATACENTER

STRUGGLE TO DELIVER

MONOLITHIC APPPHYSICAL SERVERSNETWORK SECURITYREVISIT GOALS

Page 34: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

INTRODUCTION ADAPT CONCLUSIONOUR

STORYMOVE

STARTIN THE DATACENTER

STRUGGLE TO DELIVER

MONOLITHIC APPPHYSICAL SERVERSNETWORK SECURITYREVISIT GOALS

Page 35: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

GAME SERVICES

ROUTER

DDoS MITIGATION

FIREWALL

LOAD BALANCER

EDGE

NA CMS

NA FORUMS

MySQLSERVER

FRONTEND SERVER

MySQLSERVER

FRONTEND SERVER

Page 36: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

CMS

Frontpage

News

Media Gallery

Comments

Account Management

Refer-a-friend

Page 37: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

CMS

Frontpage

News

Media Gallery

Comments

Account Management

Refer-a-friend

Page 38: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

CMS

Frontpage

News

Media Gallery

Comments

Account Management

Refer-a-friend

Page 39: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

INTRODUCTION ADAPT CONCLUSIONOUR

STORYMOVE

STARTIN THE DATACENTER

STRUGGLE TO DELIVER

MONOLITHIC APPPHYSICAL SERVERSNETWORK SECURITYREVISIT GOALS

Page 40: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

GAME SERVICES

ROUTER

DDoS MITIGATION

FIREWALL

LOAD BALANCER

EDGE

NA CMS

NA FORUMS

MySQLSERVER

FRONTEND SERVER

MySQLSERVER

FRONTEND SERVER

Page 41: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

?

Page 42: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

?

IN THE CMS

Bolt-On New Apps

Page 43: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

?

NEW APP

Page 44: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

?

IN THE CMS

Page 45: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

?

IN THE CMS

NEW APP

Page 46: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

INTRODUCTION ADAPT CONCLUSIONOUR

STORYMOVE

STARTIN THE DATACENTER

STRUGGLE TO DELIVER

MONOLITHIC APPPHYSICAL SERVERSNETWORK SECURITYREVISIT GOALS

Page 47: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

GAME SERVICES

ROUTER

DDoS MITIGATION

FIREWALL

LOAD BALANCER

EDGE

NA CMS

NA FORUMS

MySQLSERVER

FRONTEND SERVER

MySQLSERVER

FRONTEND SERVER

Page 48: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

DDoS Mitigation

Page 49: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

DDoS Mitigation Firewall

Page 50: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

DDoS Mitigation Firewall Strict Monitoring

Page 51: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

INTRODUCTION ADAPT CONCLUSIONOUR

STORYMOVE

STARTIN THE DATACENTER

STRUGGLE TO DELIVER

MONOLITHIC APPPHYSICAL SERVERSNETWORK SECURITYREVISIT GOALS

Page 52: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

SECURITY QUALITY AGILITYREVISITGOALS

Data Center had a lot of security features No CDN

Page 53: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

SECURITY QUALITY AGILITYREVISITGOALS

Separate stacks for CMS and Forums CMS did a lot of things Adding a new stack was very hard

Page 54: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

SECURITY QUALITY AGILITYREVISITGOALS

Static physical server topology

Page 55: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

INTRODUCTION ADAPT CONCLUSIONOUR

STORYSTART

MOVETO AWS

STRUGGLE TO SCALE

Page 56: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

LoLGAME

SERVICE

LoLGAME

SERVICE

RIOT DC 1

LoLGAME

SERVICERDS

FRONTEND SERVER

RDSFRONTEND

SERVER

VPCCONNECTIONS

ELBELB

CDNELB

COMMUNITY CMS

TOURNAMENT CMSPLAYERS

Page 57: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

ELBELB

LoLGAME

SERVICE

LoLGAME

SERVICE

RIOT DC 1

LoLGAME

SERVICERDS

FRONTEND SERVER

RDSFRONTEND

SERVER

VPCCONNECTIONS CDNELB

COMMUNITY CMS

TOURNAMENT CMSPLAYERS

Page 58: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

ELBELB

LoLGAME

SERVICE

LoLGAME

SERVICE

RIOT DC 1

LoLGAME

SERVICECDNRDS

FRONTEND SERVERVPC

CONNECTIONS ELB

RDSFRONTEND

SERVER

COMMUNITY CMS

TOURNAMENT CMSPLAYERS

Page 59: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

LoLGAME

SERVICE

LoLGAME

SERVICE

RIOT DC 1

LoLGAME

SERVICECDNRDS

FRONTEND SERVERVPC

CONNECTIONS ELB

RDSFRONTEND

SERVER ELBELB

COMMUNITY CMS

TOURNAMENT CMSPLAYERS

Page 60: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

LoLGAME

SERVICE

LoLGAME

SERVICE

RIOT DC 1

LoLGAME

SERVICERDS

FRONTEND SERVERVPC

CONNECTIONS CDNELB

RDSFRONTEND

SERVER ELBELB

COMMUNITY CMS

TOURNAMENT CMSPLAYERS

Page 61: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

LoLGAME

SERVICE

LoLGAME

SERVICE

RIOT DC 1

LoLGAME

SERVICERDS

FRONTEND SERVER

RDSFRONTEND

SERVER

VPCCONNECTIONS

DEV TEAMS

ELBELB

CDNELB

COMMUNITY CMS

TOURNAMENT CMSPLAYERS

Page 62: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

INTRODUCTION ADAPT CONCLUSIONOUR

STORYSTART

MOVETO AWS

STRUGGLE TO SCALE

STARTING WITH VPCMICRO-SERVICESAUTOMATIONREVISIT GOALS

Page 63: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

INTRODUCTION ADAPT CONCLUSIONOUR

STORYSTART

MOVETO AWS

STRUGGLE TO SCALE

STARTING WITH VPCMICRO-SERVICESAUTOMATIONREVISIT GOALS

Page 64: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

LoLGAME

SERVICE

LoLGAME

SERVICE

RIOT DC 1

LoLGAME

SERVICECDNRDS

FRONTEND SERVERVPC

CONNECTIONS

ELBELB

ELB

RDSFRONTEND

SERVER

COMMUNITY CMS

TOURNAMENT CMSPLAYERS

Page 65: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

VPC

VPC

VPC

Page 66: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

VPC

VPC

VPC 1# of VPNs

Page 67: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

VPC

VPC

VPC 2# of VPNs

Page 68: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

VPC

VPC

VPC 10# of VPNs

Page 69: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

VPC

VPC

VPC 20# of VPNs

Page 70: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

VPC

VPC

VPC 40# of VPNs

Page 71: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

!!# of VPNs

VPC

VPC

VPC

Page 72: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

!!# of VPNs

VPC

VPC

VPC

Page 73: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

INTRODUCTION ADAPT CONCLUSIONOUR

STORYSTART

MOVETO AWS

STRUGGLE TO SCALE

STARTING WITH VPCMICRO-SERVICESAUTOMATIONREVISIT GOALS

Page 74: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014
Page 75: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014
Page 76: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

LoLGAME

SERVICE

LoLGAME

SERVICE

RIOT DC 1

LoLGAME

SERVICERDS

FRONTEND SERVERVPC

CONNECTIONS CDNELB

RDSFRONTEND

SERVER ELBELB

COMMUNITY CMS

TOURNAMENT CMS

Page 77: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

COMMENTS SERVICE (JAVA)

Page 78: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

NEWS ARTICLE PAGE

COMMENTS UI (JAVASCRIPT)

COMMENTS SERVICE (JAVA)

Page 79: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014
Page 80: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

NEWS ARTICLE PAGE

COMMENTS UI (JAVASCRIPT)

COMMENTS SERVICE (JAVA)

CMS (PHP)

Page 81: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

INTRODUCTION ADAPT CONCLUSIONOUR

STORYSTART

MOVETO AWS

STRUGGLE TO SCALE

STARTING WITH VPCMICRO-SERVICESAUTOMATIONREVISIT GOALS

Page 82: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

EC2

Page 83: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

EC2 INSTANCE

Page 84: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

EC2 INSTANCECHEF

Page 85: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

EC2 INSTANCECHEF

Page 86: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

No AMIs

Page 87: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

No AMIs Fragile

Page 88: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

No AMIs Fragile Complex

Page 89: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

INTRODUCTION ADAPT CONCLUSIONOUR

STORYSTART

MOVETO AWS

STRUGGLE TO SCALE

STARTING WITH VPCMICRO-SERVICESAUTOMATIONREVISIT GOALS

Page 90: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

SECURITY QUALITY AGILITYREVISITGOALS

Implemented VPCs with VPNs Struggled to scale them

Page 91: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

SECURITY QUALITY AGILITYREVISITGOALS

Take advantage of our CDN Separate services We still had a lot of stuff in the CMS

Page 92: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

SECURITY QUALITY AGILITYREVISITGOALS

Automated deploys Automation was fragile

Page 93: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

INTRODUCTION CONCLUSIONOUR

STORYMOVESTART

ADAPTTO CHANGES

TACKLE GROWTH

Page 94: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

INTRODUCTION CONCLUSIONOUR

STORYMOVESTART

ADAPTTO CHANGES

TACKLE GROWTH

SCALING VPCAWS WORKING GROUPGOLDEN IMAGE DEPLOYSSTATIC SITE HOSTINGREVIST GOALS

Page 95: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

WITH ALL GROWTH COMES

Page 96: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

What brought us agility also brought us the Wild West of Cloud Computing

Page 97: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

INTRODUCTION CONCLUSIONOUR

STORYMOVESTART

ADAPTTO CHANGES

TACKLE GROWTH

SCALING VPCAWS WORKING GROUPGOLDEN IMAGE DEPLOYSSTATIC SITE HOSTINGREVIST GOALS

Page 98: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

PAIN POINTS

INFRASTRUCTURE

PAINORGINIZATIONAL

PAIN

Page 99: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

PAIN POINTS

INFRASTRUCTURE

PAIN

Page 100: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

VPC REGION 1

VPC REGION 2

AWS

Page 101: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

VPC REGION 1

VPC REGION 2

AWSRIOT DC 1

RIOT DC 2

RIOT DC 3

Page 102: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

VPC REGION 1

VPC REGION 2

AWS

CDN

RIOT DC 1

RIOT DC 2

RIOT DC 3

Page 103: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

!!# of VPNs

VPC

VPC

VPC

Page 104: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

VPCCONSOLIDATE

Page 105: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

VPC REGION 1

VPC REGION 2

EXTEND

VPN

VPN

MULTI-POINT VPNAMI

AMI

Page 106: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

VPC REGION 1

VPC REGION 2

MULTI-POINT VPN

DIRECT CONNECT

AWS DIRECT CONNECT

Page 107: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014
Page 108: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

SHARED MODEL

VPC

PUBLIC

SHARED TOOLS

APPLICATIONS

Page 109: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

MANY TEAMS – ONE VPC

VPC

PUBLIC

SHARED TOOLS

TEAM 1

TEAM 2

TEAM 3

Page 110: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

VPC PER TEAM

VPC WEB VPC BIG DATA VPC IT

PUBLIC

SHARED TOOLS

APP 1

APP 2

APP 3

PUBLIC

SHARED TOOLS

APP 1

APP 2

APP 3

PUBLIC

SHARED TOOLS

APP 1

APP 2

APP 3

Page 111: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

COMMODITY-BASED VPC

VPC 1 VPC 2 VPC AS NEEDED

PUBLIC

SHARED TOOLS

APP 1

APP 2

APP 3

PUBLIC

SHARED TOOLS

APP 1

APP 2

APP 3

PUBLIC

SHARED TOOLS

APP 1

APP 2

APP 3

Page 112: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

INTRODUCTION CONCLUSIONOUR

STORYMOVESTART

ADAPTTO CHANGES

TACKLE GROWTH

SCALING VPCAWS WORKING GROUPGOLDEN IMAGE DEPLOYSSTATIC SITE HOSTINGREVIST GOALS

Page 113: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

PAIN POINTS

ORGINIZATIONAL

PAIN

Page 114: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014
Page 115: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014
Page 116: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014
Page 117: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

OK!

Page 118: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

INTRODUCTION CONCLUSIONOUR

STORYMOVESTART

ADAPTTO CHANGES

TACKLE GROWTH

SCALING VPCAWS WORKING GROUPGOLDEN IMAGE DEPLOYSSTATIC SITE HOSTINGREVIST GOALS

Page 119: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

GIT

Page 120: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

JENKINSGIT

Page 121: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

JENKINS PACKERGIT

Page 122: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

JENKINS EC2PACKERGIT

UPLOAD RUN SNAPSHOT

Page 123: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

JENKINS EC2PACKERGIT

UPLOAD RUN SNAPSHOT

Page 124: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

JENKINS EC2PACKERGIT

UPLOAD RUN SNAPSHOT

Page 125: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

JENKINS EC2PACKERGIT

AMI v1.0

Page 126: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

JENKINS EC2PACKERGIT

AMI v1.0

AMI v1.1

Page 127: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

JENKINS EC2PACKERGIT

AMI v1.0

AMI v1.1

AMI v1.2

Page 128: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

ELB

V1 ASG EC2 EC2

Page 129: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

ELB

V1 ASG EC2 EC2

V2 ASG EC2 EC2

Page 130: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

ELB

V1 ASG EC2 EC2

V2 ASG EC2 EC2

Page 131: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

ELB

V2 ASG EC2 EC2

Page 132: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

ELB

V1 ASG EC2 EC2

V2 ASG EC2 EC2

Page 133: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

ELB

V1 ASG EC2 EC2

Page 134: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

ELB

V2 ASG EC2 EC2

Page 135: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

ELB

V1 ASG EC2 EC2

V2 ASG EC2 EC2

Page 136: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

ELB

V1 ASG EC2 EC2

Page 137: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014
Page 138: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

PACKMULE!

Page 139: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

INTRODUCTION CONCLUSIONOUR

STORYMOVESTART

ADAPTTO CHANGES

TACKLE GROWTH

SCALING VPCAWS WORKING GROUPGOLDEN IMAGE DEPLOYSSTATIC SITE HOSTINGREVIST GOALS

Page 140: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

Markdown File

Page 141: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

Markdown File Git Repo Jenkins

Spark

Page 142: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

HTML Static Site

JSJS

JS

CSSCSS

MarkdownMarkdown

JSON

Spark

Page 143: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

STAGE BUCKET

AMAZON S3

Page 144: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

STAGE BUCKET

PROD BUCKET

AMAZON S3

CDN

Page 145: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

But its not perfect…

Page 146: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

INTRODUCTION CONCLUSIONOUR

STORYMOVESTART

ADAPTTO CHANGES

TACKLE GROWTH

SCALING VPCAWS WORKING GROUPGOLDEN IMAGE DEPLOYSSTATIC SITE HOSTINGREVIST GOALS

Page 147: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

SECURITY QUALITY AGILITYREVISITGOALS

CDN for everything Continuing our VPC design

Page 148: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

SECURITY QUALITY AGILITYREVISITGOALS

Static sites Full-page caching Auto-scaling Balance the AWS regions we are in

Page 149: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

SECURITY QUALITY AGILITYREVISITGOALS

Fully automated deploys Small easy to deploy services Need to improve local and dev workflows

Page 150: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

INTRODUCTION ADAPTOUR

STORYMOVESTART

CONCLUSION

Page 151: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

COMMUNICATE WITHIN YOUR ORGANIZATION

Page 152: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

DOCUMENT

<CODE>

Page 153: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

STAY TIGHT WITH YOUR AMAZON ACCOUNT TEAM

Page 154: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

LEARN FROM OUR MISTAKESLEARN FROM OTHERS

Page 155: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

PLEASE COME AND VISIT OUR BOOTH IN THE EXPO HALL!

THANKS!

Page 156: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

QUESTIONS?!MARTY CHONG

SR. NETWORK ENGINEERIAAS TEAM

MARTY.CHONG @RIOTGAMES.COM

[email protected]

JONATHAN McCAFFREYSOFTWARE ARCHITECT

Page 157: (GAM304) How Riot Games re:Invented Their AWS Model | AWS re:Invent 2014

Please give us your feedback on this session.

Complete session evaluations and earn re:Invent swag.

http://bit.ly/awsevals