Google is placing its stake in the ground as a provider of development tools for applications that run on Kubernetes with the release of Skaffold.
The concept behind the tool is to automate tasks associated with the operations side of managing Kubernetes clusters for developers so they have more time to concentrate on creating apps.
Kubernetes app developers, of course, spend most of their day creating apps that might run on Docker or other container platforms, for example. However, without a command line development tool such as Skaffold, they might otherwise have to manage container registries, back up their work and other more manual tasks associated with the operations side of developing Kubernetes apps. For that, Google’s Skaffold command line tool allows developers to write, test and deploy code through a single interface while maintenance-related tasks are automated. The code can be deployed automatically both locally and remotely.
In other words, developers can focus their efforts on developing Kubernetes applications instead of having to construct and manage the container infrastructure.
“It’s already hard to deploy code to containers, so any simplification will be welcome by developers, especially with command line tools like Skaffold,” Holger Mueller, an analyst for Constellation Research, says. “Google has realized the challenge and is putting its weight behind Skaffold.”
Skaffold allows developers to automate workflows for building, pushing and deploying Kubernetes applications, wrote Vic Iglesias, a solutions architect for Google, in a blog post. “Developers can start Skaffold in the background while they’re developing their code, and have it continually update their application without any input or additional commands. It can also be used in an automated context such as a CI/CD pipeline to leverage the same workflow and tooling when moving applications to production.”
While Kubernetes continues to seek fast-track adoption by often allowing IT organizations to make huge leaps in productivity and to better allocate resources, the needs of developers have lagged behind those in operations.
“In some cases, developers are the last people in an organization to be introduced to Kubernetes, even as operations teams are well versed in the benefits of its deployment methodologies,” Iglesias wrote.
Among other things, Skaffold handles the workflow for developers by automatically building, pushing and deploying Kubernetes applications. It also can be used in an automated context such as a CI/CD pipeline to leverage the same workflow and tooling when moving applications to production, Google says.
According to Google, Skaffold offers the following benefits:
- No server-side components or overheads are required for clusters when developing apps.
- Detection for changes in source code.
- Automation for production and deployment.
- Image tag management that removes the needs to manage updating image tags in Kubernetes apps when pushing out changes during developments.
- Support for existing tooling and workflows, so developers can build and deploy APIs allowing for implementations to support many different workflows.
- Support for multiple application components so only the pieces of stacks that have changed need to be built and deployed.
- Regular deployments when saving files.
- The ability to run one-off deployments while using the same configuration.
Since Skaffold’s release, hundreds of issues have been reported associated with the tool—which is, of course, typical for a powerful open source application. Among those, missing documentation has often been cited as an open issue.
Meanwhile, consistent updates and fixes to Skaffold will remain critical to the application’s ultimate success, Mueller says.
“Like with all early offerings, especially since its open source, uptakes will be important,” he says.