Pulumi Releases a Kubernetes Operator
Infrastructure-as-code cloud engineering platform provider Pulumi, which aims to enable organizations to manage infrastructure on any cloud, made its Pulumi Kubernetes Operator generally available this week.
Pulumi initially introduced the Pulumi Kubernetes Operator last year to help enterprises to deploy and manage cloud infrastructure from within their Kubernetes environment. The company just introduced the generally available version at the KubeCon + CloudNativeCon North America 2021.
The new 1.0 release brings many enhancements including scalability, performance and quality improvements such as support for GitOps workflows with branch tracking and private git repos, said Luke Hoban, chief technology officer at Pulumi and Vivek Lakshamanan, a staff software engineer at the company, in a blog post.
New Features in Version 1.0
New features in the 1.0 release include that the operator now supports specifying a branch instead of a commit in a target Git repo. When a branch is specified, the operator will track any changes to what that branch is tracking, and trigger deployments automatically when new code is pushed, the Pulumi post said.
“This is a ‘pull-based’ model, where the operator watches the Git repo for changes. This ensures that the operator can be run in a private network environment that is not reachable from the internet (or via GitHub webhooks) and that the operator is fully in control of how these updates are discovered and processed,” the post said.
Moreover, in an interview at KubeCon, Joe Duffy, co-founder and CEO of Pulumi this move enables new use cases for the Pulumi Kubernetes Operator, allowing the declarative model to be pushed from being purely within the Kubernetes resource to allowing the exact commit to deploy to be specified in a Git repo branch.
“This allows infrastructure configuration to be defined once for a given environment, and then actively updated via git push. In this mode, the Pulumi Kubernetes Operator can be used in place of traditional CI/CD integrations or other cloud infrastructure deployment workflows,” the Pulumi post said.
Meanwhile in addition to support for branch tracking, the Operator also now supports access to private Git repositories, critical for deploying your production infrastructure via the Pulumi Kubernetes Operator, the company said.
Just months after the release of the Pulumi Kubernetes Operator, the company also released the initial version of the Pulumi Automation API, which provides an SDK for embedding Pulumi deployments inside an enterprise’s own software and systems, allowing developers to build your their own interfaces for managing cloud infrastructure, the Pulumi post said.
The Pulumi Automation API is largely influenced by the company’s experience building the Pulumi Kubernetes Operator, which embeds Pulumi deployments inside Kubernetes, offering a new interface — Kubernetes Stack resources — for managing cloud infrastructure. As such the Pulumi Kubernetes Operator uses the Pulumi Automation API, significantly reducing the size of the operator implementation, building on a robust foundation shared with dozens of other projects in the Pulumi ecosystem, Hoban and Lakshmanan said. Earlier this year, the Pulumi Automation API also reached general availability as part of the Pulumi 3.0 release.
“Our Kubernetes Operator helps you to deploy packages from within a Kubernetes cluster as well, which a number of our very cutting edge cloud native customers are excited about,” Duffy told The New Stack.
Duffy said many Pulumi customers are using plumbing today to build components. And Pulumi has seen a significant increase in customer growth, he said.
“We’re seeing pickup across broad domains — SMB, mid-market, enterprise. We’re seeing a rise in what we’re calling developer-led infrastructure, and you’ll likely hear us talking a lot more about this in the future. What developer-first infrastructure means is developers increasingly getting in the driver’s seat and embracing the cloud, bringing the cloud closer with application architectures, but it doesn’t mean there’s no place for DevOps,” Duffy said.
In fact, Duffy believes a “developer-first” strategy actually lessens any friction between developers and operations teams.
“It’s developer-first because it means infrastructure teams are often thinking about how do I empower my developers, and that’s one of their core missions because they don’t want to be the one responsible for slipping schedules, being late and slowing the pace of innovation,” he said. “The pace of delivery requires them to empower developers but it has to be with guardrails, it has to be with a platform like Pulumi that’s really meant to help them collaborate and work together. This what we’re seeing.”
What’s Next for the Pulumi Kubernetes Operator?
Since the initial release of the Pulumi Kubernetes Operator, Pulumi has added support for using not just the Pulumi Service backends, but also all of the other open source backend options, such as S3, Azure Blob and Google Cloud Storage for state storage, and KMS, KeyVault and Vault for secrets management, the Pulumi post said.
Finally, Duffy noted that next on the list of innovations to enhance the capabilities and scalability of the operator are to enable deployments to be run in separate jobs; adopt new features from the latest Operator SDK, publish Kubernetes events from the Operator; and publish Kubernetes events from the Operator.