Home / Companies / Temporal / Blog / Post Details
Content Deep Dive

Safe, versioned Worker Deployments on Kubernetes: Now with autoscaling!

Blog post from Temporal

Post Details
Company
Date Published
Author
Brandon Chavis
Word Count
1,274
Language
English
Hacker News Points
-
Summary

Temporal's new Temporal Worker Controller is an open-source Kubernetes operator that simplifies the deployment and scaling of Temporal Workers. Unlike traditional rolling updates for stateless microservices, Durable Execution systems like Temporal require managing multiple Worker versions simultaneously. The controller automates this process by creating a versioned Kubernetes Deployment for each Worker version, gradually shifting traffic, and retiring outdated versions. A significant enhancement includes the support for autoscaling, allowing the attachment of Kubernetes resources such as Horizontal Pod Autoscalers (HPAs) to each versioned deployment. The WorkerResourceTemplate, a new feature, acts as a template for Kubernetes resources, enabling automatic scaling and resource management without hardcoding Deployment names. This design leverages existing Kubernetes capabilities, allowing users to maintain their current autoscaling expertise and tools. The controller ensures security by default with a validating webhook and explicit Role-Based Access Control (RBAC). Overall, the Temporal Worker Controller provides an efficient solution for managing Temporal Workers on Kubernetes, offering both ease of deployment and advanced scaling capabilities.