Organizations everywhere are implementing container technology, and many of them are also turning to Kubernetes as a solution for orchestrating containers. Kubernetes is attractive for its extensible architecture and healthy open source community, but some still feel that it is too difficult to use. Now, new tools are emerging that help streamline Kubernetes and make building container-based applications easier. Here, we will consider several open source options worth noting.
Microsoft’s Kubernetes Moves
Microsoft has just open sourced Draft, a tool that streamlines application development and deployment into any Kubernetes cluster. “Using two simple commands, developers can now begin hacking on container-based applications without requiring Docker or even installing Kubernetes themselves,” writes Gabe Monroy, PM Lead for Containers at Microsoft. “You can customize Draft to streamline the development of any application or service that can run on Kubernetes.”
In April, Microsoft acquired the Deis container platform from Engine Yard, and Draft is a direct result of that acquisition. “Draft targets the ‘inner loop’ of a developer’s workflow while developers write code and iterate, but before they commit changes to version control,” notes Monroy. “When developers run ‘draft create’ the tool detects the application language and writes out a simple Dockerfile and a Kubernetes Helm chart into the source tree. Language detection uses configurable Draft ‘packs’ that can support any language, framework, or runtime environment. By default, Draft ships with support for languages including Node.js, Go, Java, Python, PHP, and Ruby.”
You can see this process in action here.
In acquiring the Deis container platform from Engine Yard, Microsoft also became a steward, along with the Cloud Native Computing Foundation and several other organizations, of Helm, which is billed as “the best way to find, share and use software built for Kubernetes.” It is essentially an open Kubernetes package manager. “Helm Charts help you define, install and upgrade even the most complex Kubernetes application,” note the community leaders.
The Kubernetes blog notes the following about Helm: “There are thousands of people and companies packaging their applications for deployment on Kubernetes. This usually involves crafting a few different Kubernetes resource definitions that configure the application runtime, as well as defining the mechanism that users and other apps leverage to communicate with the application…We began to provide a home for Kubernetes deployable applications that provides continuous releases of well documented and user friendly packages. These packages are being created as Helm Charts and can be installed using the Helm tool. Helm allows users to easily templatize their Kubernetes manifests and provide a set of configuration parameters that allows users to customize their deployment.”
Red Hat’s New Angle on Kubernetes
Red Hat, too, is positioned to help users streamline their Kubernetes implementations. The company recently announced its intent to acquire San Francisco-based startup Codenvy, which gives developers options for building out cloud-based integrated development environments, including working with Kubernetes and containers. Codenvy is built on the open source project, Eclipse Che, which offers a cloud-based Integrated Developer Environment (IDE) and development environment. The OpenShift.io cloud-based container development service from Red Hat already integrates Codenvy’s Eclipse Che implementation.
In essence, Codenvy has DevOps software that can streamline coding and collaboration environments. According to Red Hat: “[Codenvy’s] workspace approach makes working with containers easier for developers. It removes the need to setup local VMs and Docker instances enabling developers to create multi-container development environments without ever typing Docker commands or editing Kubernetes files. This is one of the biggest pain points we hear from customers and we think that this has huge potential for simplifying the developer experience.”
“The rapid adoption of containers makes orchestration standards the industry’s next step. We held the view that Kubernetes and Red Hat OpenShift are leading the way in this space. So when Red Hat shared their container vision, our decision to join them became a no-brainer,” Codenvy CEO Tyler Jewell said.
The move toward containers shifts many types of dependencies pertaining to applications, and shifts how applications are created. Kubernetes has proven to be an essential orchestration tool as these shifts evolve, and it is good to see open tools arriving that can help streamline Kubernetes itself and make developing applications easier.
To learn more about Kubernetes, check out the sample course materials for Kubernetes Fundamentals (LFS258), an online, self-paced course developed by The Linux Foundation Training that gives a high-level overview of what Kubernetes is and the challenges it solves. Download a free sample chapter now.