ccceu14 - a real world outlook on hybrid cloud: why and how
TRANSCRIPT
Open-source Enterprise Cloud Management Platform.
All our enterprise customers run on hybrid cloud.
WHAT’S SCALR?Why Talk About Hybrid Cloud?
• CloudStack + AWS at Samsung
• OpenStack + AWS at Expedia, NASA
A system with components deployed across multiple cloud platforms is said to be using hybrid cloud.
Oftentimes, it’s one public cloud and one private cloud (but that consideration actually has limited implications).
DEFINE: HYBRID CLOUD
Image Credit: greeblie (Flickr)
At the app level, “operating on a hybrid
cloud” means you have interdependent
services that make up your app
distributed across clouds.
At the organizational level, “operating a
hybrid cloud” means you have some
resources, possibly independent,
distributed across clouds.
WHAT “SYSTEM”?Challenges and success strategies largely
depend on what you are looking at
Image Credit: Dane Hetteix, Auda Samora from the Noun Project
OrganizationApp
25% of enterprises will be
deploying IT workloads
and applications in a
hybrid cloud setup by 2015.
23% think that hybrid
cloud is the best execution
venue for cloud-native
apps (i.e. greenfield).
Private: 11%, Public: 66%.
43% think that hybrid
cloud is the best
execution venue for e-
business applications.
Private: 18%, Public: 39%.
TIME FOR STATISTICS!Adoption exists both at the organization and app level
23%25% 43%
Source: Forrester Research, “Cloud Wave 6” Study, 2014
COST OPTIMIZATION
Deploy ephemeral apps (e.g. ad campaigns) and risky ventures to a public cloud.
Deploy long term workloads to a private cloud.
Or, “buy the base and rent the spike.”
FAILOVER, DR, BACKUPS
Host failover resources and data backups in a separate cloud for redundancy and possibly cost reduction.
CUSTOM SKUS
Deploy workloads that require unusual CPU / RAM / Disk ratios to a private cloud with custom SKUs.
Deploy more typical workloads to a public cloud.
LEGACY SYSTEMS
Deploy backend resources that integrate with legacy on-premises systems in a private cloud (latency compliance). Deploy frontend resources in a public cloud.
PERFORMANCE
Achieve greater performance by deploying to a private cloud (e.g. smaller DC implies lower latencies, and using bare metal cloud is an option).
VENDOR LEVERAGE
Get a better deal with your public cloud provider by having an alternative.
WHY USE HYBRID CLOUD?More reasons than you can think of! The same apply at both levels
COMPLIANCE
Deploy regulated workloads and store regulated data in a gold-plated secure private cloud, use public cloud for the rest.
AND MORE!
There are literally innumerable use cases for hybrid cloud.
Hybrid cloud means you deploy
workloads to the cloud that is the
best suited to fit their requirements.
Key considerations often revolve
around SLAs and value / cost ratios.
OPTIMIZATION
Image Credit: Sabine Wollender from the Noun Project
One application, multiple tiers distributed across different clouds.
USE CASEWhat are we talking about here?
Image Credit: Auda Samora, Callum Egan from the Noun Project
3 Key Success Strategies:
1. Understand infrastructure differences
2.Be mindful of leaky abstractions
3.Avoid vendor lock-in
“Hybrid cloud? Everyone was talking about it, but no one was really doing it.”
Mark Williams, CTO of Redapt,
formerly at Zynga where he built zCloud
Abstraction libraries like libcloud or fog resolve syntactic API incompatibilities.
But don’t miss the forest for the trees! Semantic incompatibilities matter the most. Account for them!
1. INFRASTRUCTURE“I’ll just use libcloud”
Image Credit: Edward Boatman, Richard de Vos from the Noun Project
E.g. provisioning times can vary across clouds, so scaling parameters that work well on one cloud may not be appropriate for another one.
“APIs are tiny windows into massive, complicated systems”
Randy Bias, CTO of CloudScaling,
built Korea Telecom’s uCloud
Abstractions like Weave (a virtual network for Docker) or a VPN let you simplify application operations, but they are leaky abstractions.
E.g. latency across clouds can be quite high. Latency within a public cloud may already be too high for your workload. Test it!
2. ABSTRACTIONS“I’ll just use Docker”
Image Credit: André Raphael, Richard de Vos, Icomatic from the Noun Project, Michael Wyszomierski (Flickr)
Backend latency can quickly slow a typical Django / Rails app to a crawl. Don’t forget bandwidth costs, too.
Managed services are the bread and butter of cloud lock-in (e.g. DynamoDB, SQS…)
Consider relying on trusted OSS software instead if you intend to use hybrid cloud (e.g. Redis, RabbitMQ)
3. LOCK-IN“I wish I hadn’t used DynamoDB”
Image Credit: Marwa Boukarim from the Noun Project,Vinoth Chandar (Flickr)
Entire organization. Numerous independent apps deployed across multiple clouds.
USE CASEWhat are we talking about here?
Image Credit: Dane Hetteix, Callum Egan from the Noun Project
3 Key Success Strategies:
1. Define cloud for your organization
2.Enable users to transition across clouds
3.Encourage them with the right incentives
1. DEFINEWhat cloud? Cloud-native, or just cloud?
Cloud can have many meanings, but to freely distribute across clouds, your organization must agree on one.
Different clouds encourage different architectures (e.g. cloud-native “cattle vs pets”, traditional “scale-up”).
The “big public clouds” are “elastic”, or “scale-out” clouds.
Image Credit: Martin Delin, Icomatic from the Noun Project
Users of CloudStack should be especially careful.
CloudStack accommodates scale-up workloads differently than most cloud platforms.
2. ENABLESupport end-users that want to migrate from a cloud to
another
Most organisations start on a public cloud and migrate back to a private cloud later on.
End users expect a solid experience that matches what public clouds offer.
Image Credit: Simple Icons, Apache Software Foundation
In private cloud, CloudStack “just works”
3. ENCOURAGEProvide the right incentives for users to place their workloads
where you want them to
To achieve organizational hybrid cloud objectives (e.g. a cost reduction), end users are the ones that must migrate.
Chargeback is an efficient way to incentivize users to move to the cloud where your costs are the lowest.
But private clouds can also typically achieve greater performance than public clouds.
Image Credit: TukTuk Design, hunotika from the Noun Project
Zynga was able to cut cloud costs by 2/3 by moving to zCloud.
Studios started moving when staying on AWS would negatively affect their P&L.
At the organization level
CONCLUSIONWhat can you do?
Image Credit: Dane Hetteix, Callum Egan from the Noun Project
1. Define cloud for your organization
2.Enable users to transition across clouds
3.Encourage them with the right incentives
At the application level
1. Understand infrastructure differences
2.Be mindful of leaky abstractions
3.Avoid vendor lock-in