Tezos Baker
Running a Tezos Testnet baker
Running a Tezos Baker on testnet is easy.
In a Tezos Testnet, it is acceptable to use an in-memory signer. In this example, we run a bakery called "Acme Bakery". The private baking key is passed as helm parameter in values.yaml and stored in a Kubernetes secret.
The below values.yaml will start a ghostnet baker:
images:
  octez: tezos/tezos:octez-v20.2 # replace with most recent version
node_config_network:
  chain_name: ghostnet
node_globals:
  env:
    all:
      TEZOS_CLIENT_UNSAFE_DISABLE_DISCLAIMER: "Y"
protocols:
  - command: PtParisC # replace with the most recent protocol
    vote:
      liquidity_baking_toggle_vote: pass
accounts:
  acme-bakery:
    key: edsk3ESSEABwYbxAnUAKfbZ7s4XpBDiNFaS3xKkzWJcWtCp57Ty1mN
bakers:
  acme-bakery:
    bake_using_accounts:
      - acme-bakery
    node_rpc_url: http://node-0.node:8732
nodes:
  acme:
    runs:
      - octez_node
    storage_size: 50Gi
    instances:
      - config:
          shell:
            history_mode: rolling
  rolling-node: null
This will launch:
- an 
octez-nodepod - a 
bakerpod 
Then, you need to register as a baker. See Octez documentation.
Running a Mainnet Baker
On mainnet, running an in-memory signer is strongly discouraged. Indeed, improper disclosure of the baker's secret key may lead to theft of funds or equivocation.
Instead, the recommended method is to use a Key Management System (KMS) or Hardware Security Module (HSM).
Running with a remote signer
A Tezos-k8s baker can be configured to run with a remote signer external to the cluster.
You must know:
- the URL to the remote signing endpoint. It must be accessible to the cluster, with a VPC or on the public Internet,
 - the public key of the baker's address (not the hash starting with 
tz) 
Configure a mainnet signer as follows:
images:
  octez: tezos/tezos:octez-v20.2 # replace with most recent version
protocols:
  - command: PsParisC # replace with the most recent protocol
    vote:
      liquidity_baking_toggle_vote: pass
accounts:
  acme-bakery:
    key: edpkxxxx # the public key
    signer_url: https://my-signer-url/tz1xxxxx
bakers:
  acme-bakery:
    bake_using_accounts:
      - acme-bakery
    node_rpc_url: http://node-0.acme:8732
nodes:
  acme:
    runs:
      - octez_node
    storage_size: 50Gi
    instances:
      - config:
          shell:
            history_mode: rolling
  rolling-node: null
Note on the remote signer
For mainnet, it is recommended to use a remote signer that enforces high watermark protection, in order to prevent equivocation.
Examples of such signers are:
- signer backed by:
- Signatory
 - a Ledger hardware device running the Tezos Signer app
 
 - Tezos Consensus KMS Signer on AWS Serverless Application Repository