Creating Value …
… Delivering Solutions
Technology and Cost Considerations for
Cloud Deployment: Amazon Elastic Compute
Cloud (EC2) Case Study
Chris Zajac, NJDOT Bud Luo, Ph.D., Michael Baker Jr., Inc.
Overview of the Presentation
Perceived Benefits of Cloud Services Do you need the Cloud Services? Hosting Service Options
Design to Deploy in Cloud: Technology
Considerations
EC2 Deployment Process Cost: A Closer Look
Conclusions Q&A
Perceived Benefits of Cloud Services
Scalability and performance: Scale up fast Reliability: Reliable equipment and infrastructure Bandwidth: Fast network and broadband Internet
service
Complete control of your own environment
Flexibility in technology selections: Choose your
technology stack, pre-packaged or build your own
Security control (ports, firewalls, access…)
Cost may be lower: Compared to build up and
Do you need the Cloud Services?
Forward looking
Do you have sufficient infrastructure support?
Is my application fine with the current
environment?
Do you have adequate financial and human resources
to build up and support your own infrastructure?
Do you anticipate significant and unpredictable
application hit spike and have the method to address it?
Can I scale up and down swiftly?
Do you share the infrastructure and are limited or
Hosting Service Options
Own environment (your own or shared), governed
by local IT policies.
Typical government agency service option
Commercial ISPs (shared or dedicated).
Need IT policy changes such as allowing external
IP/domain
Commercial Cloud Services such as EC2 and
Rackspace.
This is a step further than the traditional commercial
Design to Deploy in Cloud: Technology
Considerations
The technology stack should consider Free or lower software licensing cost
Leverage on pre-packaged software stacks as much as
possible, especially the low cost or free Open Source ones.
You have options now.
For commercial software, check with your vendors on the
licensing approach and cost.
Easy installation and maintenance
Less support effort.
Stable and mature
NJDOT Traffic Monitoring Systems Web Reporting Tool Technology Stack
NJDOT TMS Web Reporting Tool publishes the location and count
information(http://www.state.nj.us/transportation/refdata/roadway/t raffic_counts/ )
Stable and proven technologies
Glassfish version 3 PostgreSQL version 8.1
With PostGIS extension Customized JEE application Google Maps APIs
File storages
Currently hosted on an commercial ISP Web Server and Application Server Database Server
No commercial software licenses
EC2 Deployment Process
http://aws.amazon.com/ec2/
Create Amazon Web Services (AWS) account
Sign up services
Simple Storage Service (S3) Elastic Compute Cloud (EC2)
Accounting concern
Credit card is the easiest and fastest, but many government
agencies may have issues with this approach
Set up EC2 for Deployment
Select AMIs to use. Many options (Linux, Windows)
Web Server AMI
Operating System: Ubuntu 10.10 Glassfish is included
Database Server AMI
Operating System: Ubuntu 10.10
We selected two Instances (servers)
Web Server Database Server
Check on the instance details for hardware configurations Cost impact
Set up EC2 for Deployment - Continued
Find a Ubuntu AMI to choose
Set up EC2
Assign Key pair (Access/Authentication) to each of
the selected AMI
Security key for your EC2 services
Set Firewall configuration
Port/IP configurations. You are on your own.
Review selection and Launch the instances of the
selected AMIs
Set up EC2 – Continued 2
Connect to your instances (virtual machines) via provided
SSH using key pair and provided public DNS for system administration (additional software installation,
configuration and maintenance)
Install and Configure your Instances to fit your need (Now
they are live instances)
Glassfish (Configuration needed)
PostgreSQL PostGIS (installation and configuration)
Customized JEE application (installation and configuration)
You do need to perform installations and configurations
Set Up EC2 – Continued 3
Postgres DB Server after configuration as shown in local
Set up EC2 –Continued 4
Set Up EC2 – Continued 5
Set Up EC2 – Continued 6
Scale up in EC2
Register for Elastic IP and associate to Glassfish Web Server instance
Scale up or down in EC2
We did not go through the following since our
instances were sufficient for the needs
Launch multiple copies of the same Instance Create Load Balancers to distribute loads
Change Instance type to user higher CPU, more cores,
more storage etc
Monitoring the EC2
• EC2 Tools for monitoring services
• You are on your own to maintain and monitor
the system and cost
Monitoring the EC2 - Continued
Resource UsageCost: A Closer Look
Cost structure Instance (next slide)
OS choice does matter in pricing (>50%)
Any commercial software cost (in most cases you pay the same
as the physical machines )
Storage (if you choose S3)
Live instance does cost money
You can stop and/or scale down the instance any time
Need to compare the cost with local hosting
service option or commercial ISPs (they also claim to be in Cloud Service)
EC2 is >30% cheaper than the commercial ISP we
Cost: A Closer Look - Continued
http://aws.amazon.com/ec2/instance-types/ We chose M1 large, two instances for the case study
7.5 GB memory
4 EC2 Compute Units (2 virtual cores with 2 EC2 Compute Units each*)
850 GB instance storage 64-bit platform
I/O Performance: High API name: m1.large Cost: $5956.8 per year If we go Small (T1)
$744.6 for one instance (this is comparable to what we
have now on commercial ISP)
$1489.2 for two instances
*One EC2 Compute Unit provides the equivalent CPU capacity of a 1.0-1.2 GHz 2007 Opteron or 2007 Xeon processor. This is also the equivalent to an early-2006 1.7 GHz Xeon processor. Source by Amazon
Conclusions
Choose a technology stack that can reduce the
software cost and support effort
Start with low cost EC2 instances and monitor the
usage. Ideally your application runs well on one instance so that scaling is less expensive.
You own the instances, and you own the support
responsibility
Moving/Expanding to cloud has impacts on
Questions?
Chris Zajac, NJDOT
Email: [email protected] Phone: 609-530-4548
Bud Luo, Baker
Email: [email protected] Phone: 215-442-5347