SlideShare a Scribd company logo
1 of 33
Download to read offline
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Re-architecting a Consumer Banking
Application for Better Scale and Reliability
Chris Lofton
SVP, Cloud Program
SunTrust Bank
23094
Aaron Bawcom
Chief Architect
Candid Partners
5
The Challenge
• How fast can we go
using AWS?
• What changes do we
need to make to go
that fast consistently?
• How do we make sure
our security
requirements are met?
• How far can we push
the technical limits?
Can a bank win a race?
• How can we
demonstrate success
early in cloud journey?
• How much can we
simplify the
development process?
• How do we decrease
TAS and increase GSD?
• What’s the lowest cost
we can operate?
6
The application requirements
Millions of banking
consumersMassive scalability
Zero
downtime
deployments
Frequent
deployments
100% uptime
Bank level
security
Crazy fast
performance
7
Problem
Massive Scalability
Waves of user
onboarding
Minimum of 10,000
concurrent users per second
Spikes
8
Solution
AWS Lambda +
Amazon API Gateway
Use AWS Lambda for request
processing
Use API Gateway to process API requests
Allocate enough IP space to satisfy
Lambda Elastic Network Interface
(ENI) attachment to VPC
Use NodeJS for language
9
Ease of use
Problem
Millions of bank
consumers
Development
Legal compliance
10
JavaScript
Solution
Single Page
Application
User experience
Deployment
Fast
11
Problem
Bank Level Security
Secure content
Logging
Configuration management
Regulated data
Data obfuscation
Compliance
12
Solution
Cloud Native Services
+ Splunk
Secure content
Logging
Configuration
management
Regulated data
Data Obfuscation
Compliance
Amazon CloudFront, API Gateway,
Amazon S3, AWS WAF, AWS Shield
Advanced, AWS Certificate Manager
AWS CloudTrail, Amazon
CloudWatch, Amazon Kinesis,
VPC
AWS CodeCommit
Proprietary hashing
Custom Development
Config, Lambda, GuardDuty
13
Sub 500ms latency
Problem
Need crazy fast
performance Heavy load
14
CloudFront
Solution
Lambda, CloudFront,
Amazon ElastiCache
NodeJS
Lambda
Amazon ElastiCache
Results
15
Initial deployment
Initial
Deploy
20 Hours!
16
Daily deployments
Problem
Frequent
deployments
Automated tests
Automated promotion
Zero downtime
Continuous delivery
Traceability
17
Solution
Pipeline as code,
automated promotion
Daily deployments
Automated tests
Automated promotion
Zero downtime requirement
Continuous delivery
Traceability
Go-CD
NodeJS, BlazeMeter, BrowserStack,
CloudWatch
Go-CD
CloudFront, Lambda@Edge
Go-CD
Go-CD, CloudTrail,
AWS CodeCommit
18
Account vs application infrastructure
pipelines
Global
Region 1
Region 2
Account
Account
global
Account
regional
Account
regional
19
Account vs application infrastructure
pipelines
Global
Region 1
Region 2
Account Application
App
sec
App code
App code
App
global
App ops
App ops
Account
global
Account
regional
Account
regional
20
Canary
deploys - UI Us-east-1
Us-east-2
CloudFront distribution
CookieCookie
AWS Cloud
InternetUser
request
Primary Canary
Primary Canary
Go-CD
21
Canary deploys - API
Canary version of the
Lambda function is
installed Routing
config.
AWS Cloud
New (Canary)
version
Release (Current)
version
Go-CD
22
Canary Deploys – API – 1%
Routing
Config.
AWS Cloud
New (Canary)
version
Release (Current)
version
1%
CloudWatch
logging
Process logs
to determine
success
99%
Routing configuration
is updated
99% / 1% split
Go-CD
23
Canary deploys – API – 100%
Routing
config.
AWS Cloud
New (Canary)
version
Release (Current)
version
CloudWatch
logging
Process logs
to determine
success
100%
Routing configuration
is updated
0% / 100% split
Go-CD
24
Canary deploy – API - finished
Routing
config.
AWS Cloud
New (Canary )
version
Release (Current)
version
CloudWatch
logging
Process logs
to determine
success
100%
Canary Alias
becomes release
Routing configuration
is updated
100% Release
Go-CD
25
Continuous improvement
Initial deploy
Added Dev, QE, Staging environments
Added 2 way Canary deploys
Experienced outage in us-east-1
due to SSM
2 Weeks
26
Problem
100% Uptime
requirement
Availability
Business Recovery
Dependent Services
Security
Performance
27
Solution
Multi-Region
Active/Active
Availability + performance
Business recovery +
dependent services
Security
API Gateway, Amazon S3
JS, CloudFront,
Amazon Route53
API Gateway, CloudFront,
Amazon S3, Route53
28
Multi-Region Active/Active
CloudFront Lambda@Edge logic - UI
app.org.com
Request
from
Florida
ui.geo.app.org.com
app-ui-us-east-1.s3.amazonaws.com
Geographic latency records
Fail over Alias records
app.org.com
Origin
request
Lambda@Edge
NodeJS DNS CNAME
Lookup for
ui.geo.app.org.com
API
Gateway
(regional)
IAM secured
method request
+ VTL to zero
out content
CF Amazon S3 Request
Bucket: app-ui
Region: us-east-1
Origin Access Identity secured Amazon
S3 request
1
2
app-ui-us-east-2.s3.amazonaws.com
29
Continuous improvement
Initial deploy
Added 2 way
Canary deploys
Experienced
outage in us-east-
1 due to SSM
Deployed Multi
Region Support
us-east-2 full
region outage
2 way
canary
deploys
1 way
canary
deploys
Redis cluster
outage
Cost optimized
24 weeks of
weekly releases
• Zero downtime results
due to deploys!
• No service
interruptions after
adding multi region!
5 Weeks
2 Weeks
ui.geo.app.org.com
app.ui.us.east-1-
s3.amazonaws.com
app.ui.us.east-2-
s3.amazonaws.com
api.geo.app.com
API Gateway Custom Target Domain
name
API Gateway Custom Target Domain
name
Amazon S3
Origin access
identity
Service
Lambda
Service
Lambda
API
us-east-1 us-east-2
api.geo.app.org.com
api.geo.app.org.com
AWS Cloud
Role
Amazon
S3
Role
31
The unexpected
Long canary deployments
AWS region outage
API Security
Candid Partners Proprietary & Confidential 32
Incorporating the learnings
33
Can a bank win a race? Just as good as any Unicorn
How fast can we go using AWS? Rapid prototyping in hours using
appropriately secured sandbox accounts
What changes do we need to make
to go that fast consistently?
Change the release process to allow for
same-day deployments based off of
automated testing and security checks
How do we make sure our security
requirements are met?
Make the pipeline a security control.
Implement compliance Policies as Code.
How far can we push the technical
limits?
Innovate Infrastructure as Code
compliance policies change the physics of
the release process
How can we demonstrate success
early in cloud journey?
Re-architect a smaller application to
Serverless to demonstrate success
How much can we simplify the
development process?
A lot! All application components are
serverless eliminating the need to manage,
maintain, and upgrade servers
How do we decrease TAS and
increase GSD?
Embed empowered team members and
require accountability
What’s the lowest cost we can
operate?
Thousands of dollars per month. No 2X for
business continuity.
Thank you!
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Chris Lofton
Chris.Lofton@SunTrust.com
Aaron Bawcom
Aaron.Bawcom@CandidPartners.com
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.

More Related Content

What's hot

Stream Video, Analyze It in Real Time, and Share It in Real Time (ANT357) - A...
Stream Video, Analyze It in Real Time, and Share It in Real Time (ANT357) - A...Stream Video, Analyze It in Real Time, and Share It in Real Time (ANT357) - A...
Stream Video, Analyze It in Real Time, and Share It in Real Time (ANT357) - A...Amazon Web Services
 
Leadership Session: Learn about 10 Years' of Windows and .NET Innovation on A...
Leadership Session: Learn about 10 Years' of Windows and .NET Innovation on A...Leadership Session: Learn about 10 Years' of Windows and .NET Innovation on A...
Leadership Session: Learn about 10 Years' of Windows and .NET Innovation on A...Amazon Web Services
 
SRV208 S3 One Zone-IA and S3 Select GA
SRV208 S3 One Zone-IA and S3 Select GASRV208 S3 One Zone-IA and S3 Select GA
SRV208 S3 One Zone-IA and S3 Select GAAmazon Web Services
 
Deconstructing SaaS: Deep Dive into Building Multi-Tenant Solutions on AWS (A...
Deconstructing SaaS: Deep Dive into Building Multi-Tenant Solutions on AWS (A...Deconstructing SaaS: Deep Dive into Building Multi-Tenant Solutions on AWS (A...
Deconstructing SaaS: Deep Dive into Building Multi-Tenant Solutions on AWS (A...Amazon Web Services
 
SRV316 Serverless Data Processing at Scale: An Amazon.com Case Study
 SRV316 Serverless Data Processing at Scale: An Amazon.com Case Study SRV316 Serverless Data Processing at Scale: An Amazon.com Case Study
SRV316 Serverless Data Processing at Scale: An Amazon.com Case StudyAmazon Web Services
 
Protecting Amazon EC2 Instances, Relational Databases, and NoSQL Workloads (S...
Protecting Amazon EC2 Instances, Relational Databases, and NoSQL Workloads (S...Protecting Amazon EC2 Instances, Relational Databases, and NoSQL Workloads (S...
Protecting Amazon EC2 Instances, Relational Databases, and NoSQL Workloads (S...Amazon Web Services
 
Monitor All Your Things: Amazon CloudWatch in Action with BBC (DEV302) - AWS ...
Monitor All Your Things: Amazon CloudWatch in Action with BBC (DEV302) - AWS ...Monitor All Your Things: Amazon CloudWatch in Action with BBC (DEV302) - AWS ...
Monitor All Your Things: Amazon CloudWatch in Action with BBC (DEV302) - AWS ...Amazon Web Services
 
Securely Deliver Desktop Applications with Amazon AppStream 2.0 (BAP201) - AW...
Securely Deliver Desktop Applications with Amazon AppStream 2.0 (BAP201) - AW...Securely Deliver Desktop Applications with Amazon AppStream 2.0 (BAP201) - AW...
Securely Deliver Desktop Applications with Amazon AppStream 2.0 (BAP201) - AW...Amazon Web Services
 
SPEKE-ing of Content Protection & DRM (MAE302) - AWS re:Invent 2018
SPEKE-ing of Content Protection & DRM (MAE302) - AWS re:Invent 2018SPEKE-ing of Content Protection & DRM (MAE302) - AWS re:Invent 2018
SPEKE-ing of Content Protection & DRM (MAE302) - AWS re:Invent 2018Amazon Web Services
 
High Velocity DevOps: Four Ways to Leverage CloudFront in Faster DevOps Workf...
High Velocity DevOps: Four Ways to Leverage CloudFront in Faster DevOps Workf...High Velocity DevOps: Four Ways to Leverage CloudFront in Faster DevOps Workf...
High Velocity DevOps: Four Ways to Leverage CloudFront in Faster DevOps Workf...Amazon Web Services
 
How Amazon.com Migrates Inventory Management Systems (DAT346) - AWS re:Invent...
How Amazon.com Migrates Inventory Management Systems (DAT346) - AWS re:Invent...How Amazon.com Migrates Inventory Management Systems (DAT346) - AWS re:Invent...
How Amazon.com Migrates Inventory Management Systems (DAT346) - AWS re:Invent...Amazon Web Services
 
SRV318 Running Kubernetes with Amazon EKS
SRV318 Running Kubernetes with Amazon EKSSRV318 Running Kubernetes with Amazon EKS
SRV318 Running Kubernetes with Amazon EKSAmazon Web Services
 
Inside AWS: Technology Choices for Modern Applications (SRV305-R1) - AWS re:I...
Inside AWS: Technology Choices for Modern Applications (SRV305-R1) - AWS re:I...Inside AWS: Technology Choices for Modern Applications (SRV305-R1) - AWS re:I...
Inside AWS: Technology Choices for Modern Applications (SRV305-R1) - AWS re:I...Amazon Web Services
 
CI/CD for Serverless and Containerized Applications (DEV309-R1) - AWS re:Inve...
CI/CD for Serverless and Containerized Applications (DEV309-R1) - AWS re:Inve...CI/CD for Serverless and Containerized Applications (DEV309-R1) - AWS re:Inve...
CI/CD for Serverless and Containerized Applications (DEV309-R1) - AWS re:Inve...Amazon Web Services
 
Best Practices for Safe Deployments on AWS Lambda and Amazon API Gateway (SRV...
Best Practices for Safe Deployments on AWS Lambda and Amazon API Gateway (SRV...Best Practices for Safe Deployments on AWS Lambda and Amazon API Gateway (SRV...
Best Practices for Safe Deployments on AWS Lambda and Amazon API Gateway (SRV...Amazon Web Services
 
SRV207 Orchestrating AWS Lambda with Step Functions
 SRV207 Orchestrating AWS Lambda with Step Functions SRV207 Orchestrating AWS Lambda with Step Functions
SRV207 Orchestrating AWS Lambda with Step FunctionsAmazon Web Services
 
Get the Most out of Your Elastic Load Balancer for Different Workloads (NET31...
Get the Most out of Your Elastic Load Balancer for Different Workloads (NET31...Get the Most out of Your Elastic Load Balancer for Different Workloads (NET31...
Get the Most out of Your Elastic Load Balancer for Different Workloads (NET31...Amazon Web Services
 
Deep Dive on Cloud File System Offerings: What to Use, Where, and Why (STG392...
Deep Dive on Cloud File System Offerings: What to Use, Where, and Why (STG392...Deep Dive on Cloud File System Offerings: What to Use, Where, and Why (STG392...
Deep Dive on Cloud File System Offerings: What to Use, Where, and Why (STG392...Amazon Web Services
 
Building Real-time Serverless Backends with GraphQL
Building Real-time Serverless Backends with GraphQLBuilding Real-time Serverless Backends with GraphQL
Building Real-time Serverless Backends with GraphQLAmazon Web Services
 
Amazon CI-CD Practices for Software Development Teams
Amazon CI-CD Practices for Software Development Teams Amazon CI-CD Practices for Software Development Teams
Amazon CI-CD Practices for Software Development Teams Amazon Web Services
 

What's hot (20)

Stream Video, Analyze It in Real Time, and Share It in Real Time (ANT357) - A...
Stream Video, Analyze It in Real Time, and Share It in Real Time (ANT357) - A...Stream Video, Analyze It in Real Time, and Share It in Real Time (ANT357) - A...
Stream Video, Analyze It in Real Time, and Share It in Real Time (ANT357) - A...
 
Leadership Session: Learn about 10 Years' of Windows and .NET Innovation on A...
Leadership Session: Learn about 10 Years' of Windows and .NET Innovation on A...Leadership Session: Learn about 10 Years' of Windows and .NET Innovation on A...
Leadership Session: Learn about 10 Years' of Windows and .NET Innovation on A...
 
SRV208 S3 One Zone-IA and S3 Select GA
SRV208 S3 One Zone-IA and S3 Select GASRV208 S3 One Zone-IA and S3 Select GA
SRV208 S3 One Zone-IA and S3 Select GA
 
Deconstructing SaaS: Deep Dive into Building Multi-Tenant Solutions on AWS (A...
Deconstructing SaaS: Deep Dive into Building Multi-Tenant Solutions on AWS (A...Deconstructing SaaS: Deep Dive into Building Multi-Tenant Solutions on AWS (A...
Deconstructing SaaS: Deep Dive into Building Multi-Tenant Solutions on AWS (A...
 
SRV316 Serverless Data Processing at Scale: An Amazon.com Case Study
 SRV316 Serverless Data Processing at Scale: An Amazon.com Case Study SRV316 Serverless Data Processing at Scale: An Amazon.com Case Study
SRV316 Serverless Data Processing at Scale: An Amazon.com Case Study
 
Protecting Amazon EC2 Instances, Relational Databases, and NoSQL Workloads (S...
Protecting Amazon EC2 Instances, Relational Databases, and NoSQL Workloads (S...Protecting Amazon EC2 Instances, Relational Databases, and NoSQL Workloads (S...
Protecting Amazon EC2 Instances, Relational Databases, and NoSQL Workloads (S...
 
Monitor All Your Things: Amazon CloudWatch in Action with BBC (DEV302) - AWS ...
Monitor All Your Things: Amazon CloudWatch in Action with BBC (DEV302) - AWS ...Monitor All Your Things: Amazon CloudWatch in Action with BBC (DEV302) - AWS ...
Monitor All Your Things: Amazon CloudWatch in Action with BBC (DEV302) - AWS ...
 
Securely Deliver Desktop Applications with Amazon AppStream 2.0 (BAP201) - AW...
Securely Deliver Desktop Applications with Amazon AppStream 2.0 (BAP201) - AW...Securely Deliver Desktop Applications with Amazon AppStream 2.0 (BAP201) - AW...
Securely Deliver Desktop Applications with Amazon AppStream 2.0 (BAP201) - AW...
 
SPEKE-ing of Content Protection & DRM (MAE302) - AWS re:Invent 2018
SPEKE-ing of Content Protection & DRM (MAE302) - AWS re:Invent 2018SPEKE-ing of Content Protection & DRM (MAE302) - AWS re:Invent 2018
SPEKE-ing of Content Protection & DRM (MAE302) - AWS re:Invent 2018
 
High Velocity DevOps: Four Ways to Leverage CloudFront in Faster DevOps Workf...
High Velocity DevOps: Four Ways to Leverage CloudFront in Faster DevOps Workf...High Velocity DevOps: Four Ways to Leverage CloudFront in Faster DevOps Workf...
High Velocity DevOps: Four Ways to Leverage CloudFront in Faster DevOps Workf...
 
How Amazon.com Migrates Inventory Management Systems (DAT346) - AWS re:Invent...
How Amazon.com Migrates Inventory Management Systems (DAT346) - AWS re:Invent...How Amazon.com Migrates Inventory Management Systems (DAT346) - AWS re:Invent...
How Amazon.com Migrates Inventory Management Systems (DAT346) - AWS re:Invent...
 
SRV318 Running Kubernetes with Amazon EKS
SRV318 Running Kubernetes with Amazon EKSSRV318 Running Kubernetes with Amazon EKS
SRV318 Running Kubernetes with Amazon EKS
 
Inside AWS: Technology Choices for Modern Applications (SRV305-R1) - AWS re:I...
Inside AWS: Technology Choices for Modern Applications (SRV305-R1) - AWS re:I...Inside AWS: Technology Choices for Modern Applications (SRV305-R1) - AWS re:I...
Inside AWS: Technology Choices for Modern Applications (SRV305-R1) - AWS re:I...
 
CI/CD for Serverless and Containerized Applications (DEV309-R1) - AWS re:Inve...
CI/CD for Serverless and Containerized Applications (DEV309-R1) - AWS re:Inve...CI/CD for Serverless and Containerized Applications (DEV309-R1) - AWS re:Inve...
CI/CD for Serverless and Containerized Applications (DEV309-R1) - AWS re:Inve...
 
Best Practices for Safe Deployments on AWS Lambda and Amazon API Gateway (SRV...
Best Practices for Safe Deployments on AWS Lambda and Amazon API Gateway (SRV...Best Practices for Safe Deployments on AWS Lambda and Amazon API Gateway (SRV...
Best Practices for Safe Deployments on AWS Lambda and Amazon API Gateway (SRV...
 
SRV207 Orchestrating AWS Lambda with Step Functions
 SRV207 Orchestrating AWS Lambda with Step Functions SRV207 Orchestrating AWS Lambda with Step Functions
SRV207 Orchestrating AWS Lambda with Step Functions
 
Get the Most out of Your Elastic Load Balancer for Different Workloads (NET31...
Get the Most out of Your Elastic Load Balancer for Different Workloads (NET31...Get the Most out of Your Elastic Load Balancer for Different Workloads (NET31...
Get the Most out of Your Elastic Load Balancer for Different Workloads (NET31...
 
Deep Dive on Cloud File System Offerings: What to Use, Where, and Why (STG392...
Deep Dive on Cloud File System Offerings: What to Use, Where, and Why (STG392...Deep Dive on Cloud File System Offerings: What to Use, Where, and Why (STG392...
Deep Dive on Cloud File System Offerings: What to Use, Where, and Why (STG392...
 
Building Real-time Serverless Backends with GraphQL
Building Real-time Serverless Backends with GraphQLBuilding Real-time Serverless Backends with GraphQL
Building Real-time Serverless Backends with GraphQL
 
Amazon CI-CD Practices for Software Development Teams
Amazon CI-CD Practices for Software Development Teams Amazon CI-CD Practices for Software Development Teams
Amazon CI-CD Practices for Software Development Teams
 

Similar to Re-Architecting a Banking Application for Scale and Reliability (SRV220-R1) - AWS re:Invent 2018

Cloud DevSecOps and compliance considerations leveraging AWS Marketplace sellers
Cloud DevSecOps and compliance considerations leveraging AWS Marketplace sellersCloud DevSecOps and compliance considerations leveraging AWS Marketplace sellers
Cloud DevSecOps and compliance considerations leveraging AWS Marketplace sellersAmazon Web Services
 
Building Real-Time Serverless Data Applications With Joseph Morais and Adam W...
Building Real-Time Serverless Data Applications With Joseph Morais and Adam W...Building Real-Time Serverless Data Applications With Joseph Morais and Adam W...
Building Real-Time Serverless Data Applications With Joseph Morais and Adam W...HostedbyConfluent
 
Cloud DevSecOps Considerations Leveraging AWS Marketplace Software
Cloud DevSecOps Considerations Leveraging AWS Marketplace SoftwareCloud DevSecOps Considerations Leveraging AWS Marketplace Software
Cloud DevSecOps Considerations Leveraging AWS Marketplace SoftwareAmazon Web Services
 
Optimize your CI/CD with GitLab and AWS
Optimize your CI/CD with GitLab and AWSOptimize your CI/CD with GitLab and AWS
Optimize your CI/CD with GitLab and AWSDevOps.com
 
Build real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with ConfluentBuild real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with Confluentconfluent
 
Confluent_AWS_ImmersionDay_Q42023.pdf
Confluent_AWS_ImmersionDay_Q42023.pdfConfluent_AWS_ImmersionDay_Q42023.pdf
Confluent_AWS_ImmersionDay_Q42023.pdfAhmed791434
 
5 Years Of Building SaaS On AWS
5 Years Of Building SaaS On AWS5 Years Of Building SaaS On AWS
5 Years Of Building SaaS On AWSChristian Beedgen
 
Observability for Modern Applications (CON306-R1) - AWS re:Invent 2018
Observability for Modern Applications (CON306-R1) - AWS re:Invent 2018Observability for Modern Applications (CON306-R1) - AWS re:Invent 2018
Observability for Modern Applications (CON306-R1) - AWS re:Invent 2018Amazon Web Services
 
apidays LIVE JAKARTA - Take control of your microservices with App Mesh by Ak...
apidays LIVE JAKARTA - Take control of your microservices with App Mesh by Ak...apidays LIVE JAKARTA - Take control of your microservices with App Mesh by Ak...
apidays LIVE JAKARTA - Take control of your microservices with App Mesh by Ak...apidays
 
Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...
Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...
Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...Adrian Cockcroft
 
Faster, Simpler, Better - MongoDB to the rescue
Faster, Simpler, Better - MongoDB to the rescue Faster, Simpler, Better - MongoDB to the rescue
Faster, Simpler, Better - MongoDB to the rescue MongoDB
 
SEC302-S-143971-Session-Presentation.7e95c642838da923e9d66db6fde28eef1554e4b8...
SEC302-S-143971-Session-Presentation.7e95c642838da923e9d66db6fde28eef1554e4b8...SEC302-S-143971-Session-Presentation.7e95c642838da923e9d66db6fde28eef1554e4b8...
SEC302-S-143971-Session-Presentation.7e95c642838da923e9d66db6fde28eef1554e4b8...Kocapep
 
SEC302-S-143971-AWS-Prismacloud.pptx
SEC302-S-143971-AWS-Prismacloud.pptxSEC302-S-143971-AWS-Prismacloud.pptx
SEC302-S-143971-AWS-Prismacloud.pptxDubemJavapi
 
Managing Multi-Platform and Multi-Region APIs with Kong Konnect and AWS
Managing Multi-Platform and Multi-Region APIs with Kong Konnect and AWSManaging Multi-Platform and Multi-Region APIs with Kong Konnect and AWS
Managing Multi-Platform and Multi-Region APIs with Kong Konnect and AWSDeguiXu
 
Introduction to AWS (October 2017)
Introduction to AWS (October 2017)Introduction to AWS (October 2017)
Introduction to AWS (October 2017)Julien SIMON
 
AWS FSI Symposium 2017 NYC - Moving at the Speed of Serverless ft Broadridge
AWS FSI Symposium 2017 NYC - Moving at the Speed of Serverless ft BroadridgeAWS FSI Symposium 2017 NYC - Moving at the Speed of Serverless ft Broadridge
AWS FSI Symposium 2017 NYC - Moving at the Speed of Serverless ft BroadridgeAmazon Web Services
 
Saurabh_Shanbhag - Building_SaaS_on_AWS.pptx
Saurabh_Shanbhag - Building_SaaS_on_AWS.pptxSaurabh_Shanbhag - Building_SaaS_on_AWS.pptx
Saurabh_Shanbhag - Building_SaaS_on_AWS.pptxAWS Chicago
 
DevSecOps 的規模化實踐 (Level: 300-400)
DevSecOps 的規模化實踐 (Level: 300-400)DevSecOps 的規模化實踐 (Level: 300-400)
DevSecOps 的規模化實踐 (Level: 300-400)Amazon Web Services
 
AWS Cloud Solutions Architects & Tech Enthusiasts
AWS Cloud Solutions Architects & Tech EnthusiastsAWS Cloud Solutions Architects & Tech Enthusiasts
AWS Cloud Solutions Architects & Tech EnthusiastsJasonRoy50
 
運用 AWS Edge Services 作為遊戲行業的關鍵基礎設施元件 (Level 200)
運用 AWS Edge Services 作為遊戲行業的關鍵基礎設施元件 (Level 200)運用 AWS Edge Services 作為遊戲行業的關鍵基礎設施元件 (Level 200)
運用 AWS Edge Services 作為遊戲行業的關鍵基礎設施元件 (Level 200)Amazon Web Services
 

Similar to Re-Architecting a Banking Application for Scale and Reliability (SRV220-R1) - AWS re:Invent 2018 (20)

Cloud DevSecOps and compliance considerations leveraging AWS Marketplace sellers
Cloud DevSecOps and compliance considerations leveraging AWS Marketplace sellersCloud DevSecOps and compliance considerations leveraging AWS Marketplace sellers
Cloud DevSecOps and compliance considerations leveraging AWS Marketplace sellers
 
Building Real-Time Serverless Data Applications With Joseph Morais and Adam W...
Building Real-Time Serverless Data Applications With Joseph Morais and Adam W...Building Real-Time Serverless Data Applications With Joseph Morais and Adam W...
Building Real-Time Serverless Data Applications With Joseph Morais and Adam W...
 
Cloud DevSecOps Considerations Leveraging AWS Marketplace Software
Cloud DevSecOps Considerations Leveraging AWS Marketplace SoftwareCloud DevSecOps Considerations Leveraging AWS Marketplace Software
Cloud DevSecOps Considerations Leveraging AWS Marketplace Software
 
Optimize your CI/CD with GitLab and AWS
Optimize your CI/CD with GitLab and AWSOptimize your CI/CD with GitLab and AWS
Optimize your CI/CD with GitLab and AWS
 
Build real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with ConfluentBuild real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with Confluent
 
Confluent_AWS_ImmersionDay_Q42023.pdf
Confluent_AWS_ImmersionDay_Q42023.pdfConfluent_AWS_ImmersionDay_Q42023.pdf
Confluent_AWS_ImmersionDay_Q42023.pdf
 
5 Years Of Building SaaS On AWS
5 Years Of Building SaaS On AWS5 Years Of Building SaaS On AWS
5 Years Of Building SaaS On AWS
 
Observability for Modern Applications (CON306-R1) - AWS re:Invent 2018
Observability for Modern Applications (CON306-R1) - AWS re:Invent 2018Observability for Modern Applications (CON306-R1) - AWS re:Invent 2018
Observability for Modern Applications (CON306-R1) - AWS re:Invent 2018
 
apidays LIVE JAKARTA - Take control of your microservices with App Mesh by Ak...
apidays LIVE JAKARTA - Take control of your microservices with App Mesh by Ak...apidays LIVE JAKARTA - Take control of your microservices with App Mesh by Ak...
apidays LIVE JAKARTA - Take control of your microservices with App Mesh by Ak...
 
Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...
Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...
Flowcon (added to for CMG) Keynote talk on how Speed Wins and how Netflix is ...
 
Faster, Simpler, Better - MongoDB to the rescue
Faster, Simpler, Better - MongoDB to the rescue Faster, Simpler, Better - MongoDB to the rescue
Faster, Simpler, Better - MongoDB to the rescue
 
SEC302-S-143971-Session-Presentation.7e95c642838da923e9d66db6fde28eef1554e4b8...
SEC302-S-143971-Session-Presentation.7e95c642838da923e9d66db6fde28eef1554e4b8...SEC302-S-143971-Session-Presentation.7e95c642838da923e9d66db6fde28eef1554e4b8...
SEC302-S-143971-Session-Presentation.7e95c642838da923e9d66db6fde28eef1554e4b8...
 
SEC302-S-143971-AWS-Prismacloud.pptx
SEC302-S-143971-AWS-Prismacloud.pptxSEC302-S-143971-AWS-Prismacloud.pptx
SEC302-S-143971-AWS-Prismacloud.pptx
 
Managing Multi-Platform and Multi-Region APIs with Kong Konnect and AWS
Managing Multi-Platform and Multi-Region APIs with Kong Konnect and AWSManaging Multi-Platform and Multi-Region APIs with Kong Konnect and AWS
Managing Multi-Platform and Multi-Region APIs with Kong Konnect and AWS
 
Introduction to AWS (October 2017)
Introduction to AWS (October 2017)Introduction to AWS (October 2017)
Introduction to AWS (October 2017)
 
AWS FSI Symposium 2017 NYC - Moving at the Speed of Serverless ft Broadridge
AWS FSI Symposium 2017 NYC - Moving at the Speed of Serverless ft BroadridgeAWS FSI Symposium 2017 NYC - Moving at the Speed of Serverless ft Broadridge
AWS FSI Symposium 2017 NYC - Moving at the Speed of Serverless ft Broadridge
 
Saurabh_Shanbhag - Building_SaaS_on_AWS.pptx
Saurabh_Shanbhag - Building_SaaS_on_AWS.pptxSaurabh_Shanbhag - Building_SaaS_on_AWS.pptx
Saurabh_Shanbhag - Building_SaaS_on_AWS.pptx
 
DevSecOps 的規模化實踐 (Level: 300-400)
DevSecOps 的規模化實踐 (Level: 300-400)DevSecOps 的規模化實踐 (Level: 300-400)
DevSecOps 的規模化實踐 (Level: 300-400)
 
AWS Cloud Solutions Architects & Tech Enthusiasts
AWS Cloud Solutions Architects & Tech EnthusiastsAWS Cloud Solutions Architects & Tech Enthusiasts
AWS Cloud Solutions Architects & Tech Enthusiasts
 
運用 AWS Edge Services 作為遊戲行業的關鍵基礎設施元件 (Level 200)
運用 AWS Edge Services 作為遊戲行業的關鍵基礎設施元件 (Level 200)運用 AWS Edge Services 作為遊戲行業的關鍵基礎設施元件 (Level 200)
運用 AWS Edge Services 作為遊戲行業的關鍵基礎設施元件 (Level 200)
 

More from Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsAmazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareAmazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSAmazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAmazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareAmazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 

More from Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

Re-Architecting a Banking Application for Scale and Reliability (SRV220-R1) - AWS re:Invent 2018

  • 1.
  • 2. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Re-architecting a Consumer Banking Application for Better Scale and Reliability Chris Lofton SVP, Cloud Program SunTrust Bank 23094 Aaron Bawcom Chief Architect Candid Partners
  • 3. 5 The Challenge • How fast can we go using AWS? • What changes do we need to make to go that fast consistently? • How do we make sure our security requirements are met? • How far can we push the technical limits? Can a bank win a race? • How can we demonstrate success early in cloud journey? • How much can we simplify the development process? • How do we decrease TAS and increase GSD? • What’s the lowest cost we can operate?
  • 4. 6 The application requirements Millions of banking consumersMassive scalability Zero downtime deployments Frequent deployments 100% uptime Bank level security Crazy fast performance
  • 5. 7 Problem Massive Scalability Waves of user onboarding Minimum of 10,000 concurrent users per second Spikes
  • 6. 8 Solution AWS Lambda + Amazon API Gateway Use AWS Lambda for request processing Use API Gateway to process API requests Allocate enough IP space to satisfy Lambda Elastic Network Interface (ENI) attachment to VPC Use NodeJS for language
  • 7. 9 Ease of use Problem Millions of bank consumers Development Legal compliance
  • 9. 11 Problem Bank Level Security Secure content Logging Configuration management Regulated data Data obfuscation Compliance
  • 10. 12 Solution Cloud Native Services + Splunk Secure content Logging Configuration management Regulated data Data Obfuscation Compliance Amazon CloudFront, API Gateway, Amazon S3, AWS WAF, AWS Shield Advanced, AWS Certificate Manager AWS CloudTrail, Amazon CloudWatch, Amazon Kinesis, VPC AWS CodeCommit Proprietary hashing Custom Development Config, Lambda, GuardDuty
  • 11. 13 Sub 500ms latency Problem Need crazy fast performance Heavy load
  • 14. 16 Daily deployments Problem Frequent deployments Automated tests Automated promotion Zero downtime Continuous delivery Traceability
  • 15. 17 Solution Pipeline as code, automated promotion Daily deployments Automated tests Automated promotion Zero downtime requirement Continuous delivery Traceability Go-CD NodeJS, BlazeMeter, BrowserStack, CloudWatch Go-CD CloudFront, Lambda@Edge Go-CD Go-CD, CloudTrail, AWS CodeCommit
  • 16. 18 Account vs application infrastructure pipelines Global Region 1 Region 2 Account Account global Account regional Account regional
  • 17. 19 Account vs application infrastructure pipelines Global Region 1 Region 2 Account Application App sec App code App code App global App ops App ops Account global Account regional Account regional
  • 18. 20 Canary deploys - UI Us-east-1 Us-east-2 CloudFront distribution CookieCookie AWS Cloud InternetUser request Primary Canary Primary Canary Go-CD
  • 19. 21 Canary deploys - API Canary version of the Lambda function is installed Routing config. AWS Cloud New (Canary) version Release (Current) version Go-CD
  • 20. 22 Canary Deploys – API – 1% Routing Config. AWS Cloud New (Canary) version Release (Current) version 1% CloudWatch logging Process logs to determine success 99% Routing configuration is updated 99% / 1% split Go-CD
  • 21. 23 Canary deploys – API – 100% Routing config. AWS Cloud New (Canary) version Release (Current) version CloudWatch logging Process logs to determine success 100% Routing configuration is updated 0% / 100% split Go-CD
  • 22. 24 Canary deploy – API - finished Routing config. AWS Cloud New (Canary ) version Release (Current) version CloudWatch logging Process logs to determine success 100% Canary Alias becomes release Routing configuration is updated 100% Release Go-CD
  • 23. 25 Continuous improvement Initial deploy Added Dev, QE, Staging environments Added 2 way Canary deploys Experienced outage in us-east-1 due to SSM 2 Weeks
  • 25. 27 Solution Multi-Region Active/Active Availability + performance Business recovery + dependent services Security API Gateway, Amazon S3 JS, CloudFront, Amazon Route53 API Gateway, CloudFront, Amazon S3, Route53
  • 26. 28 Multi-Region Active/Active CloudFront Lambda@Edge logic - UI app.org.com Request from Florida ui.geo.app.org.com app-ui-us-east-1.s3.amazonaws.com Geographic latency records Fail over Alias records app.org.com Origin request Lambda@Edge NodeJS DNS CNAME Lookup for ui.geo.app.org.com API Gateway (regional) IAM secured method request + VTL to zero out content CF Amazon S3 Request Bucket: app-ui Region: us-east-1 Origin Access Identity secured Amazon S3 request 1 2 app-ui-us-east-2.s3.amazonaws.com
  • 27. 29 Continuous improvement Initial deploy Added 2 way Canary deploys Experienced outage in us-east- 1 due to SSM Deployed Multi Region Support us-east-2 full region outage 2 way canary deploys 1 way canary deploys Redis cluster outage Cost optimized 24 weeks of weekly releases • Zero downtime results due to deploys! • No service interruptions after adding multi region! 5 Weeks 2 Weeks
  • 28. ui.geo.app.org.com app.ui.us.east-1- s3.amazonaws.com app.ui.us.east-2- s3.amazonaws.com api.geo.app.com API Gateway Custom Target Domain name API Gateway Custom Target Domain name Amazon S3 Origin access identity Service Lambda Service Lambda API us-east-1 us-east-2 api.geo.app.org.com api.geo.app.org.com AWS Cloud Role Amazon S3 Role
  • 29. 31 The unexpected Long canary deployments AWS region outage API Security
  • 30. Candid Partners Proprietary & Confidential 32 Incorporating the learnings
  • 31. 33 Can a bank win a race? Just as good as any Unicorn How fast can we go using AWS? Rapid prototyping in hours using appropriately secured sandbox accounts What changes do we need to make to go that fast consistently? Change the release process to allow for same-day deployments based off of automated testing and security checks How do we make sure our security requirements are met? Make the pipeline a security control. Implement compliance Policies as Code. How far can we push the technical limits? Innovate Infrastructure as Code compliance policies change the physics of the release process How can we demonstrate success early in cloud journey? Re-architect a smaller application to Serverless to demonstrate success How much can we simplify the development process? A lot! All application components are serverless eliminating the need to manage, maintain, and upgrade servers How do we decrease TAS and increase GSD? Embed empowered team members and require accountability What’s the lowest cost we can operate? Thousands of dollars per month. No 2X for business continuity.
  • 32. Thank you! © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Chris Lofton Chris.Lofton@SunTrust.com Aaron Bawcom Aaron.Bawcom@CandidPartners.com
  • 33. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.