docs: self-hosted setup for serverless workers#4476
docs: self-hosted setup for serverless workers#4476lennessyy wants to merge 11 commits intofeat/serverless-worker-prereleasefrom
Conversation
Covers enabling the Worker Controller via dynamic config, configuring AWS credentials for the Temporal server, and creating the Lambda invocation role with a CloudFormation template adapted for self-hosted. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
📖 Docs PR preview links |
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add how to view WCI workflows using TemporalNamespaceDivision filter to both the self-hosted setup page and the deploy guide. Add aws sts get-caller-identity tip for finding the server's IAM ARN. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
||
| ## Enable the Worker Controller {#enable-worker-controller} | ||
|
|
||
| The Worker Controller is the server component that monitors Task Queues and invokes compute providers. |
There was a problem hiding this comment.
| The Worker Controller is the server component that monitors Task Queues and invokes compute providers. | |
| The Worker Controller Instance (WCI) is the server component that monitors Task Queues and invokes compute providers. |
|
|
||
| The Temporal Service watches the dynamic config file for changes and applies updates without a restart. | ||
|
|
||
| ### Worker Controller dynamic config reference {#dynamic-config-reference} |
There was a problem hiding this comment.
This needs to go to dynamic config page, not here.
| - Self-hosted | ||
| --- | ||
|
|
||
| Temporal Cloud handles Serverless Worker infrastructure automatically. |
There was a problem hiding this comment.
We don't need this first paragraph.
|
|
||
| Use this role ARN when creating the Worker Deployment Version. | ||
|
|
||
| ## Verify the Worker Controller {#verify-worker-controller} |
There was a problem hiding this comment.
On second thought I think we don't need this section. Just a ## Next steps section that links to AWS Lambda deploy guide is enough,
- Remove first paragraph (Cloud comparison) - Add brief overview of the three setup steps - Use "Worker Controller Instance (WCI)" instead of "Worker Controller" - Move dynamic config reference table out (belongs on dynamic config page) - Replace verify section with Next steps linking to deploy guide Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
| - A Temporal Cloud account or a self-hosted Temporal Service vx.xx.x or later. | ||
| - Your Temporal Service frontend must be reachable from the Lambda execution environment. For Temporal Cloud, no additional configuration is needed. For self-hosted deployments on a private network, configure the Lambda function with [VPC access](https://docs.aws.amazon.com/lambda/latest/dg/configuration-vpc.html) to reach the Temporal frontend. | ||
| - For self-hosted deployments, complete the [self-hosted setup](/production-deployment/worker-deployments/serverless-workers/self-hosted-setup) before following this guide. | ||
| - The Temporal Service frontend must be reachable from the Lambda execution environment. For Temporal Cloud, no additional configuration is needed. For self-hosted deployments on a private network, configure the Lambda function with [VPC access](https://docs.aws.amazon.com/lambda/latest/dg/configuration-vpc.html) to reach the Temporal frontend. |
There was a problem hiding this comment.
| - The Temporal Service frontend must be reachable from the Lambda execution environment. For Temporal Cloud, no additional configuration is needed. For self-hosted deployments on a private network, configure the Lambda function with [VPC access](https://docs.aws.amazon.com/lambda/latest/dg/configuration-vpc.html) to reach the Temporal frontend. | |
| - The Temporal Service frontend must be reachable from the Lambda execution environment. For Temporal Cloud, no additional configuration is needed. For self-hosted deployments on a private network, use features like [VPC access](https://docs.aws.amazon.com/lambda/latest/dg/configuration-vpc.html) to reach the Temporal frontend. |
| This page covers the prerequisites for running [Serverless Workers](/serverless-workers) on a self-hosted Temporal | ||
| Service with AWS Lambda: | ||
|
|
||
| 1. Enable the Worker Controller Instance (WCI) on the server through dynamic configuration. |
There was a problem hiding this comment.
| 1. Enable the Worker Controller Instance (WCI) on the server through dynamic configuration. | |
| 1. Enable the Worker Controller on the server through dynamic configuration. |
|
|
||
| ## Enable the Worker Controller {#enable-worker-controller} | ||
|
|
||
| The Worker Controller Instance (WCI) is the server component that monitors Task Queues and invokes compute providers. It |
There was a problem hiding this comment.
| The Worker Controller Instance (WCI) is the server component that monitors Task Queues and invokes compute providers. It | |
| The Worker Controller is the server component that monitors Task Queues and invokes compute providers. It |
There was a problem hiding this comment.
My concern with this is that users will confuse this with https://github.com/temporalio/temporal-worker-controller
These are not the same thing right😅? At least per my understanding these are very different things. But we've already named the Kubernetes thing Worker Controller. Even though this is an internal component, it's a nice one to explain to users so they can understand how it works. It would be great if we can avoid a complete name collision
There was a problem hiding this comment.
yeah, our naming in this department has been sub-optimal. Let's leave it as WCI - but make sure that it is always WCI and never worker controller?!
Co-authored-by: Stefan Richter <stefan@02strich.de>
| - no-sync | ||
| ``` | ||
|
|
||
| To enable the Worker Controller for specific Namespaces instead of globally: |
There was a problem hiding this comment.
| To enable the Worker Controller for specific Namespaces instead of globally: | |
| To enable the Worker Controller Instance (WCI) for specific Namespaces instead of globally: |
Summary
TemporalIamRoleArnparameter instead of hardcoded Temporal Cloud accounts)Test plan
temporal-auto-scaled-workers🤖 Generated with Claude Code
┆Attachments: EDU-6254 docs: self-hosted setup for serverless workers