Chef’s Habitat Builder Delivers Cloud Native Operations for Containerized ApplicationsOctober 9, 2017
Chef, the leader in Continuous Automation, today announced availability of Habitat Builder, 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 other configuration
- 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 target environment
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.
Manage. 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."