Chef Releases Habitat Builder
October 09, 2017
Builder is a SaaS-based service that provides the fastest way to package
apps simply and consistently for deployment and management across
flexible cloud native architectures such as those comprising Docker
Swarm, Kubernetes and Cloud Foundry, both on-premises and in-cloud.
Habitat Builder gives developers and operations teams complete control
over the containerized application lifecycle.
Developers packaging applications with Habitat are not required to
commit to a particular export format or runtime; that decision can be
made when the applications are deployed. Habitat also provides
scaffolding for popular languages such as Node.js, Java and Ruby On
Rails, automatically detecting what language tooling is being used and
building an artifact for the application. Deployment artifacts contain
the app, as well as the libraries and dependencies it needs to run in
any traditional or cloud native architecture.
“While the application portability benefits of containers are widely
recognized, lack of consistency in packaging and orchestration across
the application lifecycle has, in many cases, limited the success of
their deployment at scale, even when using cloud native architectures,”
said Stephen Elliot, Program Vice President at IDC. “Separating
packaging, deployment concerns, and artifacts is one strategy that can
empower teams to deliver on business objectives of delivering software
at speed, with high quality.”
“Habitat packaging addresses many of the complexities distributed
computing app deployment introduces,” said Amulya Sharma, senior staff
engineer at GE Digital. “Because we can fully package apps as a single
artifact, we see a 30 percent reduction in the time it takes to create
the first cluster, and 30 percent over that for subsequent clusters. It
also boosts our agility by allowing us to deploy to any and all of the
runtime formats and targets we use, including plain VMs, Docker,
Kubernetes, Mesos and Cloud Foundry.”
"With Habitat, we have an easier onramp to packaging our apps in any
environment,” said Blake Irvin, Engineer at smartB Energy Management
GmbH. “The learning curve for our dev teams who are doing a little bit
of ops as well as traditional software engineering is a lot less steep.
The fact that we can radically simplify deployment processes by treating
every service as an artifact is very powerful. Adopting Habitat means
you have a reproducible, consistent method for build and deploy and you
can apply that model to every service or application that you're
running. Once you've learned how one service is deployed or managed,
you've got everything you need to figure out the next service."
Habitat Builder offers essential services for cloud native operations:
• Build Service: Offers simple and consistent packaging and build
capabilities that produce immutable build artifacts explicitly declaring
all build- and run-time dependent libraries, exposed services/ports, and
• Artifact Store: Provides public and private repos to hold versions of
packaged artifacts ready for deployment to desired architectures
including TAR, Docker, CloudFoundry and Kubernetes
• Application Supervision: Enables consistent management capabilities --
runtime lifecycle, configuration updates, clustering topologies and
update strategies -- through the Habitat Supervisor, regardless of
Habitat Builder provides native integration with Github for source code
and with Docker Hub for container format export with more integrations
to follow. It also includes a native operator for Kubernetes that
enables simple export of Habitat packages into a cluster, along with a
container exporter for Cloud Foundry that injects Cloud Foundry defaults
into Habitat-run services. These allow for easy extension and
integration with internal PaaS.
The three phases of the Habitat packaging and delivery process include:
Build. Habitat provides better container packaging with a safe, simple
and secure application packaging system.
• Developers can define their dependencies and configuration needs and
create deployable artifacts.
• Developers can connect their source code repos to Habitat to enable
automated builds, and trigger builds based on dependency changes.
Deploy. Habitat can deploy applications to any format and runtime in
traditional and cloud native architectures.
• Habitat Builder packages can be exported to any deployable artifact
such as Docker, rkt, Mesos or Tar, and exported for platforms such as
Kubernetes and Cloud Foundry.
• Habitat Builder can be connected to Docker Hub to automatically
publish apps to that registry. More registries will be integrated into
the service over time.
Habitat delivers automation for applications by integrating a supervisor
with the deployment artifact.
• The Habitat supervisor understands what is needed to successfully run
the application and automates critical functions such as configuration,
enabling clustering topologies and managing the lifecycle of the
services that are declared as part of the build.
• Using Habitat Builder, everything the application needs, from build
dependencies, runtime dependencies, configuration, dynamic topologies,
deployment strategies, secrets management and security auditing stays
with the application.
“While some existing tools are great for getting started with
containers, modern app teams need to be able to package and deploy apps
across multiple traditional, and cloud native architectures,” said Marc
Holmes, vice president of marketing for Chef. “We developed Habitat
Builder to enable developers to package apps in a consistent way, and
enable operations to choose appropriate deployment targets, bringing the
team closer together through a clear separation of concerns.”