intro to cloud computing 1. who am i? sergejus barinovas software architect at adform email:...
TRANSCRIPT
1
Intro to Cloud Computing
2
Who am I?
Sergejus Barinovas
Software Architect at Adform
Email: sergejus.barinovas@[adform|gmail].comBlog: http://sergejus.blogas.ltTwitter: @sergejusb
3
Disclaimer
We do use Cloud Computing internally and we want to share our experience with you!
5
“The global cloud computing market to reach $241B in 2020 compared to $40.7B in 2010”
Forrester Research
6
Gartner top 10 strategic technologies for 2012: Media Tablets and Beyond, Mobile-Centric Applications and Interfaces, Contextual and Social User Experience, Internet of Things,
App Stores and Marketplaces, Next-Generation Analytics, Big Data, In-Memory Computing, Extreme Low-Energy Servers,
Cloud Computing
7
“Cloud computing is the provision of dynamically scalable and often virtualized resources as a service over the Internet on a utility basis”
8
Cloud is
scalable,
elastic (dynamic resources),
available as-a-service,
based on utility billing (pay for what you use)
9
So, basically Cloud is …
… elastic scalable compute resources on demand
10
But more important …
… Cloud is not a technology, it is a way of THINKING
11
Cloud as a way of thinking
Existing technologies adopted in a new wayex. virtualization
Utility model is welcomed by everyonestartups and enterprises
DevOps are everywheredevelopers spin 100’s of servers in minutesIT operations write automation scripts
12
Cloud types
Publicpublicly available
Privatebuilt for / available inside enterprise only
Hybridon-premise with extension to public Cloud
13
Cloud offerings
Infrastructure-as-a-Service or IaaShost applications
Platform-as-a-Service or PaaSbuild applications
Software-as-a-Service or SaaSconsume applications
14
Infrastructure-as-a-Service
Virtual machines and infrastructure on demandOS, CPU / RAM, storage, load balancer, VPN
Web portal for controlling and managing servers
Remote desktop / shell
15
IaaS players
Amazon
Microsoft
RackSpace
GoogleTerremark
others
16
Platform-as-a-Service
Working not with the virtual machines per se, but with the abstraction
Rich set of APIs and client libraries / frameworks
Automatic high-availability and load balancing
Hardware and / or OS agnostic
17
PaaS players
Microsoft
AmazonSalesForce
others
18
Software-as-a-Service
Available for more than 10 yearsHotmail, Yahoo! Mail
Usually implemented as a Web application with optional on-premises extensions
You don’t need to use Cloud to run SaaS
19
IT-as-a-Service
20
Sounds cool?
In real-world this not always a case…
21
Infrastructure-as-a-Service
No or limited options to choose hardware fromHDD speed, network throughput
Variant performance due to resource sharing
Limited options to configure TCP ports
Limited options for load balancing
22
Platform-as-a-Service
No or limited options to choose hardware fromHDD speed, network throughput
No or very limited access to the OS internals
Very restrictive firewalls / load balancers
Dynamic IP addresses
23
Want to migrate to the Cloud?
First change you DC oriented mindset…
24
Changes in mindset #1
Before: we have enough hardware resourcespowerful servers, fast hard drives, 10 Gb network
After: only mid-range hardware is availableno topnotch servers, little chance to get SSD
25
Changes in mindset #2
Before: number of servers is more or less fixedfailures are very unlike, all maintenance and new hardware is planned in advance
After: number of servers is dynamic (unknown)failures are OK, no hardware maintenanceimplies scale-out resilient architecture
26
Changes in mindset #3
Before: We have reliable network connectionconnection time-out is a BUG, not a FEATURE
After: Network connection can always FAILevery operation should have retries
27
So, is Cloud cheaper?
NO, unless you’ve applied one of the Cloud usage patterns
28
On and off
On and off workloads (e.g. batch job)Over provisioned capacity is wasted
Usage
Com
pute
Time
Average
InactivityPeriod
29
Growing fast
Successful services needs to grow/scale Keeping up with growth is big IT challenge
Average UsageCom
pute
Time
30
Unpredictable bursting
Unexpected/unplanned peak in demand Sudden spike impacts performance
Com
pute
Time
Average Usage
31
Predictable bursting
Peaks due to periodic increased demandIT complexity and wasted capacity
Com
pute
Time
Average Usage
32
To the Cloud!
33
AWS / Azure feature comparisonFeature Amazon Windows AzureCompute Elastic Compute Cloud (EC2) ComputeLoad balancing Elastic Load Balancing (ELB) ComputeAuto scaling Auto Scaling n/aAttachable disks Elastic Block Store (EBS) DriveBlob storage Simple Storage Service (S3) Blob StorageScheme-less storage SimpleDB Table StorageContent delivery CloudFront CDNDistributed cache ElastiCache CachingDatabase Relational DB Service (RDS) SQL AzureReporting n/a SQL Azure Reporting
34
AWS / Azure feature comparisonFeature Amazon Windows AzureQueue Simple Queue Service (SQS) Queue StorageEmail Simple Email Service (SES) n/aVPN Virtual Private Cloud (VPC) VPN, ConnectDNS Route 53 Traffic Manager (Geo)Service bus n/a Service BusIdentity Identity & Access
Management (IAM)Access Control
Big Data Elastic MapReduce Elastic MapReduceMonitoring CloudWatch n/a
35
That’s a lot!
36
Cloud @ Adform
Amazon EC2 used for test campaigns, stress testing and research
Amazon S3 storage used for raw data300+ GB of uncompressed raw transactions daily
37
Cloud @ Adform
Amazon S3 storage used for RTB logs1+ TB of uncompressed logs daily
Amazon Elastic MapReduce used by RTB Research team
2+ TB of data on 30+ EC2 instances daily
38
Cloud Computing
is elastic scalable compute resources on demand
offered as public or private IaaS, PaaS or SaaS
requires to change mindset and adapt patterns
available from Amazon, Microsoft, Google, etc.
39
Don’t forget: Cloud is not for everyone, but it makes impossible possible!
40