<!-- Canonical: https://docs.linea.build/stack/deployment/core-components -->

> For the complete Linea documentation index, see [llms.txt](/llms.txt).
> Agents can fetch this page as Markdown at [https://docs.linea.build/stack/deployment/core-components.md](https://docs.linea.build/stack/deployment/core-components.md).

# Deployment components

This page describes the [Lineth](/protocol/reference/zero-knowledge-glossary#lineth)**Lineth** (Formerly the Linea Stack) The open-source ZK-rollup stack, codebase, and technical protocol that's the foundation of Linea Mainnet. Operators can deploy this stack to launch their own Ethereum-compatible L2 or L3 networks. components. It identifies which components an [operator](/protocol/reference/zero-knowledge-glossary#operator)**Operator** The entity or consortium responsible for deploying, administering, and running the network infrastructure, contracts, keys, access controls, and operational procedures for a network built on Lineth. must or may run, and describes how they are versioned or replaced. For what each component does internally, see [Protocol Architecture](/protocol/architecture).

## Core protocol components

The following components are **required**.

**Replaceability:** Versioned via protocol upgrade.

-   [Maru](/protocol/architecture#consensus-client-maru): Consensus layer client
-   [Linea Besu](/protocol/architecture#execution-client-linea-besu): Execution layer client. Required for sequencer nodes and trace generation; other nodes can run any Ethereum execution client
-   [Sequencer](/protocol/architecture/sequencer): Linea Besu plugins that order, build, and execute blocks
-   [Coordinator](/protocol/architecture/coordinator): Orchestrates batching, proof generation, and submissions
-   [Prover](/protocol/architecture/prover): Generates zero-knowledge proofs of state transitions
-   [State manager](/protocol/architecture/state-manager): Maintains a state representation for proof generation
-   [Tracer](/protocol/architecture/sequencer/traces-generator): Generates execution traces required for proofs

note

Lineth uses a [dual-layer architecture](/protocol/architecture#nodes): Maru for consensus and an execution client for the EVM. Operators can configure the consensus and execution layers separately. This enables but does not guarantee client diversity and network resilience; those depend on the operator's deployment.

Each Maru validator requires its own Linea Besu execution client. Additional execution clients can be attached to an existing Maru node as followers, without running more Maru nodes.

## Onchain system contracts

The following [smart contracts](/protocol/architecture/smart-contracts) or alternatives that offer parity are **required**.

**Replaceability:** Versioned via redeployment.

-   `AddressFilter` contract
-   Canonical token bridge
-   Finalization verifier
-   `LineaRollup` message bridge contract
-   Token bridge contracts

## Data availability

In addition to concrete components, Lineth depends on correctness-critical requirements, which may be satisfied by different implementations depending on the [deployment model](/stack/evaluate/deployment-models).

**Purpose**

-   Ensure transaction data and state transitions remain accessible
-   Enable reconstruction and verification of historical state

**Correctness requirement**

-   Without data availability, the protocol cannot be independently verified
-   Loss of data availability breaks state reconstructability

**Example implementations**

-   **Linea Public Mainnet deployment:** EIP-4844 blobs on Ethereum
-   **Private Validium deployments:** Operator-provided or outsourced data availability infrastructure

**Trust model**

-   Data availability is within the trust boundary
-   Responsibility for data availability implementation depends on deployment model

See more on [data availability considerations](/stack/deployment/data-availability-finalization).

## Auxiliary services

Auxiliary services are **not required for protocol correctness**. They are typically **optional** and **replaceable**.

Common examples include:

-   [Block explorer](/protocol/architecture#block-explorer)
-   [Archive node service](/protocol/architecture/rpc-services#archive-nodes)
-   [RPC load balancers](/protocol/architecture/rpc-services)
-   Monitoring and metrics
-   Indexer
-   API portal

**Special cases**

-   [Web3Signer](/protocol/architecture#web3signer): remote signing with integration with a large number of Key Management Solutions (KMS):
    -   Not required for correctness
    -   _In_ trust boundary (signing path)
    -   Not replaceable: currently, Web3Signer is integral
    -   Optional
