Ignite talks are 20 slides auto-advancing every 15 seconds. This session attempts to share the value of migrating existing applications from legacy to modern platforms.
The Codex of Business Writing Software for Real-World Solutions 2.pptx
DevOps Days Singapore 2018 Ignite - Bringing Your Applications into the Future with Habitat
1. Bringing Your
Applications into the
Future with Habitat
DevOps Days Singapore
October 11, 2018
Matt Ray
matt@chef.io
@mattray
2. Chef's 2018 State of Application Delivery Survey
How do you measure app
deployment success?
Speed is success for applications - but achieving speed is a big challenge.
Speed*
How long does it take to
complete the app build process?
Days or Longer
How many builds before an app
is deployed to production?
61%
72%
Four or More
55%
46 45
34
https://www.chef.io/solutions/modernizing-apps/
3. Chef's 2018 State of Application Delivery Survey
In 2 years, what percent of your apps will
be deployed on container platforms?
1/4 or More
51%
Which approach will you use to transition apps
to new architectures & infrastructures?
Aggressive plans for containerization,
most often by lifting, shifting, and
modernizing applications.
73%
52%
Lift, Shift,
Modernize
Rewrite
Apps
Speed is success for applications - but
achieving speed is a big challenge.
https://www.chef.io/solutions/modernizing-apps/
4. Chef's 2018 State of Application Delivery Survey
Aggressive plans for containerization, most often
by lifting, shifting, and modernizing applications.
Which is the most challenging aspect of
the application lifecycle?
Management
44%
What percent of production apps run in
the following environments?
Environments are
heavily
heterogeneous,
and application
management is
most challenging.
Speed is success for applications - but
achieving speed is a big challenge.
https://www.chef.io/solutions/modernizing-apps/
5. The Benefits and Problems of Legacy
Legacy is shorthand for critical business applications with longevity. But it
creates manageability problems:
Windows 2003
MSVC, COM+, etc.
Business App 1
Windows 2008 R2
MS .NET 2.0
Business App 2
Red Hat Linux 5
IBM WebSphere
Business App 3
Red Hat Linux 6
Tomcat 6 / Java 7
Business App 4
This is frustrating because the business value is in the app. Yet you carry all
of the burden to support it.
6. What is Habitat?
Application automation that enables
modern application teams to build, deploy,
and manage any application in any
environment - from traditional to
containerized microservices.
7. Deliver on a Cloud-Native
(Cloud/Containers) Strategy
Organizations hit a wall when adopting and
deploying to a cloud-native platform.
Docker, Kubernetes, Cloud Foundry,
Mesosphere and other container platforms.
8. “Lift & Shift” Legacy Apps to
Modern Platforms
Organizations struggle to move existing,
business critical apps to modern platforms.
Linux and Windows applications that need
to modernize.
9. Application-centric Operations with Chef Habitat
Habitat splits the platform-independent part of the application from the
platform-dependent part
BUILD DEPLOY MANAGE
Ring
Supervisor
Platform-Independent Build Export Platform-Dependent Deploy
10. Building & Packaging Applications with Habitat
USER ARTIFACT
Packaging Applications (Platform Independent)
PLAN DEPOT
11. Exporting to containers with Habitat
Traditional applications Habitat packages
Libraries
Operating System
Application
Application Libraries Application &
Libraries
OS
12. Deploying & Running Applications with Habitat
SERVICE
SUPERVISOR
SERVICE
SUPERVISOR
SERVICE
SUPERVISOR
SERVICE
SUPERVISOR
Deploying and Running Applications (Platform-dependent)
DEPOT ARTIFACT
BARE METAL
CONTAINERS
IMAGES
VM
13. LEADER
STAND ALONE
Topologies Update StrategiesRunning
Applications
SERVICE
SUPERVISOR
SERVICE
SUPERVISOR
SERVICE
SUPERVISOR
SERVICE
SUPERVISOR
SERVICE
SUPERVISOR
SERVICE
SUPERVISOR
Deploying & Managing Apps with Habitat
LEADER
ElECTION
ALL AT
ONCE
ROLLING
14. On-Prem & SaaS-based build service
▪ Git source repository integration
▪ Automated builds and dependency rebuilds
▪ Public and private origins
▪ Release channels for Continuous Delivery
▪ Container publishing to Docker registries
▪ > 600 packages for common applications and libraries
Habitat Builder
https://bldr.habitat.sh
15. Habitat's Approach for Legacy Modernization
Windows 2003
MSVC, COM+, etc.
Business App 1
Windows 2008 R2
MS .NET 2.0
Business App 2
Red Hat Linux 5
IBM WebSphere
Business App 3
Red Hat Linux 6
Tomcat 6 / Java 7
Business App 4
Keep this:
Bundle as much of this as needed with the app:
Eliminate or reduce dependency on this:
16. Customer Story - Modernizing Legacy Apps
The challenge:
● Large auto manufacturer moving COTS
apps to next generation data center
● Example legacy app: Windows
application written in Borland Delphi in
2003 - in Portuguese
● Lot of value in the app, painful to rewrite
The solution:
● Package the application and its
dependencies with Habitat
● Enable the application to be deployed to
any environment - next generation
datacenter and beyond
● Manage the application through its
lifecycle - updates, patches, etc.
● Gain manageability benefits in the new
environment and maintain value of the
app without rewriting
BUILD DEPLOY MANAGE
Ring
Supervisor
17. For Developers
Works on my machine
▪ Any language
▪ Automatic builds on commit
▪ Explicit dependency declarations
▪ Stable & unstable release channels
18. For Operators
Works the same everywhere
▪ Automated container builds
▪ Immutable build artifacts
▪ Release channels for CD workflow
▪ Consistent management of any application on any
platform
19. Benefits of Application Portability
• Reduce or eliminate operating system TCO
• Easily right-size workloads to infrastructure
• One way to production & management for all
applications
• Future-proofing from platforms
20. Apache Licensed!
Open Source Community
▪ Docs and Tutorials https://habitat.sh
▪ Source Code github.com/habitat-sh
▪ Slack habitat-sh.slack.com
▪ Forums forums.habitat.sh