DevOps seeks to align business goals with the goals of development and operations teams. Technology is quickly becoming a strategic business differentiator, bringing IT closer to the business, as customers take advantage of the new applications and services coming online. One challenge IT teams face is a timely way to deploy, configure and manage these critical business applications. A DevOps approach offers enterprises a way to accelerate application delivery.
Join Jeremy Adams, Chris Barker, and Michael Olson from the Puppet Labs team, as they discuss how Puppet Labs’ new Application Orchestration solution helps IT teams deliver on DevOps. You’ll also learn how you can:
-Easily model your application infrastructure to make installations, upgrades and ongoing management repeatable and reliable.
-Configure, deploy and update critical applications faster and without downtime.
-Quickly cycle in new technology, while maintaining and/or cycling out old technology.
9. Where To Start
Infrastructure as Code
Version
Control
Configuration
Management
Peer Review
Collaboration IterationFast Feedback Visibility
Continuous
Delivery
Automated
Testing &
Deployments
10. “Application orchestration will drive the next
phase of DevOps maturity, where the
business, app dev and ops all align around
what delivers the most value to the business —
the application and the business process.”
Nate Loomis
DevOps Manager
13. Easily model distributed applications
Define application
infrastructure based on
desired state, including
dependencies between
different services and
systems
15. Gain enforcement & visibility all in one place
Control the state of
machines & improve
traceability across your
environment, from core
infrastructure to
application releases
19. “Being able to model, test, audit and
orchestrate multi-tier applications and
infrastructure all in one place across multiple
work groups will be critical for large enterprise
organizations as they enter the next phase of
automation.”
Nate Loomis
DevOps Manager
20. Common cultural objectives
From To
Lack of alignment
Low trust culture
Siloed teams
Lots of manual work
Poor visibility
High burnout
Checking boxes
Aligned around goals
High trust culture
Cross-functional teams
Mostly automated work
Fast feedback & insight
High job satisfaction
Creative innovation
21. Common DevOps processes
Continuous delivery is a key practice of DevOps teams
Automated
Testing &
Deployment
Continuous
Integration
Version Control
These factors
model continuous
delivery, which
leads to…
Less
deployment
pain
More frequent
deployments
Lower change
fail rates
Higher levels of
org performance
(productivity,
market share,
profitability
One of the challenges every organization faces is the need to move faster without compromising the reliability, security and stability of their systems.
These two seemingly opposing forces — agility and reliability — are possible to achieve. And it’s not just the unicorns who are achieving these results, it’s the horses, too.
You can’t just say “We’re going to do DevOps now” and expect everyone to drop everything and jump on board.
How many of you have ever had a higher up tell you you had to implement the latest buzzword without fully understanding what it would entail?
How many of you have been the ones telling your staff to implement the latest buzzword?
The best place to start is by managing your infrastructure as code. Our take is that infrastructure as code is a prerequisite for any DevOps or DevOps-like practice. When you treat your infrastructure as code it’s easy to share that code, collaborate around it, put it in a version control system, do peer reviews (rather than the big CAB meetings), unit testing, automate your deployments and more.
After that, automating your configuration management and version control give you the biggest bang for your buck, meaning that you can make substantial gains toward the speed and reliability benefits we talked about earlier.
Since managing your infrastructure as code is such a critical piece of a DevOps practice, let’s spend some time digging into what you should consider as you manage your infrastructure as code.
KEY MESSAGE:
For organizations pursuing DevOps, applications are the thing that business, development and operations teams can all align around.
SUGGESTED TALK TRACK:
Before we dive into what’s new, I’d like to start by setting some quick context. Most of the organizations we work with are either following or on a path toward implementing DevOps practices, as a way of moving faster and more reliably, and aligning teams around the customer value their work delivers. What we tend to see from our customers that have been successful implementing DevOps practices is that their applications serve as the common contract or glue that aligns the business stakeholders that need the application, the developers who make it, and the operations teams that deploy, maintain and support it. And so, we tend to see that empowering those teams to focus on the applications they are enabling and think beyond individual nodes is a critical cultural prerequisite for success with DevOps.
KEY MESSAGE:
Puppet Application Orchestration helps organizations orchestrate the deployment and management of business-critical infrastructure and applications.
SUGGESTED TALK TRACK:
With this release, we’re introducing Puppet Application Orchestration, a new Puppet App, that dramatically reduces the complexity of deploying and managing applications that are composed of many different services, and span many different nodes, so you can quickly and reliably roll out and manage business-critical applications.
Historically, it has been pretty complicated for IT to manage application infrastructure and the complex tangle of dependencies across the services that support an application. Many IT teams still struggle with manual application deployment processes that are slow and error-prone, because of how difficult it is to understand and unravel those dependencies, or because they have to stitch together a fragmented set of tools and processes for infrastructure and app deployment. With Puppet Application Orchestration, we’re solving these problems.
KEY MESSAGE:
First, model application infrastructure based on its desired state, including identifying dependencies between services and systems.
SUGGESTED TALK TRACK:
With Puppet Application Orchestration, you can define your application infrastructure based on its desired state and identify those dependencies between different systems and services. Leveraging an enhanced, human-readable Puppet domain specific language, you’re now able to model your applications and how they relate to the broader infrastructure in a re-usable way, accounting for those dependencies and enabling you to significantly reduce the complexity of getting applications and supporting services running the way they’re supposed to.
KEY MESSAGE:
Application infrastructure and changes can be deployed in an ordered fashion based on the dependencies you define.
SUGGESTED TALK TRACK:
Once you’ve modeled the desired state of your application, with this release you can then coordinate deployments of changes among all of the moving parts in the your infrastructure. For example, your application may have a database service that requires core OS components to be configured on a Windows server, and that database service may need to be up and running before you deploy your web server, or your load balancer. With Puppet Application Orchestration, it now becomes easy to deploy and update applications by running Puppet in a preferred order based on the dependencies you’ve defined. You can do things like start & abort deployments, learn about the progress of ongoing deployments, and retrieve insight about finished deployments.
KEY MESSAGE:
Gain consistent control, visibility and enforcement from your infrastructure through applications with a unified solution.
SUGGESTED TALK TRACK:
One of the key elements that differentiates Puppet Application Orchestration from runbook-style or traditional release automation tools, in addition to our model-driven approach, is that you can use Puppet to control the state of machines across your entire infrastructure, from the application all the way down to its core infrastructure that supports it. The language and tools around it are flexible so that whether the application is managed on the developer's laptop or when it's running distributed in the datacenter, you have one language and toolkit for the full stack, and you get all of the benefits of visibility, traceability, and assurance of consistent state enforcement across your applications, services and core infrastructure. Whether you need to do things such as migrating database schema, clearing a cache from an app server or draining a load balancer, you can control it all in one place with Puppet.
KEY MESSAGE:
For organizations pursuing DevOps, applications are the thing that business, development and operations teams can all align around.
SUGGESTED TALK TRACK:
Before we dive into what’s new, I’d like to start by setting some quick context. Most of the organizations we work with are either following or on a path toward implementing DevOps practices, as a way of moving faster and more reliably, and aligning teams around the customer value their work delivers. What we tend to see from our customers that have been successful implementing DevOps practices is that their applications serve as the common contract or glue that aligns the business stakeholders that need the application, the developers who make it, and the operations teams that deploy, maintain and support it. And so, we tend to see that empowering those teams to focus on the applications they are enabling and think beyond individual nodes is a critical cultural prerequisite for success with DevOps.
Here’s the good news: these desired outcomes are achievable.
In the 2015 State of DevOps report, we found a direct link between DevOps practices, IT performance and organizational performance.
The diagram you see here represents a statistical model that shows how the practices that make up continuous delivery — deployment automation, automated testing, continuous integration and use of version control for all production artifacts — those practices predict deployment pain, IT performance and change fail rate. And in turn, IT performance predicts organizational performance.
KEY MESSAGE:
For organizations pursuing DevOps, applications are the thing that business, development and operations teams can all align around.
SUGGESTED TALK TRACK:
Before we dive into what’s new, I’d like to start by setting some quick context. Most of the organizations we work with are either following or on a path toward implementing DevOps practices, as a way of moving faster and more reliably, and aligning teams around the customer value their work delivers. What we tend to see from our customers that have been successful implementing DevOps practices is that their applications serve as the common contract or glue that aligns the business stakeholders that need the application, the developers who make it, and the operations teams that deploy, maintain and support it. And so, we tend to see that empowering those teams to focus on the applications they are enabling and think beyond individual nodes is a critical cultural prerequisite for success with DevOps.