Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DO NOT MERGE: EDU-1180 Multi-region Namespace Epic #2856

Merged
merged 50 commits into from
May 30, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
50 commits
Select commit Hold shift + click to select a range
815531a
EDU-1181: Add starting image assets for MRN pages
fairlydurable May 22, 2024
6f4197e
EDU-1181: Load main multi-region page
fairlydurable May 22, 2024
6a73501
EDU-1181: Added in sidebar.js, updated link for admonition
fairlydurable May 23, 2024
768db5c
EDU-1181 - Style update
fairlydurable May 23, 2024
91257ee
EDU-2387: MRN Glossary entries
fairlydurable May 23, 2024
88d9456
EDU-2442: Update Audit Logging with Failover event
fairlydurable May 23, 2024
693206e
EDU-2427: add multi-region operations to tcld coverage
fairlydurable May 23, 2024
3bde2d2
EDU-1180: Update `FailoverNamespaces` to `FailoverNamespace`
fairlydurable May 23, 2024
abebc6e
EDU-2443: Add metrics for MRN
fairlydurable May 23, 2024
0252538
EDU-2443: Re-order items alphabetically for new MRN metrics
fairlydurable May 23, 2024
027715b
EDU-2443: Add metrics to main MRN coverage
fairlydurable May 23, 2024
4e222d5
Fixing typo 'cloud' is now 'Cloud' in MRN page metrics
fairlydurable May 23, 2024
a91a721
EDU-2385: Initial commit with base content
fairlydurable May 23, 2024
9affdb8
Add admonition for MRN to Evaluate > Prod > Temporal Cloud > High Ava…
fairlydurable May 23, 2024
c05e468
EDU-2495: Add SLA updates for MRN
fairlydurable May 23, 2024
f0ad961
EDU-1569 EDU-2450 Pricing Tickets
fairlydurable May 23, 2024
d69687d
EDU-1181 | EDU-2443: Update Metrics coverage in MRN landing page.
fairlydurable May 28, 2024
0ab5fca
Merge remote-tracking branch 'origin/main' into EDU-1180
fairlydurable May 28, 2024
91180e5
Update docs/production-deployment/cloud/introduction/pricing.mdx
fairlydurable May 28, 2024
5d26e85
Fixing unbalanced parens and making note stand out
fairlydurable May 28, 2024
0263577
EDU-1181: Responds to feedback from Irina
fairlydurable May 29, 2024
2319de1
EDU-1181: Responds to feedback from Irina
fairlydurable May 29, 2024
bf952e5
Merge branch 'EDU-1180' of https://github.com/temporalio/documentatio…
fairlydurable May 29, 2024
a02cb45
EDU-1181: Incorporates feedback from Jim about Action pricing
fairlydurable May 29, 2024
df1c6d9
Updates SLA wording (Nikitha)
fairlydurable May 29, 2024
61339eb
One more Activity pricing tweak for clarity
fairlydurable May 29, 2024
5ab8c09
Merge remote-tracking branch 'origin/main' into EDU-1180
fairlydurable May 29, 2024
eba461b
Corrects "counts" to "count" in two places on pricing page
fairlydurable May 29, 2024
d6dd192
Responds to Irina's concerns about "highest level of availability"
fairlydurable May 29, 2024
ccb3f77
Rewords "Should you choose" section with help from Irina
fairlydurable May 29, 2024
faf6166
Responding to Nikitha requests
fairlydurable May 29, 2024
17e27ef
Merge branch 'main' into EDU-1180
fairlydurable May 30, 2024
8180251
Update docs/evaluate/production-features/self-hosted/high-availabilit…
fairlydurable May 30, 2024
fcb27e3
Removes oddball duplication
fairlydurable May 30, 2024
2546667
Update docs/evaluate/production-features/temporal-cloud/high-availabi…
fairlydurable May 30, 2024
04b99a6
Update docs/evaluate/production-features/temporal-cloud/high-availabi…
fairlydurable May 30, 2024
8a69029
Update docs/production-deployment/cloud/introduction/sla.mdx
fairlydurable May 30, 2024
1a5212b
Update docs/evaluate/production-features/index.mdx
fairlydurable May 30, 2024
1a635e7
Update docs/evaluate/production-features/index.mdx
fairlydurable May 30, 2024
6075c53
Update docs/evaluate/production-features/temporal-cloud/high-availabi…
fairlydurable May 30, 2024
522695e
Update docs/evaluate/production-features/temporal-cloud/index.mdx
fairlydurable May 30, 2024
0b4554a
Update docs/evaluate/production-features/temporal-cloud/index.mdx
fairlydurable May 30, 2024
1d4846f
Update docs/evaluate/production-features/temporal-cloud/index.mdx
fairlydurable May 30, 2024
e9024f0
Update docs/glossary.md
fairlydurable May 30, 2024
f6dfe59
Update docs/production-deployment/cloud/introduction/sla.mdx
fairlydurable May 30, 2024
5aff1ca
Update docs/production-deployment/cloud/tcld/namespace.mdx
fairlydurable May 30, 2024
5f9027d
Update docs/production-deployment/cloud/tcld/namespace.mdx
fairlydurable May 30, 2024
248f24b
Update docs/production-deployment/cloud/tcld/namespace.mdx
fairlydurable May 30, 2024
82fb627
Update docs/production-deployment/cloud/tcld/namespace.mdx
fairlydurable May 30, 2024
d743274
Update docs/production-deployment/cloud/introduction/sla.mdx
fairlydurable May 30, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions docs/evaluate/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -22,3 +22,5 @@ Thousands of companies of all sizes are leveraging Temporal's capabilities for b
- [Why Temporal](/evaluate/why-temporal)
- [Security](/security)
- [Release stages](/evaluate/release-stages)
- [Development features](/evaluate/development-features)
- [Production deployment features](/evaluate/production-features)
36 changes: 36 additions & 0 deletions docs/evaluate/production-features/index.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
---
id: index
title: Temporal's production deployment features
description: Explore your deployment options for production traffic with Temporal, offering both Self-hosted and Temporal Cloud solutions.
sidebar_label: Production features
tags:
- production-features
keywords:
- temporal service deployment
- self-host temporal service
- temporal cloud benefits
- production traffic management
- high availability workflows
- multi-tenant temporal service
- workflow state retention
- temporal community support
- temporal cloud vs self-hosted
- workflow history export
---

Transform your Temporal applications into production-ready systems by deploying your application code, Workflows, Activities, and Workers for operational use.
When your application is ready to start serving production traffic, we offer two Temporal Service options:

- **[Choose Temporal Cloud for your Temporal Service](/cloud)**
Let us handle the Temporal Service operations so you can focus on your applications.
- **[Self-host a Temporal Service](/self-hosted-guide)**
Deploy your own production level Temporal Service to orchestrate your durable applications.

| Feature | Temporal Cloud | Self-hosted |
| ---------------------------------- | -------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- |
| **Multi-tenant** | ✅ Up to 100 Namespaces | ✅ Unlimited Namespaces |
| **High availability and failover** | ✅ [Multi-region Namespaces](/evaluate/production-features/temporal-cloud/high-availability) | ✅ [Global Namespaces & Multi-Cluster Replication](/evaluate/production-features/self-hosted/high-availability) |
| **Application state persistence** | ✅ 30-90 day Retention | ✅ Unlimited |
| **Long term state retention** | ✅ Workflow History Export | ✅ Archival |
| **Community support** | ✅ Slack, Forum | ✅ Slack, Forum |
| **Paid support** | ✅ Prioritized responses | ✖️ |
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
id: high-availability
title: High availability - Self-hosted Temporal production feature
description: Explore your deployment options for production traffic with Temporal, offering both Self-hosted and Temporal Cloud solutions.
sidebar_label: High availability
tags:
- production-deployment
- production-features
- self-hosted-temporal
---

Explore Temporal's self-hosted high-availability features.

* [Global Namespace](/namespaces#global-namespace):
A Namespace that exists across Temporal Services to enhance your Namespace availability to higher levels.
A global Namespace automatically replicates metadata and Workflow Execution state from an active Temporal Service to a standby Temporal Service.
In the case of operational issues, a [failover](/glossary#failover) allows responsibility to pass from the active to the standby Temporal Service.
28 changes: 28 additions & 0 deletions docs/evaluate/production-features/self-hosted/index.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
id: index
title: Self-hosted production features
description: Roll your own solutions with Temporal Server
sidebar_label: Self-host
tags:
- production-deployment
- production-features
- temporal-self-hosted
keywords:
- temporal service deployment
- self-host temporal service
- production traffic management
- high availability workflows
- multi-tenant temporal service
- workflow state retention
- temporal community support
- workflow history export
---

Explore self-hosting when you need a production-ready Temporal Service to coordinate the execution of your Workflows and Activities.
See the [Self-hosted guide](/self-hosted-guide) to get started.

Make the most of your self-hosted deployment with these features:

* [High Availability](/evaluate/production-features/self-hosted/high-availability): Maximize availability and provide disaster-tolerant deployment for your self-hosted workloads.


Original file line number Diff line number Diff line change
@@ -0,0 +1,119 @@
---
id: high-availability
title: High availability - Temporal Cloud production feature
description: Add push-button high availability for your Temporal Service to ensure continuous reliable operation.
sidebar_label: High availability
tags:
- production-deployment
- production-features
- temporal-cloud
- high-availability
keywords:
- availability
- explanation
- failover
- high-availability
- multi-region
- multi-region namespace
- namespaces
- temporal-cloud
- term
---

:::tip Support, stability, and dependency info
- Multi-region Namespaces are in [Public Preview](/evaluate/release-stages#public-preview) for Temporal Cloud.

:::

Temporal Cloud offers disaster-tolerant deployment for workloads with stringent availability requirements.
With the multi-region feature enabled, Temporal Cloud automates [failover](/glossary#failover] and synchronizes data between Namespace regions.

This page introduces Temporal Cloud patterns that support your workload's availability requirements.

## Multi-region Namespaces

Multi-region Namespaces provide failover capabilities to mitigate service outages due to regional failures.
They reduce risk and minimize operational disruption.
This feature seamlessly shif​​ts Workflow execution between regions to maintain service availability.

Your Clients use a single logical Namespace with a single endpoint that operates in two physical regions: one active and one standby.
As Workflows progress in the active region, history events asynchronously replicate to the standby region.
Data replication ensures both regions are in sync so the standby is ready to take over when needed.

Should an incident or outage occur in the active region, Temporal Cloud initiates a "failover" to the standby region.
During a failover, the roles of the active and standby regions reverse.
The standby takes over as the primary region.

### Advantages of multi-region Namespaces {#multi-region-advantages}

**Why choose a multi-region Namespace (MRN)?**

* **Reduce Risk**:
MRN's protects your operations from unexpected regional outages.
Its automated disaster recovery features ensure that workloads remain available and continue execution.
* **Minimize Operational Disruption**:
Seamless failovers shift Workflow Executions to a secondary region during outages.
MRNs maintain service availability without needing manual synchronization between Namespaces.
Real-time alerts during failover events keep you informed.
* **No manual deployment or configuration needed:**
Temporal Cloud simplifies deployment with push-button operation.
This eliminates the need for manual deployment or configuration.
* **Fault tolerance**.
Your open Workflows continue their progress in the standby region.
This minimizes interruption and data loss during regional failures.
* **No code changes**.
Your Workers and Workflow starter code don't need updates to take advantage of multi-region setup or to respond to failover conditions.
This allows for a smooth transition and continued operation.

### Service Level Objectives (SLO) and guarantees {#multi-region-SLO}

**What reliability promises does this feature offer?**

* Temporal provides a 99.99% Contractual SLA that provides redress in the event of downtime ([SLA](https://docs.temporal.io/cloud/sla)).
* [RTO](https://csrc.nist.gov/glossary/term/recovery_time_objective): 20 minutes or less.
* [RPO](https://csrc.nist.gov/glossary/term/recovery_point_objective): Near zero.

### Target workloads {#target-workloads}

**Who benefits from this feature?**

Multi-region Namespaces are a great solution for Workloads where a regional cloud outage would cause:

* Revenue loss
* Poor customer experience
* Problems stemming from policy/legal requirements that demand high availability

Some examples: financial services, e-commerce, gaming, global SaaS platforms, bookings & reservations, delivery & shipping, order management.

### Explore {#explore-multi-region}

**Read more about our multi-region features**

* [Multi-region Namespaces](/cloud/multi-region) offer High Availability service for Temporal Cloud customers who need the highest level of availability at all times.
* [Multi-region Pricing](/cloud/pricing) scales to use.
* Multi-region high availability supports [PrivateLink routing](/cloud/multi-region#routing).

## Single-region Namespaces

A typical Temporal Cloud Namespace is deployed into one [AWS region](https://docs.temporal.io/cloud/service-availability).
Temporal Cloud provides [99.99% availability](https://docs.temporal.io/cloud/sla) and a contractual [service level agreement](https://docs.temporal.io/cloud/sla) (SLA) of 99.9% guarantee against service errors.
It provides a great all-around solution that's suitable for most organizations.

### Advantages of single-region Namespaces {#single-region-advantages}

**Why choose single-region Namespaces?**

* This option offers sufficient availability for most use cases and workloads.
* Temporal Cloud provides 99.99% availability and a contractual service level agreement of 99.9% guarantee against service errors.
Read more on our [SLA page](https://docs.temporal.io/cloud/sla).

Some downsides of single-region Namespaces compared to multi-region Namespaces:

* Stalled work during failures: Open Workflow Executions pause until the region/Namespace recovers.
* Blocked work initiation: No new Workflow Executions will start until the region/Namespace recovers.

### Explore {#explore-temporal-namespaces}

**Read more about Namespaces**

* [Temporal Cloud Namespaces](/cloud/namespaces) offer outstanding reliable service for Temporal Cloud customers.
34 changes: 34 additions & 0 deletions docs/evaluate/production-features/temporal-cloud/index.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---
id: index
title: Temporal Cloud production features
sidebar_label: Temporal Cloud
description: Learn about Temporal Cloud, Temporal's software-as-a-service infrastructure platform designed to manage the durability of your Temporal Applications.
sidebar_position: 1
tags:
- production-deployment
- production-features
- temporal-cloud
keywords:
- temporal service deployment
- temporal cloud benefits
- production traffic management
- high availability workflows
- multi-tenant temporal service
- workflow state retention
- temporal community support
- workflow history export
---


[Temporal Cloud](https://temporal.io/cloud) a software-as-a-service (SaaS) infrastructure platform designed to manage the durability of your Temporal Applications.
Temporal Cloud oversees and manages the execution process for your production evironments for your distributed applications and services.
It provides durable execution, allowing failable processes to be retried, and capturing progress so that your Workflows execute reliably, recoverably, and performantly.

Temporal Cloud features include:

- [High Availability](/evaluate/production-features/temporal-cloud/high-availability): Add push-button high availability to your Temporal Cloud Service with multi-region Namespaces (MRN).
MRNs provide seamless failover capabilities to your production work, ensuring continuous reliable operation.

We handle the operations of running the Temporal Service.
You focus on your application.
See the [Temporal Cloud guide](/cloud) to get started.
21 changes: 20 additions & 1 deletion docs/glossary.md
Original file line number Diff line number Diff line change
Expand Up @@ -183,6 +183,13 @@ An append-only log of Events that represents the full state a Workflow Execution

_Tags: [term](/tags/term), [explanation](/tags/explanation)_

#### [Failover](/cloud/multi-region)

A Failover shifts Workflow Execution processing from an active Temporal Namespace to a standby Temporal Namespace during outages or other incidents.
Standby Namespaces use replication to duplicate data and prevent data loss during Failover.

_Tags: [term](/tags/term), [explanation](/tags/explanation)_

#### [Failure](/temporal#failure)

Temporal Failures are representations of various types of errors that occur in the system.
Expand Down Expand Up @@ -215,7 +222,9 @@ _Tags: [product-release-stages](/tags/product-release-stages), [term](/tags/term

#### [Global Namespace](/namespaces#global-namespace)

A Global Namespace is a Namespace that exists across Clusters when Multi-Cluster Replication is set up.
A Global Namespace is a Namespace that duplicates data from an active [Temporal Service](#temporal-cluster) to a standby Service using the replication to keep both Namespaces in sync.
Global Namespaces are designed to respond to service issues like network congestion.
When service to the primary Cluster is compromised, a [Failover](#failover) transfers control from the active to the standby cluster.

_Tags: [term](/tags/term), [explanation](/tags/explanation)_

Expand Down Expand Up @@ -267,6 +276,16 @@ Multi-Cluster Replication is a feature which asynchronously replicates Workflow

_Tags: [term](/tags/term), [explanation](/tags/explanation)_

#### [Multi-region Namespace](/cloud/multi-region)

A multi-region Namespace (MRN) is a [Temporal Cloud](#temporal-cloud) Namespace that is configured to work across an active [region](/cloud/service-availability#regions) and a standby region.
Each region corresponds to a dedicated Temporal Cloud Service.
Temporal Cloud automatically replicates Workflow Executions and metadata from the active to the standby region.
MRNs are designed to respond to service issues as they arise.
In the event that the Namespace's performance is compromised, a [Failover](#failover) transfers control from the active to the standby region.

_Tags: [term](/tags/term), [explanation](/tags/explanation)_

#### [Namespace](/namespaces)

A Namespace is a unit of isolation within the Temporal Platform
Expand Down
2 changes: 2 additions & 0 deletions docs/production-deployment/cloud/audit-logging.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,8 @@ The following list specifies both the supported events and the Temporal APIs tha
- Add custom Search Attributes: `UpdateNamespace`
- Rename custom Search Attribute: `RenameCustomSearchAttribute`
- Request increase in Retention Period: `UpdateNamespace`
- Multi-region Namespace
- Failover Namespace: `FailoverNamespace`

### API Key Operation events

Expand Down
Loading