The objective of this presentation to explain a sample AWS cloud infrastructure system design of travel web application and estimate approximate cost for the deployment in that cloud.
AWS Cost Estimation for Fully Deployed Travel Web Application
1. A Sample System Design and Cost
Estimation of Fully Deployed Travel Web
Application At Amazon AWS Cloud
performance
scalability
cloud
cost
resources
Sumit Arora
sumit1234@gmail.com
Date : 26th-Aug-2015
2. A Sample System Design of Fully
Deployed Travel Web Application At
Amazon AWS Cloud
Sumit Arora | sumit1234@gmail.com
Limit of Liability/Disclaimer of Warranty: Overall explanation presented on this ppts ,are based on my views, my learning, and my language it may differ from your
understanding, as my learning curve still rolling. The author makes no representations or warranties with respect to the accuracy or completeness of the contents of
this work and specifically disclaims all warranties, including without limitation warranties of fitness for a particular purpose. The fact that an organization or web site is
referred to in this work as a citation and/or a potential source of further information does not mean that the author endorses the information the organization or web
site may provide or the recommendations it may make. Furthermore, readers should be aware that Internet web sites listed in this work may have changed or
disappeared between when this work was written and when it is read. So feel free write me your comments to make this better if any : sumit1234@gmail.com
3. The objective of this document to write cloud infrastructure system design of travel web
application and estimate approximate cost for the deployment in that cloud. This web
application targeted to middle class customers and currently doing X transactions per day.
This web application will start from the basic set of features and expand month by month
with respect to several other feature integration, and also increase its geographical user
base. So this application should work in terms of its performance, scalability and security.
When talked about the performance then it should be able to handle traffic spikes, page
speed, downloading latency, DNS resolution, 99.999% availability and many others. When
talked about the scalability, that means on demand it should be able scale vertically as well
as horizontally. Scaling vertically means to increase the computing ,memory and storage on
demand. While horizontal scaling means adding more computational server or database
server or load balancer on demand. When talked about the security that means when user
enters to the website, then it should be monitored for DDOS Attacks, open ports and
several other parameters relevant to security.
Abstract
Sumit Arora | sumit1234@gmail.com
4. Design Pattern Cloud infrastructure design will follow the vertical/horizontal/vertical scaling design pattern, that means first
the requisite servers with security group would set up. Once the basic infra got set up, then on demand /prediction basis the
computational, memory or storage power would be increased vertically. When the vertical scale would reach to max then
instances would be added horizontally and repeat the cycle vertical and then horizontal.
Scalability If current setup able to sustain C1 concurrent users with 4 GB RAM, and demand has been seen for C1 + X
concurrent users then first attempt for vertical scalability would be to increase the relative RAM or CPU or Both. The system
design on next slides capable to handle C1+ concurrent users with http server as well as with database. Its capable to handle
R1*1000 request per day, that means ~R1*1000/U1 unique request and ~T1 Transactions (just an example).
Performance It has been assumed that deployment of the server units e.g. database server, http server ,will follow the proper
hardening and best practices to tune the system. The Overall system would be deployed by putting (not limited to) Varnish for
HTTP Accelerator, CDN to statically cache the system e.g. Cloud Front or Akamai. Using Cloud Flare or Route 53 for the
authoritative name server. Database Server stats would be analyzed with average time to execute a data base query, number
of concurrent connections and several other parameters. Based on the analysis further tuning might be performed with the
database design and its query execution. Apache HTTP Server stats, tuning parameters would be analyzed to take proper
action for the traffic spikes, concurrent connections and several other parameters. Continuous monitoring will provide
continuous improvement e.g. when new features got added, traffic spikes in festival seasons.
System Design Principles
Sumit Arora | sumit1234@gmail.com
5. System Design of Fully Deployed Travel Web Application
Customers
Travel Site -Desktop | Tablet | Mobile | iPad
3rd Party Users
Customer | HTNG | Partners | OTA
Payment Gateway
Edge Services - Firewall | Cache| SSL | Auth
Database Server
Data Storage SQL, Mongo, Hadoop, SOLR
Web/Application Server
Apache HTTP/NGINX,VARNISH
Mail Server
ExternalIntegrationPoints
P
C
I
SaaS
Vendors
Public | Private | Hybrid Cloud| Distributed Infrastructure | Multi-Continent
Infrastructure and Data Services - Configuration | Logging |Search |Monitoring |Queue | Analyzer
Cloud Files - Caching
Backup/Recovery Service
CDN
Consumers
Administrator
AWS Cloud
EMAILS
Infrastructure Monitoring
Sumit Arora | sumit1234@gmail.com
6. A Sample Cost Estimation of Fully
Deployed Travel Web Application At
Amazon AWS Cloud
Sumit Arora | sumit1234@gmail.com
Limit of Liability/Disclaimer of Warranty: Overall explanation presented on this ppts ,are based on my views, my learning, and my language it may differ from your
understanding, as my learning curve still rolling. The author makes no representations or warranties with respect to the accuracy or completeness of the contents of
this work and specifically disclaims all warranties, including without limitation warranties of fitness for a particular purpose. The fact that an organization or web site is
referred to in this work as a citation and/or a potential source of further information does not mean that the author endorses the information the organization or web
site may provide or the recommendations it may make. Furthermore, readers should be aware that Internet web sites listed in this work may have changed or
disappeared between when this work was written and when it is read. So feel free write me your comments to make this better if any : sumit1234@gmail.com
7. Cloud Infrastructure Setup
A- Boot Strap Server B- Staging Server C- Production Server Active/Standby
A- Boot Strap Server Research/Test Server to test the configuration, Dev functionality ,
always up with latest code, remotely available. Dev/Test can refer it for many purpose
B- Staging Server It’s a exact replica of production Server, Various benchmarking tests, Pre-
Production tests performed on this server before doing continuous integration with
Production server
C – Production Active/ Standby Server It’s a real production Server used by the Travel
Website’s consumers, Various real time monitoring data collected from this server, On any
situation traffic might be diverted to the Standby Server
Sumit Arora | sumit1234@gmail.com
8. AWS Infrastructure Cost – BootStrap Server
Region : Asia Pacific (Tokyo) Region
Objective : System tuning and Its effect, Development
environment Tests, Functionality Tests, Same Replica of it to
be used by Dev/Test Team to test the website inhouse
Description :Apache Http Server/MySQL/PHP All would be installed on same machine, To
test the functionality with sample Data, Apache HTTP Server Tuning, Perform tests with
Apache Bench e.g. Apache HTTP Server with Varnish / Nginx with Varnish. Its a Test
Machine which we need initially to test latency, SNS Test and several other tests with
amazon AWS environment.
Machine Type :
Linux on T2 Medium / On Demand / $ 58.56 Per Month
Amazon EC2 EBS - 20 GB – (1)-$2 + (2)$0.50 + (3)$1.50 = ~ $5
(1)-$0.10 per GB-month of provisioned storage - $2.00 for 20 GB
(2)-$0.10 per 1 million I/O requests - $0.50 for 5 Million I/O Requests
(3)-$0.125 per GB-Month of snapshot data stored – 12 GB snapshot
A - Title : Boot-Strap Machine
Use Cases : Development environments, build servers, code repositories, low-traffic web applications, early product experiments, small
databases.
Sumit Arora | sumit1234@gmail.com
9. Region : Asia Pacific (Tokyo) Region
Objective : Staging environment exact replica of Production
environment
Description : All integration of code, database enhancement or
any new feature integration would be done first on this
environment, benchmarking with real data ( some or all
production data might be replicated to this staging server)
Servers and EBS :
M3.Medium for Database Server - $70.28
Amazon EC2 EBS - 40 GB - $4.03 + $1.00 + $2.88 = ~ $10
M3.Medium for Application Server - $70.28
Amazon EC2 EBS - 40 GB - $4.03 + $1.00 + $2.88 = ~ $10
B – Staging Beta Machines
M3 Medium Machine are General purpose instances provide a balance of compute, memory, and network resources, and are a good
choice for many applications. They are recommended for small and medium databases, data processing tasks that require additional
memory, caching fleets, and for running backend servers for SAP, Microsoft SharePoint, and other enterprise applications.
AWS Infrastructure Cost – Staging Beta Server
Sumit Arora | sumit1234@gmail.com
10. Region : Asia Pacific (Tokyo) Region
Objective : Production environment
Description : All production ready code, database enhancement or
any new feature integration , Its lively used by the consumers.
Anything first screened in-house team after on Boot Strap Server,
then Staging server and then on Production Server. It has active
and standby mode. Standby would be active on many emergency
or maintenance situations.
Servers and EBS :
M3.Medium for Database Server - $70.28
Amazon EC2 EBS - 40 GB - $4.03 + $1.00 + $2.88 = ~ $10
M3.Medium for Application Server - $70.28
Amazon EC2 EBS - 40 GB - $4.03 + $1.00 + $2.88 = ~ $10
C – Alpha Production Server –Active/Standby
M3 Medium Machine are General purpose instances provide a balance of compute, memory, and network resources, and are a good
choice for many applications. They are recommended for small and medium databases, data processing tasks that require additional
memory, caching fleets, and for running backend servers for SAP, Microsoft SharePoint, and other enterprise applications.
AWS Infrastructure Cost :Active/Standby Production Server
Sumit Arora | sumit1234@gmail.com
11. Region : Asia Pacific (Tokyo) Region
Amazon Cloud Front ~CDN Pricing
Per GB Transfer - $0.14 Per GB – If Monthly 10 GB Transfer - $1.50
HTTP requests Pricing $0.0075 for 10,000 - $3 for 4 Millions requests
HTTPS Requests Pricing $0.0100 for 10,0000 - $3 for 4 Millions requests
Elastic Load Balancer Fee
$0.025 per hour x 24 hours per day x 30 days x 1 Elastic Load Balance - $19 per month
Elastic Load Balancer Data Transfer Fee : $0.008 per GB x 10 GB
Simple Storage Service
$0.005 per 1,000 PUT, COPY, POST, or LIST requests e.g. 1,397 Requests $0.01 ~ $3 Per Month
Amazon Route 53 Requests
$0.40 per 1,000,000 queries for the first 1 Billion queries | e.g. 844 Queries | 0.01 -~$3 Per Month
$0.50 per Hosted Zone for the first 25 Hosted Zones e.g. Two Hosted Zones ~ $1.00
Miscellaneous Cost
$30 Per Month
AWS Infrastructure Cost – Misc Cost
Sumit Arora | sumit1234@gmail.com
12. Web
Application
BootStrap Staging Production Misc/Includi
ng SSL
Standby
Production
January $63 $160 NA NA NA
February $63 $160 $160 $20 NA
March $63 $160 $160 $20 NA
April $63 $160 $160 $60 $160
May $63 $160 $160 $60 $160
June $63 $160 $160 $60 $160
July $63 $160 $160 $60 $160
August $63 $160 $160 $60 $160
September $63 $160 $160 $60 $160
October $63 $160 $160 $60 $160
November $63 $160 $160 $60 $160
December $63 $160 $160 $60 $160
$756 $1920 $1760 $580 $1440
*$6456
Yearly Infrastructure Price Prediction
*Given calculated price just an approximation, this price could be reduced or increased based on the exact needs
Sumit Arora | sumit1234@gmail.com