Pulumi offers ‘code-based approach’ to cloud native apps
Pulumi Corporation has come forward with new libraries and tools for Kubernetes, the open source container orchestration system.
Pulumi who? Ah yes sorry, Pulumi is quite new (founded in 2017 and pronounced ‘puh-loo-me’) and describes itself as a cloud native development platform company that provides frameworks and libraries to build, deploy and manage cloud services using familiar programming languages (incliuding JavaScript, TypeScript, Python, Go).
The new libraries and tools enable what the firm calls a ‘code-based approach’ to coding (yeah, okay that part was obvious), but also deploying and managing applications across clouds including Amazon EKS, Microsoft AKS and Google GKE, in addition to on-premises and hybrid environments.
How does it work?
Initially by providing full access to Kubernetes APIs, Pulumi also enables the execution of all Kubernetes operations through ‘config as code’, which also enables code reuse and abstraction.
“Kubernetes is rapidly standardising compute across all public and private clouds and paves the way for a true cloud native development platform. Pulumi simplifies defining, deploying and managing modern cloud native applications,” said Joe Duffy, CEO, Pulumi.
Deploy a canary
This technology also supports advanced, complex service management functionality. For instance, Pulumi can deploy a canary, then run Prometheus-based health checks, before progressing to a production rollout or rollback if necessary.
As noted by Octopus here, Canary [i.e. early warning] deployments are a pattern for rolling out releases to a subset of users or servers. The idea is to first deploy the change to a small subset of servers, test it, and then roll the change out to the rest of the servers.
The code reuse element here is also suggested to ease previously more difficult operations such as ensuring complex multi-stage cloud application deployments, or combining Kubernetes deployments with other cloud resources such as datastores.