Habitat is amazing technology - but a new technology alone will not deliver business value. A technology is good for your business when it allows you to deliver stronger value in higher quantities at a faster velocity. For a business, much of the value comes in the software applications it produces - the application itself is what makes it money. Come hear how Habitat’s focus on the application as the unit of automation allows you to focus on the application itself and not worry about where it will run. Habitat also allows you to easily change where and what your application runs on. Your application and business needs will change over time, which means you need to be able to change your application at a very high velocity without being locked into one type of infrastructure or one vendor. Come witness how Habitat allows your applications to be infrastructure and platform agnostic - you focus on the application, Habitat takes care of packaging your software, exporting it, and running it wherever you need. Learn how you can deliver stronger value in higher quantities at a faster velocity without sacrificing stability.
Higher. Faster. Stronger. Your Applications with Habitat
1. Higher. Faster. Stronger.
Your Applications with Habitat
Nell Shamrell-Harrington
Principal Software Engineer, Habitat
Community Engineering Lead
@nellshamrell
12. Habitat allows you to deliver
stronger value in higher
quantities at a faster velocity.
13. Nell Shamrell-Harrington
• Principal Software Engineer at Chef
• Community Engineering Lead
• Core Maintainer of Habitat
• Co-host Food Fight Show Podcast
• @nellshamrell
22. What Does an Enterprise Look Like Today?
• Hundreds or thousands of applications (both internally written and off the
shelf) that must be managed
23. What Does an Enterprise Look Like Today?
• Hundreds or thousands of applications (both internally written and off the shelf)
that must be managed
• Dependencies of these hundreds or thousands of applications also must
be managed
24. • Hundreds or thousands of applications (both internally written and off the shelf)
that must be managed
• Dependencies of these hundreds or thousands of applications also must be
managed
• Most of these applications are legacy apps
What Does an Enterprise Look Like Today?
26. Three Pains of Legacy Applications
• Painful to maintain application and its dependencies
27. Three Pains of Legacy Applications
• Painful to maintain application and its dependencies
• Painful to adapt application to new platforms
28. Three Pains of Legacy Applications
• Painful to maintain application and its dependencies
• Painful to adapt application to new platforms
• Painful to support old technology stacks
29. Business App 1
Legacy Applications
MS .NET 2.0
Windows 2008 R2
Business App 2
IBM WebSphere
Redhat Linux 5
Business App 3
Tomcat 6 / Java 7
Ubuntu Linux
12.04
30. Business App 1
Legacy Applications
MS .NET 2.0
Windows 2008 R2
Business App 2
IBM WebSphere
Redhat Linux 5
Business App 3
Tomcat 6 / Java 7
Ubuntu Linux
12.04
Business value is here
31. Business App 1
Legacy Applications
MS .NET 2.0
Windows 2008 R2
Business App 2
IBM WebSphere
Redhat Linux 5
Business App 3
Tomcat 6 / Java 7
Ubuntu Linux
12.04
Costly (and painful!) burden of support
34. Business App 1
Applications with Habitat
MS .NET 2.0
Business App 2
IBM WebSphere
Business App 3
Tomcat 6 / Java 7
Keep this:
Bundle just as much is needed of this with the app in one package:
35. Business App 1
Applications with Habitat
MS .NET 2.0
Windows 2008 R2
Business App 2
IBM WebSphere
Redhat Linux 5
Business App 3
Tomcat 6 / Java 7
Ubuntu Linux
12.04
Keep this:
Bundle just as much is needed of this with the app in one package:
Eliminate or reduce dependency on this:
37. Three Pains of Legacy Applications
• Painful to maintain application and its dependencies
• Painful to adapt application to new platforms
• Painful to support old technology stacks
Application Portability
Relieves this Pain
39. Application Portability Benefits
• Agnostic to operating system and operating system version (mostly)
• Right size application to any infrastructure – regardless of where it ran
before
41. Three Pains of Legacy Applications
• Painful to maintain application and its dependencies
• Painful to adapt application to new platforms
• Painful to support old technology stacks
Application Portability
Relieves this Pain too!
46. Packaging Software with Habitat
Developer
creates
an app
(or has a
COTS app)
plan.sh
Or
plan.ps1
Developer
creates
plan file
47. Packaging Software with Habitat
Developer
creates
an app
(or has a
COTS app)
plan.sh
Or
plan.ps1
Developer
creates
plan file
Builder
Habitat pull
Dependencies
From Builder
48. Packaging Software with Habitat
Developer
creates
an app
(or has a
COTS app)
plan.sh
Or
plan.ps1
Developer
creates
plan file
Builder
Habitat pull
Dependencies
From Builder
Habitat
packages app
and dependencies
in a HART artifact
49. Three Pains of Legacy Applications
• Painful to maintain application and its dependencies
• Painful to adapt application to new platforms
• Painful to support old technology stacks
Habitat relieves
this pain
50. Demo Time!
• Packaging Software With Habitat
• Uploading that package to the Builder Depot
Contoso University
(.NET app)
52. • Place to store Habitat artifacts where they can easily be accessed
What’s a Builder Depot?
53. • Place to store Habitat artifacts where they can easily be accessed
• There is both a Public Builder Depot and an On-Premises Builder Depot
What’s a Builder Depot?
54. • Place to store Habitat artifacts where they can easily be accessed
• There is both a Public Builder Depot and an On-Premises Builder Depot
• Public Builder Depot includes the Builder SaaS
What’s a Builder Depot?
64. • Stores both Windows and Linux artifacts
Builder SaaS
65. • Stores both Windows and Linux artifacts
• Currently only builds Linux artifacts (Windows builds are planned!)
Builder SaaS
66. • Stores both Windows and Linux artifacts
• Currently only builds Linux artifacts (Windows builds are planned!)
• Hosts the Habitat Core plans
Builder SaaS
69. Core Plans
• Package commonly used software
• From low level system libraries like glibc
• To database services like PostgreSQL
• To platforms like Wordpress
• And much more!
70. Core Plans
• Package commonly used software
• From low level system libraries like glibc
• To database services like PostgreSQL
• To platforms like Wordpress
• And much more!
• 616 Core Plans
• View on Builder (https://bldr.habitat.sh/#/origins/core/packages)
• View on Github (https://github.com/habitat-sh/core-plans)
71. Core Plans
• Package commonly used software
• From low level system libraries like glibc
• To database services like PostgreSQL
• To platforms like Wordpress
• And much more!
• 616 Core Plans
• View on Builder (https://bldr.habitat.sh/#/origins/core/packages)
• View on Github (https://github.com/habitat-sh/core-plans)
• Massive Community Engagement
• 575 pull requests in the past year
• Vast majority (>90%) were merged
74. Running Software with Habitat
Pull HART
File from
Builder
Builder
Place
to run
software
75. Running Software with Habitat
Pull HART
File from
Builder
Builder
Place
to run
software
Habitat
Supervisor
Habitat
Starts
Habitat
Supervisor
76. Running Software with Habitat
Pull HART
File from
Builder
Builder
Place
to run
software
Habitat
Supervisor
Habitat
Starts
Habitat
Supervisor
Unpacks,
initializes,
and runs
packaged
software
77. Running Software with Habitat
Service
One Habitat package
running under one
Habitat Supervisor
78. Running Software with Habitat
Service
Multiple Habitat Services
Running the same
Habitat Package
Service
Service Service
Service Group
79. Running Software with Habitat
Service
Service Group
Service
Service
Service
Service
Service Group
Service
Service
Service
Service
Service Group
Service
Service
Service
Supervisor Ring
All Habitat Services
make up the
Supervisor Ring
80. No matter where an
application packaged with
Habitat is running, it’s
configuration is managed
the same way
96. Business App 1
Applications with Habitat
MS .NET 2.0
Windows 2008 R2
Business App 2
IBM WebSphere
Redhat Linux 5
Business App 3
Tomcat 6 / Java 7
Ubuntu Linux
12.04
Habitat handles
97. Habitat allows you to deliver
stronger value in higher
quantities at a faster velocity.
98. Nell Shamrell-Harrington
• Principal Software Engineer at Chef
• Community Engineering Lead
• Core Maintainer of Habitat
• Co-host Food Fight Show Podcast
• @nellshamrell
Thank You!