In this talk, Donnie shared what he's seen and what he predicts for the future of how we build and deploy applications to generate business value. You'll hear buzzwords like DevOps, Docker, and microservices used in ways that actually make sense (for a change), see real-world examples of companies that have succeeded at the leading edge, and learn how approaches like the one taken by HashiCorp's Terraform (by the authors of Vagrant) will be critical to the future of how we build software.
27. But it’s not just a toy
27
21%}
Source: 451 VotE Cloud, Q1 2015; n=991
3.1%
19.8%
56.1%
10.7%
3.9%
4.2%
2.1%
Unfamiliar
No Plans
Discovery and Evaluation
Running Trials/Pilot Projects
Used for Test and Development
Environment
Initial Implementation of Production
Applications
Broad Implementation of
Production Applications
28. Today, early adopters. Tomorrow, the majority.
28
11.2%
47.8%
34.5%
6.6%
We are early adopters on the leading edge
We are pragmatic about new technology, but
will act sooner rather than later
We are conservative about new technology
and take a wait and see approach
We are skeptical and are usually late to the
game
Source: 451 VotE Cloud, Q2 2015; n=975
31. Loosely coupled teams
“ One of the biggest changes is that we no longer have
an official ‘architecture’ team. Instead, we have made
‘architecture’ an ‘ingredient’ on each of our teams.”
31
http://tech.gilt.com/post/102628539834/making-architecture-work-in-microservice
– Lauri Apple, Gilt Groupe, 14 Nov 2014
42. Some content from this presentation
is Creative-Commons licensed.
https://creativecommons.org/licenses/by-sa/
https://creativecommons.org/licenses/by/
42
Notes de l'éditeur
Today we’re going to dig deep into the technology, and specifically one of the hottest technologies of the past year – containers.
0 talks at Glue last year, 12 this year
1 proposal at OSCON last year, 30 this year
Intro myself and credibility re containers/microservices
Overall business goals
“Does your company struggle with increased demands for shorter release cycles, with business managers expecting weekly, daily or even hourly releases and updates?”
63% overall
Cathedral, indulgences to bazaar
Open source, cloud, DigitalOcean
Shadow IT: IT as service provider, as vendor
Future is two years out
App dev is 7.8% of workloads, ranked #5 (highest is email/collab at 15.9%)
How do you get them to choose your offering?
… But how are they building this?
Future is two years out
App dev is 7.8% of workloads, ranked #5 (highest is email/collab at 15.9%)
How do you get them to choose your offering?
… But how are they building this?
Future is two years out
App dev is 7.8% of workloads, ranked #5 (highest is email/collab at 15.9%)
How do you get them to choose your offering?
… But how are they building this?
Languages, databases, frameworks
… What’s driving the way we build technology?
OODA loops
Culture: Collaboration, Sharing
Automation: Digital
Measurement: KPIs
Configuration management
CFEngine 1.0: 1993
Release management – quarters to weeks to days to hours
Gary Gruver, HP
Nagios (NetSaint): 1999
Community, UX
Keep using cattle metaphor
The next step in DevOps
How do we cope with these demands for agility, scalability, automation, transience?
VotE shows most orgs are largely moved to virtualization, a minority to automation, few to orchestration/private cloud
Vagrant, Packer, Docker
Windows catching up quickly with DevOps and containers
No need to leave the Microsoft half of your environment behind
Business-defined separations.
Bounded context based on cross-organizational empathy.
Steve Yegge memo — Amazon must be SOA, or you’re fired.
DevOps + microservices
Bounded contexts, empathy defined
DevOps is how you build and run microservices.
Nomad out of HashiCorp, new competitor to Mesos/Kubernetes
Azure Container Service, building on Docker & Mesos. Beta by EOY 2015
Also note PaaS providers moving to containers
Amazing stuff, great open-source code
But hard for the rest of the world to envision becoming like them
Any others?
Launch a multitenant, elastically scalable, componentized cloud integration platform
Dynamically launch and run 100s of different demos in AWS
Their own customers running hotel kiosks, retail POS
Worked well: template project, resilience, idempotence, automation, exposing verbs
Wrote their own testing library to test consumers
Problems: right-sizing, code sharing (inheriting from common git repo and adding files worked)