Splice
0.3.10
Deployment and Operations
Overview
Validators
Validator Onboarding Process
Networks
Onboarding Process Overview
Validating that your IP has been approved
Stay Connected
Slack
Mailing Lists
Validator Hardware Requirements
Database Latency
Docker-Compose Based Deployment of a Validator Node
Requirements
Required Network Parameters
Preparing for Validator Onboarding
Deployment
Logging into the wallet UI
Logging into the CNS UI
Configuring Authentication
Kubernetes-Based Deployment of a Validator node
Requirements
Required Network Parameters
Validator Network Diagram
Preparing a Cluster for Installation
Configuring PostgreSQL authentication
Preparing for Validator Onboarding
Configuring Authentication
OIDC Provider Requirements
Configuring an Auth0 Tenant
Configuring Authentication on your Validator
Installing the Software
Configuring the Helm Charts
Installing the Helm Charts
Configuring the Cluster Ingress
Requirements
Installation Instructions
Logging into the wallet UI
(Testnet-only) Granting coin to the validator for traffic purchases
Logging into the CNS UI
Configuring top-ups
Configuring sweeps and auto-accepts of transfer offers
Upgrades
Synchronizer Upgrades with Downtime
Overview
Technical Details
State and Migration IDs
Migration Dumps
Catching Up Before the Migration
Deploying the Validator App and Participant (Kubernetes)
Deploying the validator App and Participant (Docker-Compose)
Backups
Backup of Node Identities
Backups of postgres instances
Disaster Recovery
Restoring a validator from backups
Re-onboard a validator and recover balances of all users it hosts
Docker-Compose Deployment
Kubernetes Deployment
Disaster recovery from loss of the CometBFT storage layer of the global synchronizer
Technical Details
Security Hardening
Using an external KMS for managing participant keys
Migrating an existing validator to use an external KMS
Configuring a fresh validator to use an external KMS
Google Cloud KMS
Amazon Web Services KMS
Users, Parties and Wallets in the Splice Wallet
Validator Ingress & Egress requirements
Ingress
Egress
Supervalidators
Kubernetes-Based Deployment of a Super Validator node
Requirements
Generating an SV identity
Preparing a Cluster for Installation
Configuring Authentication
OIDC Provider Requirements
Configuring an Auth0 Tenant
Configuring Authentication on your SV Node
Configuring your CometBft node
Generating your CometBft node keys
Configuring your CometBft node keys
Configuring CometBft state sync
Installing Postgres instances
Creating k8s Secrets for Postgres Passwords
Postgres in the Cluster
Cloud-Hosted Postgres
Installing the Software
Configuring the Helm Charts
Installing the Helm Charts
SV Network Diagram
Configuring the Cluster Ingress
Hostnames and URLs
Ingress Configuration
Requirements
Installation Instructions
Configuring the Cluster Egress
Logging into the wallet UI
Logging into the CNS UI
Logging into the SV UI
Observing the Canton Coin Scan UI
Upgrades
Synchronizer Upgrades with Downtime
Overview
Technical Details
State and Migration IDs
Migration Dumps
Deploying new Canton Components and CometBFT Node
Catching Up Before the Migration
Updating Apps
Recovering from a failed upgrade
Organizational Details
Coordination calls
Testing
Individual Preparation
Coordinated Tests
Backups
Backup of Node Identities
Backup of Postgres Instances
Backup of CometBFT
Disaster Recovery
Restoring From Data Corruption
Restoring a single component from backups
Restoring a full SV node from backups
Re-onboard an SV and recover Amulets with a validator
Disaster recovery from loss of CometBFT layer
Technical Details
Finding a Consistent Timestamp to Recover the Synchronizer From
Creating a Data Dump from the SV App
Migrating the Data
SV Operations
Security Notice
Generate a validator onboarding secret
Identities used by SV nodes on different layers
SV identity
Participant identities
CometBFT node identities
Updating the reward weight of an SV
How to Bootstrap a Network
cometbft helm values
scan helm values
sv helm values
other helm values you may need to consider
Infra-level things you might want to consider
How to run through a HDM
Operations
Monitoring and Observability
Metrics
Scraping the metrics
Configuring a helm deployment to enable metrics
Configuring a docker compose deployment to enable metrics
Grafana Dashboards
Metrics Reference
Common Metrics
splice.domain_params_store.confirmation-requests-max-rate
splice.store.signal-when-ingested-latency
splice.store.acs-size
daml.grpc.client
daml.grpc.client.messages.sent
daml.grpc.client.messages.received
daml.grpc.client.messages.sent.bytes
daml.grpc.client.messages.received.bytes
daml.grpc.client.started
daml.grpc.client.completed
splice.trigger.latency
splice.trigger.iterations
splice.trigger.completed
Validator Metrics
splice.wallet.unlocked-amulet-balance
splice.wallet.locked-amulet-balance
SV Metrics
splice.sv_dso_store.latest-open-mining-round
splice.sequencer_pruning.latency
splice.sequencer_pruning.disabled_members
splice.sv_cometbft.earliest_block_height
splice.sv_cometbft.latest_block_height
splice.sv_status_report.number
splice.sv_status_report.creation_time_us
splice.sv_status_report.cometbft_height
splice.sv_status_report.domain_time_us
splice.sv_status_report.domain_time_us
splice.sv_status_report.latest_open_round
Scan Metrics
splice.scan_store.earliest-aggregated-round
splice.scan_store.latest-aggregated-round
Configuring deployed apps
Adding ad-hoc configuration
Helm charts support
Troubleshooting
Getting console access to Canton nodes
Participant console
Sequencer console
Mediator console
Access in a K8s cluster
Where to find logs
Debugging issues in Web UIs
Configurations
Common Error Messages
Traffic balance below reserved amount
Insufficient funds to buy configured traffic amount
Application Development
Overview
Read-Only Apps
Daml Apps
Architecture
Ledger Ingestion
Version Information
Splice App APIs
OpenAPI Specifications
API Stability
Contract Payload Encoding
Authentication
Scan API
Validator API
User wallet API
Transfer Offers
Buying Traffic
Internal user wallet API
External Custody API
User management API
Validator management API
ANS API
Scan Proxy API
Ledger API
Daml API
splice-amulet docs
Splice.Amulet
Templates
Data Types
Functions
Splice.AmuletConfig
Data Types
Functions
Splice.AmuletRules
Templates
Data Types
Functions
Splice.DecentralizedSynchronizer
Templates
Data Types
Functions
Splice.Expiry
Data Types
Functions
Splice.ExternalPartyAmuletRules
Templates
Data Types
Splice.Fees
Data Types
Functions
Splice.Issuance
Data Types
Functions
Splice.RelRound
Data Types
Functions
Splice.Round
Templates
Functions
Splice.Schedule
Data Types
Functions
Splice.Types
Data Types
Functions
Splice.ValidatorLicense
Templates
Data Types
Functions
splice-amulet-name-service docs
Splice.Ans
Templates
Data Types
Functions
splice-dso-governance docs
Splice.CometBft
Data Types
Functions
Splice.DSO.AmuletPrice
Templates
Functions
Splice.DSO.DecentralizedSynchronizer
Data Types
Functions
Splice.DSO.SvState
Templates
Data Types
Splice.DsoBootstrap
Templates
Data Types
Splice.DsoRules
Templates
Orphan Typeclass Instances
Data Types
Functions
Splice.SvOnboarding
Templates
Data Types
splice-util docs
Splice.Util
Typeclasses
Functions
splice-validator-life-cycle docs
Splice.ValidatorOnboarding
Templates
Data Types
splice-wallet docs
Splice.Wallet.BuyTrafficRequest
Templates
Data Types
Splice.Wallet.Install
Templates
Data Types
Functions
Splice.Wallet.TopUpState
Templates
Functions
Splice.Wallet.TransferOffer
Templates
Data Types
Splice.Wallet.TransferPreapproval
Templates
Data Types
splice-wallet-payments docs
Splice.Wallet.Payment
Templates
Data Types
Functions
Splice.Wallet.Subscriptions
Templates
Data Types
Functions
Testing
Docker-Compose Based Deployment of a Local Network
Requirements
Depoying the nodes
UIs
SV Operated networks and Use-cases
DevNet
TestNet
MainNet
Testing Guidelines
Glossary
Glossary
Release Notes
Release Notes
0.3.10
0.3.9
0.3.8
0.3.7
0.3.6
0.3.5
0.3.4
0.3.3
0.3.2
0.3.1
0.3.0
Daml Changes in 0.3.0
0.2.8
0.2.7
0.2.6
0.2.4
0.2.3
0.2.1
0.2.0
0.1.19
0.1.18
0.1.17
0.1.16
0.1.15
0.1.13
0.1.12
0.1.10
0.1.9
0.1.8
0.1.7
0.1.6
0.1.5
0.1.4
0.1.3
0.1.2
2024-04-01
2024-03-25
2024-03-18
2024-03-11
2024-03-04
2024-02-26
2024-02-19
2024-02-12
2024-02-05
2024-01-29
2024-01-22
2024-01-15
2024-01-08
2023-12-18
2023-12-11
2023-12-04
2023-11-27
2023-11-20
2023-11-13
2023-11-06
2023-10-30
2023-10-23
2023-10-16
2023-10-09
2023-10-02
2023-09-25
2023-09-11
2023-09-04
2023-08-28
2023-08-14
2023-08-07
2023-07-31
2023-07-16
2023-07-02
2023-06-25
2023-06-18
2023-06-11
2023-06-04
2023-05-28
2023-05-21
2023-05-14
2023-05-07
2023-04-30
2023-04-23
Splice
Scan API
View page source
Scan API