Skip to main content
Temporal Server configuration is defined in YAML files that control all aspects of server behavior, from persistence to networking to security.

Configuration File

The server configuration can be loaded in multiple ways:
  1. Config directory (legacy): Multiple YAML files in a directory structure
  2. Single config file: Using --config-file flag or TEMPORAL_SERVER_CONFIG_FILE_PATH environment variable
  3. Embedded config: Default configuration embedded in the binary

Configuration Structure

Top-Level Configuration

Global Configuration

Membership

Cluster membership and gossip protocol configuration.

PProf

Go profiling endpoint configuration.

TLS Configuration

TLS settings for inter-service and client communication.

Server TLS

Client TLS

Metrics

Metrics configuration for Prometheus, StatsD, or M3.

Authorization

Authentication and authorization configuration.

Persistence Configuration

Database and datastore configuration.

Persistence Fields

SQL Datastore

Cassandra Datastore

Elasticsearch Datastore

Service Configuration

Per-service settings for frontend, history, matching, and worker services.

RPC Configuration

Dynamic Configuration

Dynamic configuration allows runtime configuration changes without server restart.

Archival Configuration

History and visibility archival to long-term storage.

Archival States

  • enabled: Archival is enabled
  • disabled: Archival is disabled
  • paused: Archival is paused temporarily

Archival Providers

  • filestore: Local or network filesystem
  • s3store: Amazon S3 or S3-compatible storage
  • gstorage: Google Cloud Storage

Cluster Metadata

Multi-cluster configuration.

Namespace Defaults

Default settings applied to new namespaces.

See Also