In a very short time cloud computing has become a major factor in the way we deliver infrastructure and services. Though we’ve quickly breezed through the ideas of hosted cloud and orchestration. This talk will focus on the next evolution of cloud and how the evolution of technologies like container (like Docker), microservices the way Netflix runs their cloud) and how hybridization (applications running on Mesos across Kubernetes clusters in both private and public clouds).
Generative AI for Technical Writer or Information Developers
Cloud 2.0: Containers, Microservices and Cloud Hybridization
1. Linux Foundation Collaboration Summit – February 2015
Mark Hinkle
Senior Director
Open Source Solutions
http://open.citrix.com
@mrhinkle
mrhinkle@gmail.com
2.
3. 3
Slides Can be Viewed and Downloaded at:
http://www.slideshare.net/socializedsoftware/
Copyright Mark R. Hinkle, available under the
CCbySA license some rights reserved 2015
13. 0 0.5 1 1.5 2 2.5 3 3.5 4
Amazon
Azure
Google
Rackspace
Revenue (in Billions)
Source: Company data, Evercore Group LLC, Research. Azure based on MSFT comments about a $1 billion rev run rate in May
2013. Google based on estimate by TBR (Technology Business Research)
14. Company Revenue Annual Growth
Amazon $962 million 49%
Microsoft $370 164%
IBM $259 86%
Salesforce $203 38%
Google $169 47%
Source: Synergy Research Group
15. “Citrix CloudStack 3 Brings the Power of Amazon-Style Clouds to
Customers of All Sizes”
Citrix Press Release, February 12, 2012
“AWS And Eucalyptus To Make It Easier For Customers To Migrate
Applications Between On-Premises Environments And The Cloud”
Eucalyptus Press Release, March 22, 2012
“HP Cloud Compute undercuts Amazon, too”
Tech Target, December 12, 2012
27. • Lightweight Linux execution environment
• Static application composition
• Reliable deployment
• Unit of resource isolation
• Execution isolation
• Multi-tenancy without heavyweight VMs
28. • Rapid deployment
• Ease-of-use
• Portability
• Provenance
• Reusable Code
• Open Source
• Configurable Layers
• Reproducible
• Version-Controlled
The Flux Capacitor
Of Cloud Computing
29. Legacy - Node First Development
App +SO bundled machine images
Fragile, tightly couple apps and little resource fungability.
Low resource efficiency
Containers
Hermetically sealed deployment units
Efficient isolation and resource use.
Clustering
Declarative app model
Agile, decoupled architecture
Smart (Machine Learning Enhanced)
Active Management
New World - Cluster First Development
Radically enhanced developer productivity: snap together systems.
Radically reduced operations overhead: deploy, run, update effortlessly
Operational specialization: cluster/infra ops separate from app ops
30. • Security???
• Binary Management (Repos)
• Resource tracking and separation
• Networking across clouds/hosts
• Container consistency (Multiple container sources)
• Many other problems with rapidly deployable, highly portable, easily
used technologies
31.
32.
33.
34.
35.
36. microservices(n) - Loosely coupled
service oriented architecture with
bounded contexts
If every service has to be
updated at the same time
it’s not loosely coupled
If you have to know
too much about surrounding
services you don’t have a bounded context.
37. • Microservices can be introduced quickly
• Leave old services in production until time to clean-up
• Allows for faster speed of innovation
• Code pushes are only additive so no legacy issues
40. Alex Williams (the New Stack) : Looking out at 2015, what are some
of the issues that will be more complex in this distributed
infrastructure world for customers – what are some of the top ones
you see?
Mitchell Hashimoto(Hashicorp) - Number one is service proliferation, where
your data center just becomes more and more services. Number two is, inherently
becoming multi-data-center and highly-distributed at a much earlier stage. With things
like Docker, where you can run things in much smaller units, it becomes a lot easier to
start running a lot more services. As a result, we have a management problem, an
orchestration problem, and distributed system problems in there.
Source: http://thenewstack.io/new-stack-mitchell-hashimoto-containers-no-containers-one-question-2015/
44. …the future of technological innovation is
not stealing limited resources away from
one another, but creating new resources
— and new opportunities to create new
resources — together in a rich ecosystem.
Allison Randal
Open Source Hacker
Former OSCON Program Chair
@allisonrandal
Open Source Isn’t a Zero-Sum Game
45. Innovate
Develop what doesn’t exist to address your needs
Leverage
Leverage the growing base of high-quality open source software
Commoditize
Shift non-differentiating tech to reliable services or sources
Simon Wardley – Open Source as a weapon
46. • Declarative > Imperative – State desired results, let the system actuate
• Control loops: Observe, rectify, repeat
• Simple > complex: Do as little as possible
• Modularity: Components, interfaces & plugins
• Legacy compatible: Requiring apps to change is a non-starter
• Network-centeric – IP addresses are cheap
• Non grouping - Labels are the only groups
• Cattle > pets: Manager your workload in Bulk
• Open > closed: Open Source, standards, REST, JSON, etc.
Courtesy: Craig Mcluckie Google Linux Collab Summit
47. A design pattern in which software/application
components provide services to other
software/application components via a protocol,
typically over a network and in a loosely-coupled
way.
SOA Definition circa 1995
49. • Cloud Tenets
(Rapid Elasticity, Metered, Self-Service, Pooling, Broad Network)
• Hosted on User Selected Hardware
• Tailored to just what you need
• Unlikely to have as many zones as public
• Next evolution of cloud isn’t all-in-on, it’s
federation of cloud services (no silos)
52. And I work on open source at Citrix.
http://open.citrix.com
Thank You
53. • Pattern: Microservices Architecture
• Gilt’s Kevin Scaldeferri on Enabling Micro-service Architectures with
Scala(Video)
• Heroku Blog - Why Microservices Matter
• Microservices Example – Azure Biz Talk
• Video: Integrating to Microservices by Adrian Cockcroft
• Distributed Systems for Fun and Profit
Editor's Notes
My name is Mark Hinkle and I work on open source at Citrix.
We are active in the Apache CloudStack Cloud Computing Community. (www.cloudstack.org)
The Linux Foundation’s Xen Project (the open source hypervisor) and Open Daylight projects. (www.xenproject.org and www.opendaylight.org)
We also operate XenServer as an open source project as well. (www.xenserver.org)
I don’t do what I do because I want to sell software. I do what I do because I believe that what I do helps make the world a better place. Because I help make the world a better place it helps my employer make money. Win-Win-Win.
Migrating the same workload across multiple cloud providers is hard.
As we started to become cloud we realized that the sticking point was how fast we could keep up with the
DevOps
Shorter time to value
Flocker Documentation - https://docs.clusterhq.com/en/0.3.2/introduction.html#motivation-for-building-flocker
Flocker lets you move your Docker containers and their data together between Linux hosts. This means that you can run your databases, queues and key-value stores in Docker and move them around as easily as the rest of your app. Even stateless apps depend on many stateful services and currently running these services in Docker containers in production is nearly impossible. Flocker aims to solve this problem by providing an orchestration framework that allows you to port both your stateful and stateless containers between environments.
https://github.com/zettio/weave
Weave creates a virtual network that connects Docker containers deployed across multiple hosts.
Martin Fowler – Microservices - http://martinfowler.com/articles/microservices.html
See the Domain Driven Design book by Eric Evans.
How many people here use VMware? How many people use Hyper-V for virtualization?
How many people benefit from joint collaboration between VMware and Micrsoft on those technologies.
How many people here use Red Hat Linux? Keep your hands up.
How many people here use Ubuntu Linux? Keep your hands up.
How many people here use Debian Linux? Keep your hands up.
How many people use some an Android device? Keep your hands up.
How many people use a Rasperry Pi or some other embedded device? Keep your hands up.
How many people benefit from joint development of the Linux kernel? Everyone who has their hands up should keep them up.
The difference between proprietary software and open source is that if you go down the proprietary road it’s rare that your contributions can help the users of another project be successful.
In open source that’s par for the course. Sometimes we get competitive on who has the best open source project. I liken this to fraternities at a college but in the end we all cheer for the same football team on Saturday. Together we all win.
I work on Xen Project and XenServer and we rely on QEMU, so does KVM both communities benefit from that upstream both communities help contribute back feedback that makes QEMU better.
I work on Apache CloudStack and we work with Ceph, Gluster, Scalr, Puppet, Chef, Zenoss, Riak CS, Xen, KVM, Open vSwithc to integrate their technologies and give feedback to make them better. Lot’s of you work on OpenStack.
Both projects contribute to a broader ecosystem that is better for everyone.
Inspired by a TechCrunch interview - http://techcrunch.com/2011/08/21/linuxcon-open-source-is-an-ecosystem-not-a-zero-sum-game/
2014 State of Cloud Computing - http://www.rightscale.com/blog/cloud-industry-insights/cloud-computing-trends-2014-state-cloud-survey