Files
nomad/website/content/docs/architecture/cluster/federation.mdx
Aimee Ukasick 53b083b8c5 Docs: Nomad IA (#26063)
* Move commands from docs to its own root-level directory

* temporarily use modified dev-portal branch with nomad ia changes

* explicitly clone nomad ia exp branch

* retrigger build, fixed dev-portal broken build

* architecture, concepts and get started individual pages

* fix get started section destinations

* reference section

* update repo comment in website-build.sh to show branch

* docs nav file update capitalization

* update capitalization to force deploy

* remove nomad-vs-kubernetes dir; move content to what is nomad pg

* job section

* Nomad operations category, deploy section

* operations category, govern section

* operations - manage

* operations/scale; concepts scheduling fix

* networking

* monitor

* secure section

* remote auth-methods folder and move up pages to sso; linkcheck

* Fix install2deploy redirects

* fix architecture redirects

* Job section: Add missing section index pages

* Add section index pages so breadcrumbs build correctly

* concepts/index fix front matter indentation

* move task driver plugin config to new deploy section

* Finish adding full URL to tutorials links in nav

* change SSO to Authentication in nav and file system

* Docs NomadIA: Move tutorials into NomadIA branch (#26132)

* Move governance and policy from tutorials to docs

* Move tutorials content to job-declare section

* run jobs section

* stateful workloads

* advanced job scheduling

* deploy section

* manage section

* monitor section

* secure/acl and secure/authorization

* fix example that contains an unseal key in real format

* remove images from sso-vault

* secure/traffic

* secure/workload-identities

* vault-acl change unseal key and root token in command output sample

* remove lines from sample output

* fix front matter

* move nomad pack tutorials to tools

* search/replace /nomad/tutorials links

* update acl overview with content from deleted architecture/acl

* fix spelling mistake

* linkcheck - fix broken links

* fix link to Nomad variables tutorial

* fix link to Prometheus tutorial

* move who uses Nomad to use cases page; move spec/config shortcuts

add dividers

* Move Consul out of Integrations; move namespaces to govern

* move integrations/vault to secure/vault; delete integrations

* move ref arch to docs; rename Deploy Nomad back to Install Nomad

* address feedback

* linkcheck fixes

* Fixed raw_exec redirect

* add info from /nomad/tutorials/manage-jobs/jobs

* update page content with newer tutorial

* link updates for architecture sub-folders

* Add redirects for removed section index pages. Fix links.

* fix broken links from linkcheck

* Revert to use dev-portal main branch instead of nomadIA branch

* build workaround: add intro-nav-data.json with single entry

* fix content-check error

* add intro directory to get around Vercel build error

* workound for emtpry directory

* remove mdx from /intro/ to fix content-check and git snafu

* Add intro index.mdx so Vercel build should work

---------

Co-authored-by: Tu Nguyen <im2nguyen@gmail.com>
2025-07-08 19:24:52 -05:00

70 lines
3.1 KiB
Plaintext

---
layout: docs
page_title: Federation
description: |-
Nomad federation enables multiple Nomad clusters in different regions to work together seamlessly. Learn about cross-region request forwarding, replication, and Nomad Enterprise's multi-region job deployments.
---
# Federation
This page provides conceptual information about the Nomad federation feature.
Learn about cross-region request forwarding, replication, and Nomad Enterprise's
multi-region job deployments.
Nomad federation is a multi-cluster orchestration and management feature that
enables multiple Nomad clusters running in different regions to work together
seamlessly. By federating clusters, you benefit from improved scalability, fault
tolerance, and centralized management of workloads across various data centers
or geographical locations.
## Cross-Region request forwarding
API calls can include a `region` query parameter that defines the Nomad region
the query is specified for. If this is not the local region, Nomad transparently
forwards the request to a server in the requested region. When you omit the
query parameter, Nomad uses the region of the server that is processing the
request.
## Replication
Nomad writes the following objects in the authoritative region and replicates
them to all federated regions:
- ACL [policies][acl_policy], [roles][acl_role], [auth methods][acl_auth_method],
[binding rules][acl_binding_rule], and [global tokens][acl_token]
- [Namespaces][namespace]
- [Node pools][node_pool]
- [Quota specifications][quota]
- [Sentinel policies][sentinel_policies]
When creating, updating, or deleting these objects, Nomad always sends the
request to the authoritative region using RPC forwarding.
Nomad starts replication routines on each federated cluster's leader server in a
hub and spoke design. The routines then use blocking queries to receive updates
from the authoritative region to mirror in their own state store. These routines
also implement rate limiting, so that busy clusters do not degrade due to overly
aggressive replication processes.
<Note> Nomad writes ACL local tokens in the region where you make the request
and does not replicate those local tokens. </Note>
## Multi-Region job deployments <EnterpriseAlert inline />
Nomad job deployments can use the [`multiregion`][] block when running in
federated mode. Multiregion configuration instructs Nomad to register and run
the job on all the specified regions, removing the need for multiple job
specification copies and registration on each region. Multiregion jobs do not
provide regional failover in the event of failure.
[acl_policy]: /nomad/docs/secure/acl/#policies
[acl_role]: /nomad/docs/secure/acl/#roles
[acl_auth_method]: /nomad/docs/secure/acl/#authentication-methods
[acl_binding_rule]: /nomad/docs/secure/acl/#binding-rules
[acl_token]: /nomad/docs/secure/acl/#tokens
[node_pool]: /nomad/docs/architecture/cluster/node-pools
[namespace]: /nomad/docs/other-specifications/namespace
[quota]: /nomad/docs/other-specifications/quota
[sentinel_policies]: /nomad/docs/reference/sentinel-policy
[`multiregion`]: /nomad/docs/job-specification/multiregion