From a4c4bb51e84746fb428d7fbbfd8ac3cb217d4bcd Mon Sep 17 00:00:00 2001 From: realbigsean Date: Wed, 10 Apr 2024 15:54:49 -0400 Subject: [PATCH] cli help updates --- book/src/help_bn.md | 624 ++++++++++++++++--------------------- book/src/help_general.md | 129 ++++---- book/src/help_vc.md | 310 ++++++++---------- book/src/help_vm.md | 113 +++---- book/src/help_vm_create.md | 173 +++++----- book/src/help_vm_import.md | 116 +++---- book/src/help_vm_move.md | 131 ++++---- 7 files changed, 688 insertions(+), 908 deletions(-) diff --git a/book/src/help_bn.md b/book/src/help_bn.md index 2ff603e8d75..66f85bffe64 100644 --- a/book/src/help_bn.md +++ b/book/src/help_bn.md @@ -1,9 +1,8 @@ # Beacon Node ``` -The primary component which connects to the Ethereum 2.0 P2P network and downloads, verifies and -stores blocks. Provides a HTTP API for querying the beacon chain and publishing messages to the -network. +The primary component which connects to the Ethereum 2.0 P2P network and downloads, verifies and stores blocks. Provides a HTTP API +for querying the beacon chain and publishing messages to the network. Usage: lighthouse beacon_node [OPTIONS] @@ -11,298 +10,261 @@ Options: --auto-compact-db Enable or disable automatic compaction of the database on finalization. [default: true] --blob-prune-margin-epochs - The margin for blob pruning in epochs. The oldest blobs are pruned up until - data_availability_boundary - blob_prune_margin_epochs. [default: 0] + The margin for blob pruning in epochs. The oldest blobs are pruned up until data_availability_boundary - + blob_prune_margin_epochs. [default: 0] --blobs-dir Data directory for the blobs database. --block-cache-size Specifies how many blocks the database should cache in memory [default: 5] --boot-nodes - One or more comma-delimited base64-encoded ENR's to bootstrap the p2p network. Multiaddr - is also supported. + One or more comma-delimited base64-encoded ENR's to bootstrap the p2p network. Multiaddr is also supported. --builder The URL of a service compatible with the MEV-boost API. --builder-fallback-epochs-since-finalization - If this node is proposing a block and the chain has not finalized within this number of - epochs, it will NOT query any connected builders, and will use the local execution engine - for payload construction. Setting this value to anything less than 2 will cause the node - to NEVER query connected builders. Setting it to 2 will cause this condition to be hit if - there are skips slots at the start of an epoch, right before this node is set to propose. - [default: 3] + If this node is proposing a block and the chain has not finalized within this number of epochs, it will NOT query any + connected builders, and will use the local execution engine for payload construction. Setting this value to anything less + than 2 will cause the node to NEVER query connected builders. Setting it to 2 will cause this condition to be hit if + there are skips slots at the start of an epoch, right before this node is set to propose. [default: 3] --builder-fallback-skips - If this node is proposing a block and has seen this number of skip slots on the canonical - chain in a row, it will NOT query any connected builders, and will use the local execution - engine for payload construction. [default: 3] + If this node is proposing a block and has seen this number of skip slots on the canonical chain in a row, it will NOT + query any connected builders, and will use the local execution engine for payload construction. [default: 3] --builder-fallback-skips-per-epoch - If this node is proposing a block and has seen this number of skip slots on the canonical - chain in the past `SLOTS_PER_EPOCH`, it will NOT query any connected builders, and will - use the local execution engine for payload construction. [default: 8] + If this node is proposing a block and has seen this number of skip slots on the canonical chain in the past + `SLOTS_PER_EPOCH`, it will NOT query any connected builders, and will use the local execution engine for payload + construction. [default: 8] --builder-profit-threshold This flag is deprecated and has no effect. --builder-user-agent - The HTTP user agent to send alongside requests to the builder URL. The default is - Lighthouse's version string. + The HTTP user agent to send alongside requests to the builder URL. The default is Lighthouse's version string. --checkpoint-blobs - Set the checkpoint blobs to start syncing from. Must be aligned and match - --checkpoint-block. Using --checkpoint-sync-url instead is recommended. + Set the checkpoint blobs to start syncing from. Must be aligned and match --checkpoint-block. Using --checkpoint-sync-url + instead is recommended. --checkpoint-block - Set a checkpoint block to start syncing from. Must be aligned and match - --checkpoint-state. Using --checkpoint-sync-url instead is recommended. + Set a checkpoint block to start syncing from. Must be aligned and match --checkpoint-state. Using --checkpoint-sync-url + instead is recommended. --checkpoint-state - Set a checkpoint state to start syncing from. Must be aligned and match - --checkpoint-block. Using --checkpoint-sync-url instead is recommended. + Set a checkpoint state to start syncing from. Must be aligned and match --checkpoint-block. Using --checkpoint-sync-url + instead is recommended. --checkpoint-sync-url Set the remote beacon node HTTP endpoint to use for checkpoint sync. --checkpoint-sync-url-timeout - Set the timeout for checkpoint sync calls to remote beacon node HTTP endpoint. [default: - 180] + Set the timeout for checkpoint sync calls to remote beacon node HTTP endpoint. [default: 180] -d, --datadir - Used to specify a custom root data directory for lighthouse keys and databases. Defaults - to $HOME/.lighthouse/{network} where network is the value of the `network` flag Note: - Users should specify separate custom datadirs for different networks. + Used to specify a custom root data directory for lighthouse keys and databases. Defaults to $HOME/.lighthouse/{network} + where network is the value of the `network` flag Note: Users should specify separate custom datadirs for different + networks. --debug-level - Specifies the verbosity level used when emitting logs to the terminal. [default: info] - [possible values: info, debug, trace, warn, error, crit] + Specifies the verbosity level used when emitting logs to the terminal. [default: info] [possible values: info, debug, + trace, warn, error, crit] --discovery-port The UDP port that discovery will listen on. Defaults to `port` --discovery-port6 - The UDP port that discovery will listen on over IPv6 if listening over both IPv4 and IPv6. - Defaults to `port6` + The UDP port that discovery will listen on over IPv6 if listening over both IPv4 and IPv6. Defaults to `port6` --enr-address [
...] - The IP address/ DNS address to broadcast to other peers on how to reach this node. If a - DNS address is provided, the enr-address is set to the IP address it resolves to and does - not auto-update based on PONG responses in discovery. Set this only if you are sure other - nodes can connect to your local node on this address. This will update the `ip4` or `ip6` + The IP address/ DNS address to broadcast to other peers on how to reach this node. If a DNS address is provided, the + enr-address is set to the IP address it resolves to and does not auto-update based on PONG responses in discovery. Set + this only if you are sure other nodes can connect to your local node on this address. This will update the `ip4` or `ip6` ENR fields accordingly. To update both, set this flag twice with the different values. --enr-quic-port - The quic UDP4 port that will be set on the local ENR. Set this only if you are sure other - nodes can connect to your local node on this port over IPv4. + The quic UDP4 port that will be set on the local ENR. Set this only if you are sure other nodes can connect to your local + node on this port over IPv4. --enr-quic6-port - The quic UDP6 port that will be set on the local ENR. Set this only if you are sure other - nodes can connect to your local node on this port over IPv6. + The quic UDP6 port that will be set on the local ENR. Set this only if you are sure other nodes can connect to your local + node on this port over IPv6. --enr-tcp-port - The TCP4 port of the local ENR. Set this only if you are sure other nodes can connect to - your local node on this port over IPv4. The --port flag is used if this is not set. + The TCP4 port of the local ENR. Set this only if you are sure other nodes can connect to your local node on this port + over IPv4. The --port flag is used if this is not set. --enr-tcp6-port - The TCP6 port of the local ENR. Set this only if you are sure other nodes can connect to - your local node on this port over IPv6. The --port6 flag is used if this is not set. + The TCP6 port of the local ENR. Set this only if you are sure other nodes can connect to your local node on this port + over IPv6. The --port6 flag is used if this is not set. --enr-udp-port - The UDP4 port of the local ENR. Set this only if you are sure other nodes can connect to - your local node on this port over IPv4. + The UDP4 port of the local ENR. Set this only if you are sure other nodes can connect to your local node on this port + over IPv4. --enr-udp6-port - The UDP6 port of the local ENR. Set this only if you are sure other nodes can connect to - your local node on this port over IPv6. + The UDP6 port of the local ENR. Set this only if you are sure other nodes can connect to your local node on this port + over IPv6. --epochs-per-blob-prune - The epoch interval with which to prune blobs from Lighthouse's database when they are - older than the data availability boundary relative to the current epoch. [default: 1] + The epoch interval with which to prune blobs from Lighthouse's database when they are older than the data availability + boundary relative to the current epoch. [default: 1] --epochs-per-migration - The number of epochs to wait between running the migration of data from the hot DB to the - cold DB. Less frequent runs can be useful for minimizing disk writes [default: 1] + The number of epochs to wait between running the migration of data from the hot DB to the cold DB. Less frequent runs can + be useful for minimizing disk writes [default: 1] --eth1-blocks-per-log-query - Specifies the number of blocks that a deposit log query should span. This will reduce the - size of responses from the Eth1 endpoint. [default: 1000] + Specifies the number of blocks that a deposit log query should span. This will reduce the size of responses from the Eth1 + endpoint. [default: 1000] --eth1-cache-follow-distance - Specifies the distance between the Eth1 chain head and the last block which should be - imported into the cache. Setting this value lower can help compensate for irregular - Proof-of-Work block times, but setting it too low can make the node vulnerable to re-orgs. + Specifies the distance between the Eth1 chain head and the last block which should be imported into the cache. Setting + this value lower can help compensate for irregular Proof-of-Work block times, but setting it too low can make the node + vulnerable to re-orgs. --execution-endpoint - Server endpoint for an execution layer JWT-authenticated HTTP JSON-RPC connection. Uses - the same endpoint to populate the deposit cache. + Server endpoint for an execution layer JWT-authenticated HTTP JSON-RPC connection. Uses the same endpoint to populate the + deposit cache. --execution-jwt - File path which contains the hex-encoded JWT secret for the execution endpoint provided in - the --execution-endpoint flag. + File path which contains the hex-encoded JWT secret for the execution endpoint provided in the --execution-endpoint flag. --execution-jwt-id - Used by the beacon node to communicate a unique identifier to execution nodes during JWT - authentication. It corresponds to the 'id' field in the JWT claims object.Set to empty by - default + Used by the beacon node to communicate a unique identifier to execution nodes during JWT authentication. It corresponds + to the 'id' field in the JWT claims object.Set to empty by default --execution-jwt-secret-key - Hex-encoded JWT secret for the execution endpoint provided in the --execution-endpoint - flag. + Hex-encoded JWT secret for the execution endpoint provided in the --execution-endpoint flag. --execution-jwt-version - Used by the beacon node to communicate a client version to execution nodes during JWT - authentication. It corresponds to the 'clv' field in the JWT claims object.Set to empty by - default + Used by the beacon node to communicate a client version to execution nodes during JWT authentication. It corresponds to + the 'clv' field in the JWT claims object.Set to empty by default --execution-timeout-multiplier Unsigned integer to multiply the default execution timeouts by. [default: 1] --fork-choice-before-proposal-timeout - Set the maximum number of milliseconds to wait for fork choice before proposing a block. - You can prevent waiting at all by setting the timeout to 0, however you risk proposing - atop the wrong parent block. [default: 250] + Set the maximum number of milliseconds to wait for fork choice before proposing a block. You can prevent waiting at all + by setting the timeout to 0, however you risk proposing atop the wrong parent block. [default: 250] --freezer-dir Data directory for the freezer database. --genesis-state-url - A URL of a beacon-API compatible server from which to download the genesis state. - Checkpoint sync server URLs can generally be used with this flag. If not supplied, a - default URL or the --checkpoint-sync-url may be used. If the genesis state is already - included in this binary then this value will be ignored. + A URL of a beacon-API compatible server from which to download the genesis state. Checkpoint sync server URLs can + generally be used with this flag. If not supplied, a default URL or the --checkpoint-sync-url may be used. If the genesis + state is already included in this binary then this value will be ignored. --genesis-state-url-timeout The timeout in seconds for the request to --genesis-state-url. [default: 180] --graffiti - Specify your custom graffiti to be included in blocks. Defaults to the current version and - commit, truncated to fit in 32 bytes. + Specify your custom graffiti to be included in blocks. Defaults to the current version and commit, truncated to fit in 32 + bytes. --historic-state-cache-size Specifies how many states from the freezer database should cache in memory [default: 1] --http-address
Set the listen address for the RESTful HTTP API server. --http-allow-origin - Set the value of the Access-Control-Allow-Origin response HTTP header. Use * to allow any - origin (not recommended in production). If no value is supplied, the CORS allowed origin - is set to the listen address of this server (e.g., http://localhost:5052). + Set the value of the Access-Control-Allow-Origin response HTTP header. Use * to allow any origin (not recommended in + production). If no value is supplied, the CORS allowed origin is set to the listen address of this server (e.g., + http://localhost:5052). --http-duplicate-block-status Status code to send when a block that is already known is POSTed to the HTTP API. --http-enable-beacon-processor - The beacon processor is a scheduler which provides quality-of-service and DoS protection. - When set to "true", HTTP API requests will be queued and scheduled alongside other tasks. - When set to "false", HTTP API responses will be executed immediately. + The beacon processor is a scheduler which provides quality-of-service and DoS protection. When set to "true", HTTP API + requests will be queued and scheduled alongside other tasks. When set to "false", HTTP API responses will be executed + immediately. --http-port Set the listen TCP port for the RESTful HTTP API server. --http-spec-fork - Serve the spec for a specific hard fork on /eth/v1/config/spec. It should not be necessary - to set this flag. + Serve the spec for a specific hard fork on /eth/v1/config/spec. It should not be necessary to set this flag. --http-sse-capacity-multiplier - Multiplier to apply to the length of HTTP server-sent-event (SSE) channels. Increasing - this value can prevent messages from being dropped. + Multiplier to apply to the length of HTTP server-sent-event (SSE) channels. Increasing this value can prevent messages + from being dropped. --http-tls-cert The path of the certificate to be used when serving the HTTP API server over TLS. --http-tls-key - The path of the private key to be used when serving the HTTP API server over TLS. Must not - be password-protected. + The path of the private key to be used when serving the HTTP API server over TLS. Must not be password-protected. --inbound-rate-limiter-protocols - Configures the inbound rate limiter (requests received by this node).Rate limit quotas per - protocol can be set in the form of :/. To set - quotas for multiple protocols, separate them by ';'. This is enabled by default, using - default quotas. To disable rate limiting use the disable-inbound-rate-limiter flag - instead. + Configures the inbound rate limiter (requests received by this node).Rate limit quotas per protocol can be set in the + form of :/. To set quotas for multiple protocols, separate them by ';'. This is + enabled by default, using default quotas. To disable rate limiting use the disable-inbound-rate-limiter flag instead. --invalid-gossip-verified-blocks-path - If a block succeeds gossip validation whilst failing full validation, store the block SSZ - as a file at this path. This feature is only recommended for developers. This directory is - not pruned, users should be careful to avoid filling up their disks. + If a block succeeds gossip validation whilst failing full validation, store the block SSZ as a file at this path. This + feature is only recommended for developers. This directory is not pruned, users should be careful to avoid filling up + their disks. --libp2p-addresses - One or more comma-delimited multiaddrs to manually connect to a libp2p peer without an - ENR. + One or more comma-delimited multiaddrs to manually connect to a libp2p peer without an ENR. --listen-address [
...] - The address lighthouse will listen for UDP and TCP connections. To listen over IpV4 and - IpV6 set this flag twice with the different values. + The address lighthouse will listen for UDP and TCP connections. To listen over IpV4 and IpV6 set this flag twice with the + different values. Examples: - --listen-address '0.0.0.0' will listen over IPv4. - --listen-address '::' will listen over IPv6. - - --listen-address '0.0.0.0' --listen-address '::' will listen over both IPv4 and IPv6. - The order of the given addresses is not relevant. However, multiple IPv4, or multiple IPv6 - addresses will not be accepted. [default: 0.0.0.0] + - --listen-address '0.0.0.0' --listen-address '::' will listen over both IPv4 and IPv6. The order of the given addresses + is not relevant. However, multiple IPv4, or multiple IPv6 addresses will not be accepted. [default: 0.0.0.0] --log-format Specifies the log format used when emitting logs to the terminal. [possible values: JSON] --logfile - File path where the log file will be stored. Once it grows to the value specified in - `--logfile-max-size` a new log file is generated where future logs are stored. Once the - number of log files exceeds the value specified in `--logfile-max-number` the oldest log - file will be overwritten. + File path where the log file will be stored. Once it grows to the value specified in `--logfile-max-size` a new log file + is generated where future logs are stored. Once the number of log files exceeds the value specified in + `--logfile-max-number` the oldest log file will be overwritten. --logfile-debug-level - The verbosity level used when emitting logs to the log file. [default: debug] [possible - values: info, debug, trace, warn, error, crit] + The verbosity level used when emitting logs to the log file. [default: debug] [possible values: info, debug, trace, warn, + error, crit] --logfile-format - Specifies the log format used when emitting logs to the logfile. [possible values: - DEFAULT, JSON] + Specifies the log format used when emitting logs to the logfile. [possible values: DEFAULT, JSON] --logfile-max-number - The maximum number of log files that will be stored. If set to 0, background file logging - is disabled. [default: 5] + The maximum number of log files that will be stored. If set to 0, background file logging is disabled. [default: 5] --logfile-max-size - The maximum size (in MB) each log file can grow to before rotating. If set to 0, - background file logging is disabled. [default: 200] + The maximum size (in MB) each log file can grow to before rotating. If set to 0, background file logging is disabled. + [default: 200] --max-skip-slots - Refuse to skip more than this many slots when processing an attestation. This prevents - nodes on minority forks from wasting our time and disk space, but could also cause - unnecessary consensus failures, so is disabled by default. + Refuse to skip more than this many slots when processing an attestation. This prevents nodes on minority forks from + wasting our time and disk space, but could also cause unnecessary consensus failures, so is disabled by default. --metrics-address
Set the listen address for the Prometheus metrics HTTP server. --metrics-allow-origin - Set the value of the Access-Control-Allow-Origin response HTTP header. Use * to allow any - origin (not recommended in production). If no value is supplied, the CORS allowed origin - is set to the listen address of this server (e.g., http://localhost:5054). + Set the value of the Access-Control-Allow-Origin response HTTP header. Use * to allow any origin (not recommended in + production). If no value is supplied, the CORS allowed origin is set to the listen address of this server (e.g., + http://localhost:5054). --metrics-port Set the listen TCP port for the Prometheus metrics HTTP server. --monitoring-endpoint
- Enables the monitoring service for sending system metrics to a remote endpoint. This can - be used to monitor your setup on certain services (e.g. beaconcha.in). This flag sets the - endpoint where the beacon node metrics will be sent. Note: This will send information to a - remote sever which may identify and associate your validators, IP address and other - personal information. Always use a HTTPS connection and never provide an untrusted URL. + Enables the monitoring service for sending system metrics to a remote endpoint. This can be used to monitor your setup on + certain services (e.g. beaconcha.in). This flag sets the endpoint where the beacon node metrics will be sent. Note: This + will send information to a remote sever which may identify and associate your validators, IP address and other personal + information. Always use a HTTPS connection and never provide an untrusted URL. --monitoring-endpoint-period - Defines how many seconds to wait between each message sent to the monitoring-endpoint. - Default: 60s + Defines how many seconds to wait between each message sent to the monitoring-endpoint. Default: 60s --network - Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, - goerli, gnosis, chiado, sepolia, holesky] + Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, goerli, gnosis, chiado, + sepolia, holesky] --network-dir Data directory for network keys. Defaults to network/ inside the beacon node dir. --port - The TCP/UDP ports to listen on. There are two UDP ports. The discovery UDP port will be - set to this value and the Quic UDP port will be set to this value + 1. The discovery port - can be modified by the --discovery-port flag and the quic port can be modified by the - --quic-port flag. If listening over both IPv4 and IPv6 the --port flag will apply to the - IPv4 address and --port6 to the IPv6 address. [default: 9000] + The TCP/UDP ports to listen on. There are two UDP ports. The discovery UDP port will be set to this value and the Quic + UDP port will be set to this value + 1. The discovery port can be modified by the --discovery-port flag and the quic port + can be modified by the --quic-port flag. If listening over both IPv4 and IPv6 the --port flag will apply to the IPv4 + address and --port6 to the IPv6 address. [default: 9000] --port6 - The TCP/UDP ports to listen on over IPv6 when listening over both IPv4 and IPv6. Defaults - to 9090 when required. The Quic UDP port will be set to this value + 1. [default: 9090] + The TCP/UDP ports to listen on over IPv6 when listening over both IPv4 and IPv6. Defaults to 9090 when required. The Quic + UDP port will be set to this value + 1. [default: 9090] --prepare-payload-lookahead - The time before the start of a proposal slot at which payload attributes should be sent. - Low values are useful for execution nodes which don't improve their payload after the - first call, and high values are useful for ensuring the EL is given ample notice. Default: - 1/3 of a slot. + The time before the start of a proposal slot at which payload attributes should be sent. Low values are useful for + execution nodes which don't improve their payload after the first call, and high values are useful for ensuring the EL is + given ample notice. Default: 1/3 of a slot. --progressive-balances Deprecated. This optimisation is now the default and cannot be disabled. --proposer-reorg-cutoff - Maximum delay after the start of the slot at which to propose a reorging block. Lower - values can prevent failed reorgs by ensuring the block has ample time to propagate and be - processed by the network. The default is 1/12th of a slot (1 second on mainnet) + Maximum delay after the start of the slot at which to propose a reorging block. Lower values can prevent failed reorgs by + ensuring the block has ample time to propagate and be processed by the network. The default is 1/12th of a slot (1 second + on mainnet) --proposer-reorg-disallowed-offsets - Comma-separated list of integer offsets which can be used to avoid proposing reorging - blocks at certain slots. An offset of N means that reorging proposals will not be - attempted at any slot such that `slot % SLOTS_PER_EPOCH == N`. By default only re-orgs at - offset 0 will be avoided. Any offsets supplied with this flag will impose additional - restrictions. + Comma-separated list of integer offsets which can be used to avoid proposing reorging blocks at certain slots. An offset + of N means that reorging proposals will not be attempted at any slot such that `slot % SLOTS_PER_EPOCH == N`. By default + only re-orgs at offset 0 will be avoided. Any offsets supplied with this flag will impose additional restrictions. --proposer-reorg-epochs-since-finalization - Maximum number of epochs since finalization at which proposer reorgs are allowed. Default: - 2 + Maximum number of epochs since finalization at which proposer reorgs are allowed. Default: 2 --proposer-reorg-parent-threshold Percentage of parent vote weight above which to attempt a proposer reorg. Default: 160% --proposer-reorg-threshold Percentage of head vote weight below which to attempt a proposer reorg. Default: 20% --prune-blobs - Prune blobs from Lighthouse's database when they are older than the data data availability - boundary relative to the current epoch. [default: true] + Prune blobs from Lighthouse's database when they are older than the data data availability boundary relative to the + current epoch. [default: true] --prune-payloads - Prune execution payloads from Lighthouse's database. This saves space but imposes load on - the execution client, as payloads need to be reconstructed and sent to syncing peers. - [default: true] + Prune execution payloads from Lighthouse's database. This saves space but imposes load on the execution client, as + payloads need to be reconstructed and sent to syncing peers. [default: true] --quic-port The UDP port that quic will listen on. Defaults to `port` + 1 --quic-port6 - The UDP port that quic will listen on over IPv6 if listening over both IPv4 and IPv6. - Defaults to `port6` + 1 + The UDP port that quic will listen on over IPv6 if listening over both IPv4 and IPv6. Defaults to `port6` + 1 --safe-slots-to-import-optimistically - Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. - This flag should only be used if the user has a clear understanding that the broad - Ethereum community has elected to override this parameter in the event of an attack at the - PoS transition block. Incorrect use of this flag can cause your node to possibly accept an + Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. This flag should only be used + if the user has a clear understanding that the broad Ethereum community has elected to override this parameter in the + event of an attack at the PoS transition block. Incorrect use of this flag can cause your node to possibly accept an invalid chain or sync more slowly. Be extremely careful with this flag. --self-limiter-protocols - Enables the outbound rate limiter (requests made by this node).Rate limit quotas per - protocol can be set in the form of :/. To set - quotas for multiple protocols, separate them by ';'. If the self rate limiter is enabled - and a protocol is not present in the configuration, the quotas used for the inbound rate - limiter will be used. + Enables the outbound rate limiter (requests made by this node).Rate limit quotas per protocol can be set in the form of + :/. To set quotas for multiple protocols, separate them by ';'. If the self rate + limiter is enabled and a protocol is not present in the configuration, the quotas used for the inbound rate limiter will + be used. --shuffling-cache-size - Some HTTP API requests can be optimised by caching the shufflings at each epoch. This flag - allows the user to set the shuffling cache size in epochs. Shufflings are dependent on - validator count and setting this value to a large number can consume a large amount of - memory. + Some HTTP API requests can be optimised by caching the shufflings at each epoch. This flag allows the user to set the + shuffling cache size in epochs. Shufflings are dependent on validator count and setting this value to a large number can + consume a large amount of memory. --slasher-att-cache-size Set the maximum number of attestation roots for the slasher to cache --slasher-backend Set the database backend to be used by the slasher. [possible values: lmdb, disabled] --slasher-broadcast - Broadcast slashings found by the slasher to the rest of the network [Enabled by default]. - [default: true] + Broadcast slashings found by the slasher to the rest of the network [Enabled by default]. [default: true] --slasher-chunk-size Number of epochs per validator per chunk stored on disk. --slasher-dir @@ -312,64 +274,55 @@ Options: --slasher-max-db-size Maximum size of the MDBX database used by the slasher. --slasher-slot-offset - Set the delay from the start of the slot at which the slasher should ingest attestations. - Only effective if the slasher-update-period is a multiple of the slot duration. + Set the delay from the start of the slot at which the slasher should ingest attestations. Only effective if the + slasher-update-period is a multiple of the slot duration. --slasher-update-period Configure how often the slasher runs batch processing. --slasher-validator-chunk-size Number of validators per chunk stored on disk. --slots-per-restore-point - Specifies how often a freezer DB restore point should be stored. Cannot be changed after - initialization. [default: 8192 (mainnet) or 64 (minimal)] + Specifies how often a freezer DB restore point should be stored. Cannot be changed after initialization. [default: 8192 + (mainnet) or 64 (minimal)] --state-cache-size Specifies the size of the snapshot cache [default: 3] --suggested-fee-recipient - Emergency fallback fee recipient for use in case the validator client does not have one - configured. You should set this flag on the validator client instead of (or in addition - to) setting it here. + Emergency fallback fee recipient for use in case the validator client does not have one configured. You should set this + flag on the validator client instead of (or in addition to) setting it here. -t, --testnet-dir - Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse - testnet. Only effective if there is no existing database. + Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse testnet. Only effective if there is + no existing database. --target-peers The target number of peers. --terminal-block-hash-epoch-override - Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. - This flag should only be used if the user has a clear understanding that the broad - Ethereum community has elected to override the terminal PoW block. Incorrect use of this - flag will cause your node to experience a consensus failure. Be extremely careful with - this flag. + Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. This flag should only be used + if the user has a clear understanding that the broad Ethereum community has elected to override the terminal PoW block. + Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely careful with this flag. --terminal-block-hash-override - Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should - only be used if the user has a clear understanding that the broad Ethereum community has - elected to override the terminal PoW block. Incorrect use of this flag will cause your - node to experience a consensus failure. Be extremely careful with this flag. + Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should only be used if the user has a + clear understanding that the broad Ethereum community has elected to override the terminal PoW block. Incorrect use of + this flag will cause your node to experience a consensus failure. Be extremely careful with this flag. --terminal-total-difficulty-override - Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a - 256-bit decimal integer (not a hex value). This flag should only be used if the user has a - clear understanding that the broad Ethereum community has elected to override the terminal - difficulty. Incorrect use of this flag will cause your node to experience a consensus + Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a 256-bit decimal integer (not a + hex value). This flag should only be used if the user has a clear understanding that the broad Ethereum community has + elected to override the terminal difficulty. Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely careful with this flag. --trusted-peers - One or more comma-delimited trusted peer ids which always have the highest score according - to the peer scoring system. + One or more comma-delimited trusted peer ids which always have the highest score according to the peer scoring system. --trusted-setup-file-override - Path to a json file containing the trusted setup params. NOTE: This will override the - trusted setup that is generated from the mainnet kzg ceremony. Use with caution + Path to a json file containing the trusted setup params. NOTE: This will override the trusted setup that is generated + from the mainnet kzg ceremony. Use with caution --validator-monitor-file - As per --validator-monitor-pubkeys, but the comma-separated list is contained within a - file at the given path. + As per --validator-monitor-pubkeys, but the comma-separated list is contained within a file at the given path. --validator-monitor-individual-tracking-threshold - Once the validator monitor reaches this number of local validators it will stop collecting - per-validator Prometheus metrics and issuing per-validator logs. Instead, it will provide - aggregate metrics and logs. This avoids infeasibly high cardinality in the Prometheus - database and high log volume when using many validators. Defaults to 64. + Once the validator monitor reaches this number of local validators it will stop collecting per-validator Prometheus + metrics and issuing per-validator logs. Instead, it will provide aggregate metrics and logs. This avoids infeasibly high + cardinality in the Prometheus database and high log volume when using many validators. Defaults to 64. --validator-monitor-pubkeys - A comma-separated list of 0x-prefixed validator public keys. These validators will receive - special monitoring and additional logging. + A comma-separated list of 0x-prefixed validator public keys. These validators will receive special monitoring and + additional logging. --wss-checkpoint - Specify a weak subjectivity checkpoint in `block_root:epoch` format to verify the node's - sync against. The block root should be 0x-prefixed. Note that this flag is for - verification only, to perform a checkpoint sync from a recent state use + Specify a weak subjectivity checkpoint in `block_root:epoch` format to verify the node's sync against. The block root + should be 0x-prefixed. Note that this flag is for verification only, to perform a checkpoint sync from a recent state use --checkpoint-sync-url. -h, --help Print help @@ -377,147 +330,102 @@ Options: Print version Flags: - --allow-insecure-genesis-sync - Enable syncing from genesis, which is generally insecure and incompatible with data - availability checks. Checkpoint syncing is the preferred method for syncing a node. Only - use this flag when testing. DO NOT use on mainnet! - --always-prefer-builder-payload - This flag is deprecated and has no effect. - --always-prepare-payload - Send payload attributes with every fork choice update. This is intended for use by block - builders, relays and developers. You should set a fee recipient on this BN and also - consider adjusting the --prepare-payload-lookahead flag. - --builder-fallback-disable-checks - This flag disables all checks related to chain health. This means the builder API will - always be used for payload construction, regardless of recent chain conditions. - --compact-db - If present, apply compaction to the database on start-up. Use with caution. It is - generally not recommended unless auto-compaction is disabled. - --disable-backfill-rate-limiting - Disable the backfill sync rate-limiting. This allow users to just sync the entire chain as - fast as possible, however it can result in resource contention which degrades staking - performance. Stakers should generally choose to avoid this flag since backfill sync is not - required for staking. - --disable-deposit-contract-sync - Explicitly disables syncing of deposit logs from the execution node. This overrides any - previous option that depends on it. Useful if you intend to run a non-validating beacon - node. - --disable-duplicate-warn-logs - This flag is deprecated and has no effect. - --disable-inbound-rate-limiter - Disables the inbound rate limiter (requests received by this node). - --disable-lock-timeouts - Disable the timeouts applied to some internal locks by default. This can lead to less - spurious failures on slow hardware but is considered experimental as it may obscure - performance issues. - --disable-log-timestamp - If present, do not include timestamps in logging output. - --disable-malloc-tuning - If present, do not configure the system allocator. Providing this flag will generally - increase memory usage, it should only be provided when debugging specific memory - allocation issues. - --disable-optimistic-finalized-sync - Force Lighthouse to verify every execution block hash with the execution client during - finalized sync. By default block hashes will be checked in Lighthouse and only passed to - the EL if initial verification fails. - --disable-proposer-reorgs - Do not attempt to reorg late blocks from other validators when proposing. - --disable-quic - Disables the quic transport. The node will rely solely on the TCP transport for libp2p - connections. - --disable-upnp - Disables UPnP support. Setting this will prevent Lighthouse from attempting to - automatically establish external port mappings. - --dummy-eth1 - If present, uses an eth1 backend that generates static dummy data.Identical to the method - used at the 2019 Canada interop. - -e, --enr-match - Sets the local ENR IP address and port to match those set for lighthouse. Specifically, - the IP address will be the value of --listen-address and the UDP port will be - --discovery-port. - --enable-private-discovery - Lighthouse by default does not discover private IP addresses. Set this flag to enable - connection attempts to local addresses. - --eth1 - If present the node will connect to an eth1 node. This is required for block production, - you must use this flag if you wish to serve a validator. - --eth1-purge-cache - Purges the eth1 block and deposit caches - --genesis-backfill - Attempts to download blocks all the way back to genesis when checkpoint syncing. - --gui - Enable the graphical user interface and all its requirements. This enables --http and - --validator-monitor-auto and enables SSE logging. - --http - Enable the RESTful HTTP API server. Disabled by default. - --http-allow-sync-stalled - Forces the HTTP to indicate that the node is synced when sync is actually stalled. This is - useful for very small testnets. TESTING ONLY. DO NOT USE ON MAINNET. - --http-enable-tls - Serves the RESTful HTTP API server over TLS. This feature is currently experimental. - --import-all-attestations - Import and aggregate all attestations, regardless of validator subscriptions. This will - only import attestations from already-subscribed subnets, use with --subscribe-all-subnets - to ensure all attestations are received for import. - --light-client-server - Act as a full node supporting light clients on the p2p network [experimental] - --log-color - Force outputting colors when emitting logs to the terminal. - --logfile-compress - If present, compress old log files. This can help reduce the space needed to store old - logs. - --logfile-no-restricted-perms - If present, log files will be generated as world-readable meaning they can be read by any - user on the machine. Note that logs can often contain sensitive information about your - validator and so this flag should be used with caution. For Windows users, the log file - permissions will be inherited from the parent folder. - --metrics - Enable the Prometheus metrics HTTP server. Disabled by default. - --private - Prevents sending various client identification information. - --proposer-only - Sets this beacon node at be a block proposer only node. This will run the beacon node in a - minimal configuration that is sufficient for block publishing only. This flag should be - used for a beacon node being referenced by validator client using the --proposer-node - flag. This configuration is for enabling more secure setups. - --purge-db - If present, the chain database will be deleted. Use with caution. - --reconstruct-historic-states - After a checkpoint sync, reconstruct historic states in the database. This requires - syncing all the way back to genesis. - --reset-payload-statuses - When present, Lighthouse will forget the payload statuses of any already-imported blocks. - This can assist in the recovery from a consensus failure caused by the execution layer. - --self-limiter - Enables the outbound rate limiter (requests made by this node). Use the - self-limiter-protocol flag to set per protocol configurations. If the self rate limiter is - enabled and a protocol is not present in the configuration, the quotas used for the - inbound rate limiter will be used. - --shutdown-after-sync - Shutdown beacon node as soon as sync is completed. Backfill sync will not be performed - before shutdown. - --slasher - Run a slasher alongside the beacon node. It is currently only recommended for expert users - because of the immaturity of the slasher UX and the extra resources required. - --staking - Standard option for a staking beacon node. This will enable the HTTP server on - localhost:5052 and import deposit logs from the execution node. This is equivalent to - `--http` on merge-ready networks, or `--http --eth1` pre-merge - --subscribe-all-subnets - Subscribe to all subnets regardless of validator count. This will also advertise the - beacon node as being long-lived subscribed to all subnets. - --validator-monitor-auto - Enables the automatic detection and monitoring of validators connected to the HTTP API and - using the subnet subscription endpoint. This generally has the effect of providing - additional logging and metrics for locally controlled validators. - -x, --disable-enr-auto-update - Discovery automatically updates the nodes local ENR with an external IP address and port - as seen by other peers on the network. This disables this feature, fixing the ENR's - IP/PORT to those specified on boot. - -z, --zero-ports - Sets all listening TCP/UDP ports to 0, allowing the OS to choose some arbitrary free - ports. - --disable-packet-filter - Disables the discovery packet filter. Useful for testing in smaller networks + --allow-insecure-genesis-sync Enable syncing from genesis, which is generally insecure and incompatible with data + availability checks. Checkpoint syncing is the preferred method for syncing a node. Only + use this flag when testing. DO NOT use on mainnet! + --always-prefer-builder-payload This flag is deprecated and has no effect. + --always-prepare-payload Send payload attributes with every fork choice update. This is intended for use by block + builders, relays and developers. You should set a fee recipient on this BN and also + consider adjusting the --prepare-payload-lookahead flag. + --builder-fallback-disable-checks This flag disables all checks related to chain health. This means the builder API will + always be used for payload construction, regardless of recent chain conditions. + --compact-db If present, apply compaction to the database on start-up. Use with caution. It is + generally not recommended unless auto-compaction is disabled. + --disable-backfill-rate-limiting Disable the backfill sync rate-limiting. This allow users to just sync the entire chain + as fast as possible, however it can result in resource contention which degrades staking + performance. Stakers should generally choose to avoid this flag since backfill sync is + not required for staking. + --disable-deposit-contract-sync Explicitly disables syncing of deposit logs from the execution node. This overrides any + previous option that depends on it. Useful if you intend to run a non-validating beacon + node. + --disable-duplicate-warn-logs This flag is deprecated and has no effect. + --disable-enr-auto-update Discovery automatically updates the nodes local ENR with an external IP address and port + as seen by other peers on the network. This disables this feature, fixing the ENR's + IP/PORT to those specified on boot. + --disable-inbound-rate-limiter Disables the inbound rate limiter (requests received by this node). + --disable-lock-timeouts Disable the timeouts applied to some internal locks by default. This can lead to less + spurious failures on slow hardware but is considered experimental as it may obscure + performance issues. + --disable-log-timestamp If present, do not include timestamps in logging output. + --disable-malloc-tuning If present, do not configure the system allocator. Providing this flag will generally + increase memory usage, it should only be provided when debugging specific memory + allocation issues. + --disable-optimistic-finalized-sync Force Lighthouse to verify every execution block hash with the execution client during + finalized sync. By default block hashes will be checked in Lighthouse and only passed to + the EL if initial verification fails. + --disable-packet-filter Disables the discovery packet filter. Useful for testing in smaller networks + --disable-proposer-reorgs Do not attempt to reorg late blocks from other validators when proposing. + --disable-quic Disables the quic transport. The node will rely solely on the TCP transport for libp2p + connections. + --disable-upnp Disables UPnP support. Setting this will prevent Lighthouse from attempting to + automatically establish external port mappings. + --dummy-eth1 If present, uses an eth1 backend that generates static dummy data.Identical to the + method used at the 2019 Canada interop. + -e, --enr-match Sets the local ENR IP address and port to match those set for lighthouse. Specifically, + the IP address will be the value of --listen-address and the UDP port will be + --discovery-port. + --enable-private-discovery Lighthouse by default does not discover private IP addresses. Set this flag to enable + connection attempts to local addresses. + --eth1 If present the node will connect to an eth1 node. This is required for block production, + you must use this flag if you wish to serve a validator. + --eth1-purge-cache Purges the eth1 block and deposit caches + --genesis-backfill Attempts to download blocks all the way back to genesis when checkpoint syncing. + --gui Enable the graphical user interface and all its requirements. This enables --http and + --validator-monitor-auto and enables SSE logging. + --http Enable the RESTful HTTP API server. Disabled by default. + --http-allow-sync-stalled Forces the HTTP to indicate that the node is synced when sync is actually stalled. This + is useful for very small testnets. TESTING ONLY. DO NOT USE ON MAINNET. + --http-enable-tls Serves the RESTful HTTP API server over TLS. This feature is currently experimental. + --import-all-attestations Import and aggregate all attestations, regardless of validator subscriptions. This will + only import attestations from already-subscribed subnets, use with + --subscribe-all-subnets to ensure all attestations are received for import. + --light-client-server Act as a full node supporting light clients on the p2p network [experimental] + --log-color Force outputting colors when emitting logs to the terminal. + --logfile-compress If present, compress old log files. This can help reduce the space needed to store old + logs. + --logfile-no-restricted-perms If present, log files will be generated as world-readable meaning they can be read by + any user on the machine. Note that logs can often contain sensitive information about + your validator and so this flag should be used with caution. For Windows users, the log + file permissions will be inherited from the parent folder. + --metrics Enable the Prometheus metrics HTTP server. Disabled by default. + --private Prevents sending various client identification information. + --proposer-only Sets this beacon node at be a block proposer only node. This will run the beacon node in + a minimal configuration that is sufficient for block publishing only. This flag should + be used for a beacon node being referenced by validator client using the --proposer-node + flag. This configuration is for enabling more secure setups. + --purge-db If present, the chain database will be deleted. Use with caution. + --reconstruct-historic-states After a checkpoint sync, reconstruct historic states in the database. This requires + syncing all the way back to genesis. + --reset-payload-statuses When present, Lighthouse will forget the payload statuses of any already-imported + blocks. This can assist in the recovery from a consensus failure caused by the execution + layer. + --self-limiter Enables the outbound rate limiter (requests made by this node). Use the + self-limiter-protocol flag to set per protocol configurations. If the self rate limiter + is enabled and a protocol is not present in the configuration, the quotas used for the + inbound rate limiter will be used. + --shutdown-after-sync Shutdown beacon node as soon as sync is completed. Backfill sync will not be performed + before shutdown. + --slasher Run a slasher alongside the beacon node. It is currently only recommended for expert + users because of the immaturity of the slasher UX and the extra resources required. + --staking Standard option for a staking beacon node. This will enable the HTTP server on + localhost:5052 and import deposit logs from the execution node. This is equivalent to + `--http` on merge-ready networks, or `--http --eth1` pre-merge + --subscribe-all-subnets Subscribe to all subnets regardless of validator count. This will also advertise the + beacon node as being long-lived subscribed to all subnets. + --validator-monitor-auto Enables the automatic detection and monitoring of validators connected to the HTTP API + and using the subnet subscription endpoint. This generally has the effect of providing + additional logging and metrics for locally controlled validators. + -z, --zero-ports Sets all listening TCP/UDP ports to 0, allowing the OS to choose some arbitrary free + ports. ``` diff --git a/book/src/help_general.md b/book/src/help_general.md index bdddc199dbe..be1e2f4f2e6 100644 --- a/book/src/help_general.md +++ b/book/src/help_general.md @@ -1,93 +1,80 @@ # Lighthouse General Commands ``` -Ethereum 2.0 client by Sigma Prime. Provides a full-featured beacon node, a validator client and -utilities for managing validator accounts. +Ethereum 2.0 client by Sigma Prime. Provides a full-featured beacon node, a validator client and utilities for managing validator +accounts. Usage: lighthouse [OPTIONS] [COMMAND] Commands: database_manager Manage a beacon node database [aliases: db] - validator_manager Utilities for managing a Lighthouse validator client via the HTTP API. - [aliases: vm, validator-manager, validator_manager] - beacon_node The primary component which connects to the Ethereum 2.0 P2P network and - downloads, verifies and stores blocks. Provides a HTTP API for querying the - beacon chain and publishing messages to the network. [aliases: b, bn, - beacon] - boot_node Start a special Lighthouse process that only serves as a discv5 boot-node. - This process will *not* import blocks or perform most typical beacon node - functions. Instead, it will simply run the discv5 service and assist nodes - on the network to discover each other. This is the recommended way to - provide a network boot-node since it has a reduced attack surface compared - to a full beacon node. - validator_client When connected to a beacon node, performs the duties of a staked validator - (e.g., proposing blocks and attestations). [aliases: v, vc, validator] - account_manager Utilities for generating and managing Ethereum 2.0 accounts. [aliases: a, - am, account, account_manager] + validator_manager Utilities for managing a Lighthouse validator client via the HTTP API. [aliases: vm, validator-manager, + validator_manager] + beacon_node The primary component which connects to the Ethereum 2.0 P2P network and downloads, verifies and stores + blocks. Provides a HTTP API for querying the beacon chain and publishing messages to the network. + [aliases: b, bn, beacon] + boot_node Start a special Lighthouse process that only serves as a discv5 boot-node. This process will *not* import + blocks or perform most typical beacon node functions. Instead, it will simply run the discv5 service and + assist nodes on the network to discover each other. This is the recommended way to provide a network + boot-node since it has a reduced attack surface compared to a full beacon node. + validator_client When connected to a beacon node, performs the duties of a staked validator (e.g., proposing blocks and + attestations). [aliases: v, vc, validator] + account_manager Utilities for generating and managing Ethereum 2.0 accounts. [aliases: a, am, account, account_manager] help Print this message or the help of the given subcommand(s) Options: -d, --datadir - Used to specify a custom root data directory for lighthouse keys and databases. Defaults - to $HOME/.lighthouse/{network} where network is the value of the `network` flag Note: - Users should specify separate custom datadirs for different networks. + Used to specify a custom root data directory for lighthouse keys and databases. Defaults to $HOME/.lighthouse/{network} + where network is the value of the `network` flag Note: Users should specify separate custom datadirs for different + networks. --debug-level - Specifies the verbosity level used when emitting logs to the terminal. [default: info] - [possible values: info, debug, trace, warn, error, crit] + Specifies the verbosity level used when emitting logs to the terminal. [default: info] [possible values: info, debug, + trace, warn, error, crit] --genesis-state-url - A URL of a beacon-API compatible server from which to download the genesis state. - Checkpoint sync server URLs can generally be used with this flag. If not supplied, a - default URL or the --checkpoint-sync-url may be used. If the genesis state is already - included in this binary then this value will be ignored. + A URL of a beacon-API compatible server from which to download the genesis state. Checkpoint sync server URLs can + generally be used with this flag. If not supplied, a default URL or the --checkpoint-sync-url may be used. If the genesis + state is already included in this binary then this value will be ignored. --genesis-state-url-timeout The timeout in seconds for the request to --genesis-state-url. [default: 180] --log-format Specifies the log format used when emitting logs to the terminal. [possible values: JSON] --logfile - File path where the log file will be stored. Once it grows to the value specified in - `--logfile-max-size` a new log file is generated where future logs are stored. Once the - number of log files exceeds the value specified in `--logfile-max-number` the oldest log - file will be overwritten. + File path where the log file will be stored. Once it grows to the value specified in `--logfile-max-size` a new log file + is generated where future logs are stored. Once the number of log files exceeds the value specified in + `--logfile-max-number` the oldest log file will be overwritten. --logfile-debug-level - The verbosity level used when emitting logs to the log file. [default: debug] [possible - values: info, debug, trace, warn, error, crit] + The verbosity level used when emitting logs to the log file. [default: debug] [possible values: info, debug, trace, warn, + error, crit] --logfile-format - Specifies the log format used when emitting logs to the logfile. [possible values: - DEFAULT, JSON] + Specifies the log format used when emitting logs to the logfile. [possible values: DEFAULT, JSON] --logfile-max-number - The maximum number of log files that will be stored. If set to 0, background file logging - is disabled. [default: 5] + The maximum number of log files that will be stored. If set to 0, background file logging is disabled. [default: 5] --logfile-max-size - The maximum size (in MB) each log file can grow to before rotating. If set to 0, - background file logging is disabled. [default: 200] + The maximum size (in MB) each log file can grow to before rotating. If set to 0, background file logging is disabled. + [default: 200] --network - Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, - goerli, gnosis, chiado, sepolia, holesky] + Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, goerli, gnosis, chiado, + sepolia, holesky] --safe-slots-to-import-optimistically - Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. - This flag should only be used if the user has a clear understanding that the broad - Ethereum community has elected to override this parameter in the event of an attack at the - PoS transition block. Incorrect use of this flag can cause your node to possibly accept an + Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. This flag should only be used + if the user has a clear understanding that the broad Ethereum community has elected to override this parameter in the + event of an attack at the PoS transition block. Incorrect use of this flag can cause your node to possibly accept an invalid chain or sync more slowly. Be extremely careful with this flag. -t, --testnet-dir - Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse - testnet. Only effective if there is no existing database. + Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse testnet. Only effective if there is + no existing database. --terminal-block-hash-epoch-override - Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. - This flag should only be used if the user has a clear understanding that the broad - Ethereum community has elected to override the terminal PoW block. Incorrect use of this - flag will cause your node to experience a consensus failure. Be extremely careful with - this flag. + Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. This flag should only be used + if the user has a clear understanding that the broad Ethereum community has elected to override the terminal PoW block. + Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely careful with this flag. --terminal-block-hash-override - Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should - only be used if the user has a clear understanding that the broad Ethereum community has - elected to override the terminal PoW block. Incorrect use of this flag will cause your - node to experience a consensus failure. Be extremely careful with this flag. + Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should only be used if the user has a + clear understanding that the broad Ethereum community has elected to override the terminal PoW block. Incorrect use of + this flag will cause your node to experience a consensus failure. Be extremely careful with this flag. --terminal-total-difficulty-override - Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a - 256-bit decimal integer (not a hex value). This flag should only be used if the user has a - clear understanding that the broad Ethereum community has elected to override the terminal - difficulty. Incorrect use of this flag will cause your node to experience a consensus + Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a 256-bit decimal integer (not a + hex value). This flag should only be used if the user has a clear understanding that the broad Ethereum community has + elected to override the terminal difficulty. Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely careful with this flag. -h, --help Print help @@ -96,19 +83,15 @@ Options: Flags: --disable-log-timestamp If present, do not include timestamps in logging output. - --disable-malloc-tuning If present, do not configure the system allocator. Providing - this flag will generally increase memory usage, it should only - be provided when debugging specific memory allocation issues. - -l DEPRECATED Enables environment logging giving access to - sub-protocol logs such as discv5 and libp2p + --disable-malloc-tuning If present, do not configure the system allocator. Providing this flag will generally increase + memory usage, it should only be provided when debugging specific memory allocation issues. + -l DEPRECATED Enables environment logging giving access to sub-protocol logs such as discv5 and + libp2p --log-color Force outputting colors when emitting logs to the terminal. - --logfile-compress If present, compress old log files. This can help reduce the - space needed to store old logs. - --logfile-no-restricted-perms If present, log files will be generated as world-readable - meaning they can be read by any user on the machine. Note that - logs can often contain sensitive information about your - validator and so this flag should be used with caution. For - Windows users, the log file permissions will be inherited from - the parent folder. + --logfile-compress If present, compress old log files. This can help reduce the space needed to store old logs. + --logfile-no-restricted-perms If present, log files will be generated as world-readable meaning they can be read by any user + on the machine. Note that logs can often contain sensitive information about your validator + and so this flag should be used with caution. For Windows users, the log file permissions will + be inherited from the parent folder. ``` diff --git a/book/src/help_vc.md b/book/src/help_vc.md index e414013898c..4f46f668918 100644 --- a/book/src/help_vc.md +++ b/book/src/help_vc.md @@ -1,46 +1,39 @@ # Validator Client ``` -When connected to a beacon node, performs the duties of a staked validator (e.g., proposing blocks -and attestations). +When connected to a beacon node, performs the duties of a staked validator (e.g., proposing blocks and attestations). Usage: lighthouse validator_client [OPTIONS] Options: --beacon-nodes - Comma-separated addresses to one or more beacon node HTTP APIs. Default is - http://localhost:5052. + Comma-separated addresses to one or more beacon node HTTP APIs. Default is http://localhost:5052. --beacon-nodes-tls-certs - Comma-separated paths to custom TLS certificates to use when connecting to a beacon node - (and/or proposer node). These certificates must be in PEM format and are used in addition - to the OS trust store. Commas must only be used as a delimiter, and must not be part of - the certificate path. + Comma-separated paths to custom TLS certificates to use when connecting to a beacon node (and/or proposer node). These + certificates must be in PEM format and are used in addition to the OS trust store. Commas must only be used as a + delimiter, and must not be part of the certificate path. --broadcast - Comma-separated list of beacon API topics to broadcast to all beacon nodes. Possible - values are: none, attestations, blocks, subscriptions, sync-committee. Default (when flag - is omitted) is to broadcast subscriptions only. + Comma-separated list of beacon API topics to broadcast to all beacon nodes. Possible values are: none, attestations, + blocks, subscriptions, sync-committee. Default (when flag is omitted) is to broadcast subscriptions only. --builder-boost-factor - Defines the boost factor, a percentage multiplier to apply to the builder's payload value - when choosing between a builder payload header and payload from the local execution node. + Defines the boost factor, a percentage multiplier to apply to the builder's payload value when choosing between a builder + payload header and payload from the local execution node. --builder-registration-timestamp-override - This flag takes a unix timestamp value that will be used to override the timestamp used in - the builder api registration + This flag takes a unix timestamp value that will be used to override the timestamp used in the builder api registration -d, --datadir - Used to specify a custom root data directory for lighthouse keys and databases. Defaults - to $HOME/.lighthouse/{network} where network is the value of the `network` flag Note: - Users should specify separate custom datadirs for different networks. + Used to specify a custom root data directory for lighthouse keys and databases. Defaults to $HOME/.lighthouse/{network} + where network is the value of the `network` flag Note: Users should specify separate custom datadirs for different + networks. --debug-level - Specifies the verbosity level used when emitting logs to the terminal. [default: info] - [possible values: info, debug, trace, warn, error, crit] + Specifies the verbosity level used when emitting logs to the terminal. [default: info] [possible values: info, debug, + trace, warn, error, crit] --gas-limit - The gas limit to be used in all builder proposals for all validators managed by this - validator client. Note this will not necessarily be used if the gas limit set here moves - too far from the previous block's gas limit. [default: 30,000,000] + The gas limit to be used in all builder proposals for all validators managed by this validator client. Note this will not + necessarily be used if the gas limit set here moves too far from the previous block's gas limit. [default: 30,000,000] --genesis-state-url - A URL of a beacon-API compatible server from which to download the genesis state. - Checkpoint sync server URLs can generally be used with this flag. If not supplied, a - default URL or the --checkpoint-sync-url may be used. If the genesis state is already - included in this binary then this value will be ignored. + A URL of a beacon-API compatible server from which to download the genesis state. Checkpoint sync server URLs can + generally be used with this flag. If not supplied, a default URL or the --checkpoint-sync-url may be used. If the genesis + state is already included in this binary then this value will be ignored. --genesis-state-url-timeout The timeout in seconds for the request to --genesis-state-url. [default: 180] --graffiti @@ -48,193 +41,156 @@ Options: --graffiti-file Specify a graffiti file to load validator graffitis from. --http-address
- Set the address for the HTTP address. The HTTP server is not encrypted and therefore it is - unsafe to publish on a public network. When this flag is used, it additionally requires - the explicit use of the `--unencrypted-http-transport` flag to ensure the user is aware of - the risks involved. For access via the Internet, users should apply transport-layer - security like a HTTPS reverse-proxy or SSH tunnelling. + Set the address for the HTTP address. The HTTP server is not encrypted and therefore it is unsafe to publish on a public + network. When this flag is used, it additionally requires the explicit use of the `--unencrypted-http-transport` flag to + ensure the user is aware of the risks involved. For access via the Internet, users should apply transport-layer security + like a HTTPS reverse-proxy or SSH tunnelling. --http-allow-origin - Set the value of the Access-Control-Allow-Origin response HTTP header. Use * to allow any - origin (not recommended in production). If no value is supplied, the CORS allowed origin - is set to the listen address of this server (e.g., http://localhost:5062). + Set the value of the Access-Control-Allow-Origin response HTTP header. Use * to allow any origin (not recommended in + production). If no value is supplied, the CORS allowed origin is set to the listen address of this server (e.g., + http://localhost:5062). --http-port Set the listen TCP port for the RESTful HTTP API server. --log-format Specifies the log format used when emitting logs to the terminal. [possible values: JSON] --logfile - File path where the log file will be stored. Once it grows to the value specified in - `--logfile-max-size` a new log file is generated where future logs are stored. Once the - number of log files exceeds the value specified in `--logfile-max-number` the oldest log - file will be overwritten. + File path where the log file will be stored. Once it grows to the value specified in `--logfile-max-size` a new log file + is generated where future logs are stored. Once the number of log files exceeds the value specified in + `--logfile-max-number` the oldest log file will be overwritten. --logfile-debug-level - The verbosity level used when emitting logs to the log file. [default: debug] [possible - values: info, debug, trace, warn, error, crit] + The verbosity level used when emitting logs to the log file. [default: debug] [possible values: info, debug, trace, warn, + error, crit] --logfile-format - Specifies the log format used when emitting logs to the logfile. [possible values: - DEFAULT, JSON] + Specifies the log format used when emitting logs to the logfile. [possible values: DEFAULT, JSON] --logfile-max-number - The maximum number of log files that will be stored. If set to 0, background file logging - is disabled. [default: 5] + The maximum number of log files that will be stored. If set to 0, background file logging is disabled. [default: 5] --logfile-max-size - The maximum size (in MB) each log file can grow to before rotating. If set to 0, - background file logging is disabled. [default: 200] + The maximum size (in MB) each log file can grow to before rotating. If set to 0, background file logging is disabled. + [default: 200] --metrics-address
Set the listen address for the Prometheus metrics HTTP server. --metrics-allow-origin - Set the value of the Access-Control-Allow-Origin response HTTP header. Use * to allow any - origin (not recommended in production). If no value is supplied, the CORS allowed origin - is set to the listen address of this server (e.g., http://localhost:5064). + Set the value of the Access-Control-Allow-Origin response HTTP header. Use * to allow any origin (not recommended in + production). If no value is supplied, the CORS allowed origin is set to the listen address of this server (e.g., + http://localhost:5064). --metrics-port Set the listen TCP port for the Prometheus metrics HTTP server. --monitoring-endpoint
- Enables the monitoring service for sending system metrics to a remote endpoint. This can - be used to monitor your setup on certain services (e.g. beaconcha.in). This flag sets the - endpoint where the beacon node metrics will be sent. Note: This will send information to a - remote sever which may identify and associate your validators, IP address and other - personal information. Always use a HTTPS connection and never provide an untrusted URL. + Enables the monitoring service for sending system metrics to a remote endpoint. This can be used to monitor your setup on + certain services (e.g. beaconcha.in). This flag sets the endpoint where the beacon node metrics will be sent. Note: This + will send information to a remote sever which may identify and associate your validators, IP address and other personal + information. Always use a HTTPS connection and never provide an untrusted URL. --monitoring-endpoint-period - Defines how many seconds to wait between each message sent to the monitoring-endpoint. - Default: 60s + Defines how many seconds to wait between each message sent to the monitoring-endpoint. Default: 60s --network - Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, - goerli, gnosis, chiado, sepolia, holesky] + Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, goerli, gnosis, chiado, + sepolia, holesky] --proposer-nodes - Comma-separated addresses to one or more beacon node HTTP APIs. These specify nodes that - are used to send beacon block proposals. A failure will revert back to the standard beacon - nodes specified in --beacon-nodes. + Comma-separated addresses to one or more beacon node HTTP APIs. These specify nodes that are used to send beacon block + proposals. A failure will revert back to the standard beacon nodes specified in --beacon-nodes. --safe-slots-to-import-optimistically - Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. - This flag should only be used if the user has a clear understanding that the broad - Ethereum community has elected to override this parameter in the event of an attack at the - PoS transition block. Incorrect use of this flag can cause your node to possibly accept an + Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. This flag should only be used + if the user has a clear understanding that the broad Ethereum community has elected to override this parameter in the + event of an attack at the PoS transition block. Incorrect use of this flag can cause your node to possibly accept an invalid chain or sync more slowly. Be extremely careful with this flag. --secrets-dir - The directory which contains the password to unlock the validator voting keypairs. Each - password should be contained in a file where the name is the 0x-prefixed hex - representation of the validators voting public key. Defaults to + The directory which contains the password to unlock the validator voting keypairs. Each password should be contained in a + file where the name is the 0x-prefixed hex representation of the validators voting public key. Defaults to ~/.lighthouse/{network}/secrets. --suggested-fee-recipient - Once the merge has happened, this address will receive transaction fees from blocks - proposed by this validator client. If a fee recipient is configured in the validator - definitions it takes priority over this value. + Once the merge has happened, this address will receive transaction fees from blocks proposed by this validator client. If + a fee recipient is configured in the validator definitions it takes priority over this value. -t, --testnet-dir - Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse - testnet. Only effective if there is no existing database. + Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse testnet. Only effective if there is + no existing database. --terminal-block-hash-epoch-override - Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. - This flag should only be used if the user has a clear understanding that the broad - Ethereum community has elected to override the terminal PoW block. Incorrect use of this - flag will cause your node to experience a consensus failure. Be extremely careful with - this flag. + Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. This flag should only be used + if the user has a clear understanding that the broad Ethereum community has elected to override the terminal PoW block. + Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely careful with this flag. --terminal-block-hash-override - Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should - only be used if the user has a clear understanding that the broad Ethereum community has - elected to override the terminal PoW block. Incorrect use of this flag will cause your - node to experience a consensus failure. Be extremely careful with this flag. + Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should only be used if the user has a + clear understanding that the broad Ethereum community has elected to override the terminal PoW block. Incorrect use of + this flag will cause your node to experience a consensus failure. Be extremely careful with this flag. --terminal-total-difficulty-override - Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a - 256-bit decimal integer (not a hex value). This flag should only be used if the user has a - clear understanding that the broad Ethereum community has elected to override the terminal - difficulty. Incorrect use of this flag will cause your node to experience a consensus + Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a 256-bit decimal integer (not a + hex value). This flag should only be used if the user has a clear understanding that the broad Ethereum community has + elected to override the terminal difficulty. Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely careful with this flag. --validator-registration-batch-size - Defines the number of validators per validator/register_validator request sent to the BN. - This value can be reduced to avoid timeouts from builders. [default: 500] + Defines the number of validators per validator/register_validator request sent to the BN. This value can be reduced to + avoid timeouts from builders. [default: 500] --validators-dir - The directory which contains the validator keystores, deposit data for each validator - along with the common slashing protection database and the validator_definitions.yml + The directory which contains the validator keystores, deposit data for each validator along with the common slashing + protection database and the validator_definitions.yml --web3-signer-keep-alive-timeout - Keep-alive timeout for each web3signer connection. Set to 'null' to never timeout - [default: 90000] + Keep-alive timeout for each web3signer connection. Set to 'null' to never timeout [default: 90000] --web3-signer-max-idle-connections Maximum number of idle connections to maintain per web3signer host. Default is unlimited. -h, --help Print help Flags: - --builder-proposals - If this flag is set, Lighthouse will query the Beacon Node for only block headers during - proposals and will sign over headers. Useful for outsourcing execution payload - construction during proposals. - --disable-auto-discover - If present, do not attempt to discover new validators in the validators-dir. Validators - will need to be manually added to the validator_definitions.yml file. - --disable-latency-measurement-service - Disables the service that periodically attempts to measure latency to BNs. - --disable-log-timestamp - If present, do not include timestamps in logging output. - --disable-malloc-tuning - If present, do not configure the system allocator. Providing this flag will generally - increase memory usage, it should only be provided when debugging specific memory - allocation issues. - --disable-run-on-all - DEPRECATED. Use --broadcast. By default, Lighthouse publishes attestation, sync committee - subscriptions and proposer preparation messages to all beacon nodes provided in the - `--beacon-nodes flag`. This option changes that behaviour such that these api calls only - go out to the first available and synced beacon node - --disable-slashing-protection-web3signer - Disable Lighthouse's slashing protection for all web3signer keys. This can reduce the I/O - burden on the VC but is only safe if slashing protection is enabled on the remote signer - and is implemented correctly. DO NOT ENABLE THIS FLAG UNLESS YOU ARE CERTAIN THAT SLASHING - PROTECTION IS ENABLED ON THE REMOTE SIGNER. YOU WILL GET SLASHED IF YOU USE THIS FLAG - WITHOUT ENABLING WEB3SIGNER'S SLASHING PROTECTION. - --distributed - Enables functionality required for running the validator in a distributed validator - cluster. - --enable-doppelganger-protection - If this flag is set, Lighthouse will delay startup for three epochs and monitor for - messages on the network by any of the validators managed by this client. This will result - in three (possibly four) epochs worth of missed attestations. If an attestation is - detected during this period, it means it is very likely that you are running a second - validator client with the same keys. This validator client will immediately shutdown if - this is detected in order to avoid potentially committing a slashable offense. Use this - flag in order to ENABLE this functionality, without this flag Lighthouse will begin - attesting immediately. - --enable-high-validator-count-metrics - Enable per validator metrics for > 64 validators. Note: This flag is automatically enabled - for <= 64 validators. Enabling this metric for higher validator counts will lead to higher - volume of prometheus metrics being collected. - --http - Enable the RESTful HTTP API server. Disabled by default. - --http-allow-keystore-export - If present, allow access to the DELETE /lighthouse/keystores HTTP API method, which allows - exporting keystores and passwords to HTTP API consumers who have access to the API token. - This method is useful for exporting validators, however it should be used with caution - since it exposes private key data to authorized users. - --http-store-passwords-in-secrets-dir - If present, any validators created via the HTTP will have keystore passwords stored in the - secrets-dir rather than the validator definitions file. - --init-slashing-protection - If present, do not require the slashing protection database to exist before running. You - SHOULD NOT use this flag unless you're certain that a new slashing protection database is - required. Usually, your database will have been initialized when you imported your - validator keys. If you misplace your database and then run with this flag you risk being - slashed. - --log-color - Force outputting colors when emitting logs to the terminal. - --logfile-compress - If present, compress old log files. This can help reduce the space needed to store old - logs. - --logfile-no-restricted-perms - If present, log files will be generated as world-readable meaning they can be read by any - user on the machine. Note that logs can often contain sensitive information about your - validator and so this flag should be used with caution. For Windows users, the log file - permissions will be inherited from the parent folder. - --metrics - Enable the Prometheus metrics HTTP server. Disabled by default. - --prefer-builder-proposals - If this flag is set, Lighthouse will always prefer blocks constructed by builders, - regardless of payload value. - --produce-block-v3 - Enable block production via the block v3 endpoint for this validator client. This should - only be enabled when paired with a beacon node that has this endpoint implemented. This - flag will be enabled by default in future. - --unencrypted-http-transport - This is a safety flag to ensure that the user is aware that the http transport is - unencrypted and using a custom HTTP address is unsafe. - --use-long-timeouts - If present, the validator client will use longer timeouts for requests made to the beacon - node. This flag is generally not recommended, longer timeouts can cause missed duties when - fallbacks are used. + --builder-proposals If this flag is set, Lighthouse will query the Beacon Node for only block headers + during proposals and will sign over headers. Useful for outsourcing execution + payload construction during proposals. + --disable-auto-discover If present, do not attempt to discover new validators in the validators-dir. + Validators will need to be manually added to the validator_definitions.yml file. + --disable-latency-measurement-service Disables the service that periodically attempts to measure latency to BNs. + --disable-log-timestamp If present, do not include timestamps in logging output. + --disable-malloc-tuning If present, do not configure the system allocator. Providing this flag will + generally increase memory usage, it should only be provided when debugging specific + memory allocation issues. + --disable-run-on-all DEPRECATED. Use --broadcast. By default, Lighthouse publishes attestation, sync + committee subscriptions and proposer preparation messages to all beacon nodes + provided in the `--beacon-nodes flag`. This option changes that behaviour such that + these api calls only go out to the first available and synced beacon node + --disable-slashing-protection-web3signer Disable Lighthouse's slashing protection for all web3signer keys. This can reduce + the I/O burden on the VC but is only safe if slashing protection is enabled on the + remote signer and is implemented correctly. DO NOT ENABLE THIS FLAG UNLESS YOU ARE + CERTAIN THAT SLASHING PROTECTION IS ENABLED ON THE REMOTE SIGNER. YOU WILL GET + SLASHED IF YOU USE THIS FLAG WITHOUT ENABLING WEB3SIGNER'S SLASHING PROTECTION. + --distributed Enables functionality required for running the validator in a distributed validator + cluster. + --enable-doppelganger-protection If this flag is set, Lighthouse will delay startup for three epochs and monitor for + messages on the network by any of the validators managed by this client. This will + result in three (possibly four) epochs worth of missed attestations. If an + attestation is detected during this period, it means it is very likely that you are + running a second validator client with the same keys. This validator client will + immediately shutdown if this is detected in order to avoid potentially committing a + slashable offense. Use this flag in order to ENABLE this functionality, without + this flag Lighthouse will begin attesting immediately. + --enable-high-validator-count-metrics Enable per validator metrics for > 64 validators. Note: This flag is automatically + enabled for <= 64 validators. Enabling this metric for higher validator counts will + lead to higher volume of prometheus metrics being collected. + --http Enable the RESTful HTTP API server. Disabled by default. + --http-allow-keystore-export If present, allow access to the DELETE /lighthouse/keystores HTTP API method, which + allows exporting keystores and passwords to HTTP API consumers who have access to + the API token. This method is useful for exporting validators, however it should be + used with caution since it exposes private key data to authorized users. + --http-store-passwords-in-secrets-dir If present, any validators created via the HTTP will have keystore passwords stored + in the secrets-dir rather than the validator definitions file. + --init-slashing-protection If present, do not require the slashing protection database to exist before + running. You SHOULD NOT use this flag unless you're certain that a new slashing + protection database is required. Usually, your database will have been initialized + when you imported your validator keys. If you misplace your database and then run + with this flag you risk being slashed. + --log-color Force outputting colors when emitting logs to the terminal. + --logfile-compress If present, compress old log files. This can help reduce the space needed to store + old logs. + --logfile-no-restricted-perms If present, log files will be generated as world-readable meaning they can be read + by any user on the machine. Note that logs can often contain sensitive information + about your validator and so this flag should be used with caution. For Windows + users, the log file permissions will be inherited from the parent folder. + --metrics Enable the Prometheus metrics HTTP server. Disabled by default. + --prefer-builder-proposals If this flag is set, Lighthouse will always prefer blocks constructed by builders, + regardless of payload value. + --produce-block-v3 Enable block production via the block v3 endpoint for this validator client. This + should only be enabled when paired with a beacon node that has this endpoint + implemented. This flag will be enabled by default in future. + --unencrypted-http-transport This is a safety flag to ensure that the user is aware that the http transport is + unencrypted and using a custom HTTP address is unsafe. + --use-long-timeouts If present, the validator client will use longer timeouts for requests made to the + beacon node. This flag is generally not recommended, longer timeouts can cause + missed duties when fallbacks are used. ``` diff --git a/book/src/help_vm.md b/book/src/help_vm.md index 11d25b93f0a..aec4623c852 100644 --- a/book/src/help_vm.md +++ b/book/src/help_vm.md @@ -6,98 +6,83 @@ Utilities for managing a Lighthouse validator client via the HTTP API. Usage: lighthouse validator_manager [OPTIONS] [COMMAND] Commands: - create Creates new validators from BIP-39 mnemonic. A JSON file will be created which - contains all the validator keystores and other validator data. This file can then be - imported to a validator client using the "import-validators" command. Another, - optional JSON file is created which contains a list of validator deposits in the same - format as the "ethereum/staking-deposit-cli" tool. - import Uploads validators to a validator client using the HTTP API. The validators are - defined in a JSON file which can be generated using the "create-validators" command. - move Uploads validators to a validator client using the HTTP API. The validators are - defined in a JSON file which can be generated using the "create-validators" command. - This command only supports validators signing via a keystore on the local file system - (i.e., not Web3Signer validators). + create Creates new validators from BIP-39 mnemonic. A JSON file will be created which contains all the validator keystores + and other validator data. This file can then be imported to a validator client using the "import-validators" command. + Another, optional JSON file is created which contains a list of validator deposits in the same format as the + "ethereum/staking-deposit-cli" tool. + import Uploads validators to a validator client using the HTTP API. The validators are defined in a JSON file which can be + generated using the "create-validators" command. + move Uploads validators to a validator client using the HTTP API. The validators are defined in a JSON file which can be + generated using the "create-validators" command. This command only supports validators signing via a keystore on the + local file system (i.e., not Web3Signer validators). help Print this message or the help of the given subcommand(s) Options: -d, --datadir - Used to specify a custom root data directory for lighthouse keys and databases. Defaults - to $HOME/.lighthouse/{network} where network is the value of the `network` flag Note: - Users should specify separate custom datadirs for different networks. + Used to specify a custom root data directory for lighthouse keys and databases. Defaults to $HOME/.lighthouse/{network} + where network is the value of the `network` flag Note: Users should specify separate custom datadirs for different + networks. --debug-level - Specifies the verbosity level used when emitting logs to the terminal. [default: info] - [possible values: info, debug, trace, warn, error, crit] + Specifies the verbosity level used when emitting logs to the terminal. [default: info] [possible values: info, debug, + trace, warn, error, crit] --genesis-state-url - A URL of a beacon-API compatible server from which to download the genesis state. - Checkpoint sync server URLs can generally be used with this flag. If not supplied, a - default URL or the --checkpoint-sync-url may be used. If the genesis state is already - included in this binary then this value will be ignored. + A URL of a beacon-API compatible server from which to download the genesis state. Checkpoint sync server URLs can + generally be used with this flag. If not supplied, a default URL or the --checkpoint-sync-url may be used. If the genesis + state is already included in this binary then this value will be ignored. --genesis-state-url-timeout The timeout in seconds for the request to --genesis-state-url. [default: 180] --log-format Specifies the log format used when emitting logs to the terminal. [possible values: JSON] --logfile - File path where the log file will be stored. Once it grows to the value specified in - `--logfile-max-size` a new log file is generated where future logs are stored. Once the - number of log files exceeds the value specified in `--logfile-max-number` the oldest log - file will be overwritten. + File path where the log file will be stored. Once it grows to the value specified in `--logfile-max-size` a new log file + is generated where future logs are stored. Once the number of log files exceeds the value specified in + `--logfile-max-number` the oldest log file will be overwritten. --logfile-debug-level - The verbosity level used when emitting logs to the log file. [default: debug] [possible - values: info, debug, trace, warn, error, crit] + The verbosity level used when emitting logs to the log file. [default: debug] [possible values: info, debug, trace, warn, + error, crit] --logfile-format - Specifies the log format used when emitting logs to the logfile. [possible values: - DEFAULT, JSON] + Specifies the log format used when emitting logs to the logfile. [possible values: DEFAULT, JSON] --logfile-max-number - The maximum number of log files that will be stored. If set to 0, background file logging - is disabled. [default: 5] + The maximum number of log files that will be stored. If set to 0, background file logging is disabled. [default: 5] --logfile-max-size - The maximum size (in MB) each log file can grow to before rotating. If set to 0, - background file logging is disabled. [default: 200] + The maximum size (in MB) each log file can grow to before rotating. If set to 0, background file logging is disabled. + [default: 200] --network - Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, - goerli, gnosis, chiado, sepolia, holesky] + Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, goerli, gnosis, chiado, + sepolia, holesky] --safe-slots-to-import-optimistically - Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. - This flag should only be used if the user has a clear understanding that the broad - Ethereum community has elected to override this parameter in the event of an attack at the - PoS transition block. Incorrect use of this flag can cause your node to possibly accept an + Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. This flag should only be used + if the user has a clear understanding that the broad Ethereum community has elected to override this parameter in the + event of an attack at the PoS transition block. Incorrect use of this flag can cause your node to possibly accept an invalid chain or sync more slowly. Be extremely careful with this flag. -t, --testnet-dir - Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse - testnet. Only effective if there is no existing database. + Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse testnet. Only effective if there is + no existing database. --terminal-block-hash-epoch-override - Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. - This flag should only be used if the user has a clear understanding that the broad - Ethereum community has elected to override the terminal PoW block. Incorrect use of this - flag will cause your node to experience a consensus failure. Be extremely careful with - this flag. + Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. This flag should only be used + if the user has a clear understanding that the broad Ethereum community has elected to override the terminal PoW block. + Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely careful with this flag. --terminal-block-hash-override - Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should - only be used if the user has a clear understanding that the broad Ethereum community has - elected to override the terminal PoW block. Incorrect use of this flag will cause your - node to experience a consensus failure. Be extremely careful with this flag. + Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should only be used if the user has a + clear understanding that the broad Ethereum community has elected to override the terminal PoW block. Incorrect use of + this flag will cause your node to experience a consensus failure. Be extremely careful with this flag. --terminal-total-difficulty-override - Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a - 256-bit decimal integer (not a hex value). This flag should only be used if the user has a - clear understanding that the broad Ethereum community has elected to override the terminal - difficulty. Incorrect use of this flag will cause your node to experience a consensus + Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a 256-bit decimal integer (not a + hex value). This flag should only be used if the user has a clear understanding that the broad Ethereum community has + elected to override the terminal difficulty. Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely careful with this flag. -h, --help Print help Flags: --disable-log-timestamp If present, do not include timestamps in logging output. - --disable-malloc-tuning If present, do not configure the system allocator. Providing - this flag will generally increase memory usage, it should only - be provided when debugging specific memory allocation issues. + --disable-malloc-tuning If present, do not configure the system allocator. Providing this flag will generally increase + memory usage, it should only be provided when debugging specific memory allocation issues. --log-color Force outputting colors when emitting logs to the terminal. - --logfile-compress If present, compress old log files. This can help reduce the - space needed to store old logs. - --logfile-no-restricted-perms If present, log files will be generated as world-readable - meaning they can be read by any user on the machine. Note that - logs can often contain sensitive information about your - validator and so this flag should be used with caution. For - Windows users, the log file permissions will be inherited from - the parent folder. + --logfile-compress If present, compress old log files. This can help reduce the space needed to store old logs. + --logfile-no-restricted-perms If present, log files will be generated as world-readable meaning they can be read by any user + on the machine. Note that logs can often contain sensitive information about your validator + and so this flag should be used with caution. For Windows users, the log file permissions will + be inherited from the parent folder. ``` diff --git a/book/src/help_vm_create.md b/book/src/help_vm_create.md index 13d4d049d8b..0313c17104d 100644 --- a/book/src/help_vm_create.md +++ b/book/src/help_vm_create.md @@ -1,145 +1,124 @@ # Validator Manager Create ``` -Creates new validators from BIP-39 mnemonic. A JSON file will be created which contains all the -validator keystores and other validator data. This file can then be imported to a validator client -using the "import-validators" command. Another, optional JSON file is created which contains a list -of validator deposits in the same format as the "ethereum/staking-deposit-cli" tool. +Creates new validators from BIP-39 mnemonic. A JSON file will be created which contains all the validator keystores and other +validator data. This file can then be imported to a validator client using the "import-validators" command. Another, optional JSON +file is created which contains a list of validator deposits in the same format as the "ethereum/staking-deposit-cli" tool. Usage: lighthouse validator_manager create [OPTIONS] --output-path Options: --beacon-node - A HTTP(S) address of a beacon node using the beacon-API. If this value is provided, an - error will be raised if any validator key here is already known as a validator by that - beacon node. This helps prevent the same validator being created twice and therefore - slashable conditions. + A HTTP(S) address of a beacon node using the beacon-API. If this value is provided, an error will be raised if any + validator key here is already known as a validator by that beacon node. This helps prevent the same validator being + created twice and therefore slashable conditions. --builder-boost-factor - Defines the boost factor, a percentage multiplier to apply to the builder's payload value - when choosing between a builder payload header and payload from the local execution node. + Defines the boost factor, a percentage multiplier to apply to the builder's payload value when choosing between a builder + payload header and payload from the local execution node. --builder-proposals - When provided, all created validators will attempt to create blocks via builder rather - than the local EL. [possible values: true, false] + When provided, all created validators will attempt to create blocks via builder rather than the local EL. [possible + values: true, false] --count The number of validators to create, regardless of how many already exist -d, --datadir - Used to specify a custom root data directory for lighthouse keys and databases. Defaults - to $HOME/.lighthouse/{network} where network is the value of the `network` flag Note: - Users should specify separate custom datadirs for different networks. + Used to specify a custom root data directory for lighthouse keys and databases. Defaults to $HOME/.lighthouse/{network} + where network is the value of the `network` flag Note: Users should specify separate custom datadirs for different + networks. --debug-level - Specifies the verbosity level used when emitting logs to the terminal. [default: info] - [possible values: info, debug, trace, warn, error, crit] + Specifies the verbosity level used when emitting logs to the terminal. [default: info] [possible values: info, debug, + trace, warn, error, crit] --deposit-gwei - The GWEI value of the deposit amount. Defaults to the minimum amount required for an - active validator (MAX_EFFECTIVE_BALANCE) + The GWEI value of the deposit amount. Defaults to the minimum amount required for an active validator + (MAX_EFFECTIVE_BALANCE) --eth1-withdrawal-address - If this field is set, the given eth1 address will be used to create the withdrawal - credentials. Otherwise, it will generate withdrawal credentials with the mnemonic-derived - withdrawal public key in EIP-2334 format. + If this field is set, the given eth1 address will be used to create the withdrawal credentials. Otherwise, it will + generate withdrawal credentials with the mnemonic-derived withdrawal public key in EIP-2334 format. --first-index The first of consecutive key indexes you wish to create. [default: 0] --gas-limit - All created validators will use this gas limit. It is recommended to leave this as the - default value by not specifying this flag. + All created validators will use this gas limit. It is recommended to leave this as the default value by not specifying + this flag. --genesis-state-url - A URL of a beacon-API compatible server from which to download the genesis state. - Checkpoint sync server URLs can generally be used with this flag. If not supplied, a - default URL or the --checkpoint-sync-url may be used. If the genesis state is already - included in this binary then this value will be ignored. + A URL of a beacon-API compatible server from which to download the genesis state. Checkpoint sync server URLs can + generally be used with this flag. If not supplied, a default URL or the --checkpoint-sync-url may be used. If the genesis + state is already included in this binary then this value will be ignored. --genesis-state-url-timeout The timeout in seconds for the request to --genesis-state-url. [default: 180] --log-format Specifies the log format used when emitting logs to the terminal. [possible values: JSON] --logfile - File path where the log file will be stored. Once it grows to the value specified in - `--logfile-max-size` a new log file is generated where future logs are stored. Once the - number of log files exceeds the value specified in `--logfile-max-number` the oldest log - file will be overwritten. + File path where the log file will be stored. Once it grows to the value specified in `--logfile-max-size` a new log file + is generated where future logs are stored. Once the number of log files exceeds the value specified in + `--logfile-max-number` the oldest log file will be overwritten. --logfile-debug-level - The verbosity level used when emitting logs to the log file. [default: debug] [possible - values: info, debug, trace, warn, error, crit] + The verbosity level used when emitting logs to the log file. [default: debug] [possible values: info, debug, trace, warn, + error, crit] --logfile-format - Specifies the log format used when emitting logs to the logfile. [possible values: - DEFAULT, JSON] + Specifies the log format used when emitting logs to the logfile. [possible values: DEFAULT, JSON] --logfile-max-number - The maximum number of log files that will be stored. If set to 0, background file logging - is disabled. [default: 5] + The maximum number of log files that will be stored. If set to 0, background file logging is disabled. [default: 5] --logfile-max-size - The maximum size (in MB) each log file can grow to before rotating. If set to 0, - background file logging is disabled. [default: 200] + The maximum size (in MB) each log file can grow to before rotating. If set to 0, background file logging is disabled. + [default: 200] --mnemonic-path If present, the mnemonic will be read in from this file. --network - Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, - goerli, gnosis, chiado, sepolia, holesky] + Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, goerli, gnosis, chiado, + sepolia, holesky] --output-path - The path to a directory where the validator and (optionally) deposits files will be - created. The directory will be created if it does not exist. + The path to a directory where the validator and (optionally) deposits files will be created. The directory will be + created if it does not exist. --prefer-builder-proposals - If this flag is set, Lighthouse will always prefer blocks constructed by builders, - regardless of payload value. [possible values: true, false] + If this flag is set, Lighthouse will always prefer blocks constructed by builders, regardless of payload value. [possible + values: true, false] --safe-slots-to-import-optimistically - Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. - This flag should only be used if the user has a clear understanding that the broad - Ethereum community has elected to override this parameter in the event of an attack at the - PoS transition block. Incorrect use of this flag can cause your node to possibly accept an + Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. This flag should only be used + if the user has a clear understanding that the broad Ethereum community has elected to override this parameter in the + event of an attack at the PoS transition block. Incorrect use of this flag can cause your node to possibly accept an invalid chain or sync more slowly. Be extremely careful with this flag. --suggested-fee-recipient - All created validators will use this value for the suggested fee recipient. Omit this flag - to use the default value from the VC. + All created validators will use this value for the suggested fee recipient. Omit this flag to use the default value from + the VC. -t, --testnet-dir - Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse - testnet. Only effective if there is no existing database. + Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse testnet. Only effective if there is + no existing database. --terminal-block-hash-epoch-override - Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. - This flag should only be used if the user has a clear understanding that the broad - Ethereum community has elected to override the terminal PoW block. Incorrect use of this - flag will cause your node to experience a consensus failure. Be extremely careful with - this flag. + Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. This flag should only be used + if the user has a clear understanding that the broad Ethereum community has elected to override the terminal PoW block. + Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely careful with this flag. --terminal-block-hash-override - Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should - only be used if the user has a clear understanding that the broad Ethereum community has - elected to override the terminal PoW block. Incorrect use of this flag will cause your - node to experience a consensus failure. Be extremely careful with this flag. + Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should only be used if the user has a + clear understanding that the broad Ethereum community has elected to override the terminal PoW block. Incorrect use of + this flag will cause your node to experience a consensus failure. Be extremely careful with this flag. --terminal-total-difficulty-override - Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a - 256-bit decimal integer (not a hex value). This flag should only be used if the user has a - clear understanding that the broad Ethereum community has elected to override the terminal - difficulty. Incorrect use of this flag will cause your node to experience a consensus + Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a 256-bit decimal integer (not a + hex value). This flag should only be used if the user has a clear understanding that the broad Ethereum community has + elected to override the terminal difficulty. Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely careful with this flag. -h, --help Print help Flags: - --disable-deposits - When provided don't generate the deposits JSON file that is commonly used for submitting - validator deposits via a web UI. Using this flag will save several seconds per validator - if the user has an alternate strategy for submitting deposits. - --disable-log-timestamp - If present, do not include timestamps in logging output. - --disable-malloc-tuning - If present, do not configure the system allocator. Providing this flag will generally - increase memory usage, it should only be provided when debugging specific memory - allocation issues. - --force-bls-withdrawal-credentials - If present, allows BLS withdrawal credentials rather than an execution address. This is - not recommended. - --log-color - Force outputting colors when emitting logs to the terminal. - --logfile-compress - If present, compress old log files. This can help reduce the space needed to store old - logs. - --logfile-no-restricted-perms - If present, log files will be generated as world-readable meaning they can be read by any - user on the machine. Note that logs can often contain sensitive information about your - validator and so this flag should be used with caution. For Windows users, the log file - permissions will be inherited from the parent folder. - --specify-voting-keystore-password - If present, the user will be prompted to enter the voting keystore password that will be - used to encrypt the voting keystores. If this flag is not provided, a random password will - be used. It is not necessary to keep backups of voting keystore passwords if the mnemonic - is safely backed up. - --stdin-inputs - If present, read all user inputs from stdin instead of tty. + --disable-deposits When provided don't generate the deposits JSON file that is commonly used for submitting + validator deposits via a web UI. Using this flag will save several seconds per validator + if the user has an alternate strategy for submitting deposits. + --disable-log-timestamp If present, do not include timestamps in logging output. + --disable-malloc-tuning If present, do not configure the system allocator. Providing this flag will generally + increase memory usage, it should only be provided when debugging specific memory + allocation issues. + --force-bls-withdrawal-credentials If present, allows BLS withdrawal credentials rather than an execution address. This is + not recommended. + --log-color Force outputting colors when emitting logs to the terminal. + --logfile-compress If present, compress old log files. This can help reduce the space needed to store old + logs. + --logfile-no-restricted-perms If present, log files will be generated as world-readable meaning they can be read by any + user on the machine. Note that logs can often contain sensitive information about your + validator and so this flag should be used with caution. For Windows users, the log file + permissions will be inherited from the parent folder. + --specify-voting-keystore-password If present, the user will be prompted to enter the voting keystore password that will be + used to encrypt the voting keystores. If this flag is not provided, a random password + will be used. It is not necessary to keep backups of voting keystore passwords if the + mnemonic is safely backed up. + --stdin-inputs If present, read all user inputs from stdin instead of tty. ``` diff --git a/book/src/help_vm_import.md b/book/src/help_vm_import.md index e011a86f547..c76ecbd1a76 100644 --- a/book/src/help_vm_import.md +++ b/book/src/help_vm_import.md @@ -1,106 +1,90 @@ # Validator Manager Import ``` -Uploads validators to a validator client using the HTTP API. The validators are defined in a JSON -file which can be generated using the "create-validators" command. +Uploads validators to a validator client using the HTTP API. The validators are defined in a JSON file which can be generated using +the "create-validators" command. Usage: lighthouse validator_manager import [OPTIONS] --validators-file Options: -d, --datadir - Used to specify a custom root data directory for lighthouse keys and databases. Defaults - to $HOME/.lighthouse/{network} where network is the value of the `network` flag Note: - Users should specify separate custom datadirs for different networks. + Used to specify a custom root data directory for lighthouse keys and databases. Defaults to $HOME/.lighthouse/{network} + where network is the value of the `network` flag Note: Users should specify separate custom datadirs for different + networks. --debug-level - Specifies the verbosity level used when emitting logs to the terminal. [default: info] - [possible values: info, debug, trace, warn, error, crit] + Specifies the verbosity level used when emitting logs to the terminal. [default: info] [possible values: info, debug, + trace, warn, error, crit] --genesis-state-url - A URL of a beacon-API compatible server from which to download the genesis state. - Checkpoint sync server URLs can generally be used with this flag. If not supplied, a - default URL or the --checkpoint-sync-url may be used. If the genesis state is already - included in this binary then this value will be ignored. + A URL of a beacon-API compatible server from which to download the genesis state. Checkpoint sync server URLs can + generally be used with this flag. If not supplied, a default URL or the --checkpoint-sync-url may be used. If the genesis + state is already included in this binary then this value will be ignored. --genesis-state-url-timeout The timeout in seconds for the request to --genesis-state-url. [default: 180] --log-format Specifies the log format used when emitting logs to the terminal. [possible values: JSON] --logfile - File path where the log file will be stored. Once it grows to the value specified in - `--logfile-max-size` a new log file is generated where future logs are stored. Once the - number of log files exceeds the value specified in `--logfile-max-number` the oldest log - file will be overwritten. + File path where the log file will be stored. Once it grows to the value specified in `--logfile-max-size` a new log file + is generated where future logs are stored. Once the number of log files exceeds the value specified in + `--logfile-max-number` the oldest log file will be overwritten. --logfile-debug-level - The verbosity level used when emitting logs to the log file. [default: debug] [possible - values: info, debug, trace, warn, error, crit] + The verbosity level used when emitting logs to the log file. [default: debug] [possible values: info, debug, trace, warn, + error, crit] --logfile-format - Specifies the log format used when emitting logs to the logfile. [possible values: - DEFAULT, JSON] + Specifies the log format used when emitting logs to the logfile. [possible values: DEFAULT, JSON] --logfile-max-number - The maximum number of log files that will be stored. If set to 0, background file logging - is disabled. [default: 5] + The maximum number of log files that will be stored. If set to 0, background file logging is disabled. [default: 5] --logfile-max-size - The maximum size (in MB) each log file can grow to before rotating. If set to 0, - background file logging is disabled. [default: 200] + The maximum size (in MB) each log file can grow to before rotating. If set to 0, background file logging is disabled. + [default: 200] --network - Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, - goerli, gnosis, chiado, sepolia, holesky] + Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, goerli, gnosis, chiado, + sepolia, holesky] --safe-slots-to-import-optimistically - Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. - This flag should only be used if the user has a clear understanding that the broad - Ethereum community has elected to override this parameter in the event of an attack at the - PoS transition block. Incorrect use of this flag can cause your node to possibly accept an + Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. This flag should only be used + if the user has a clear understanding that the broad Ethereum community has elected to override this parameter in the + event of an attack at the PoS transition block. Incorrect use of this flag can cause your node to possibly accept an invalid chain or sync more slowly. Be extremely careful with this flag. -t, --testnet-dir - Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse - testnet. Only effective if there is no existing database. + Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse testnet. Only effective if there is + no existing database. --terminal-block-hash-epoch-override - Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. - This flag should only be used if the user has a clear understanding that the broad - Ethereum community has elected to override the terminal PoW block. Incorrect use of this - flag will cause your node to experience a consensus failure. Be extremely careful with - this flag. + Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. This flag should only be used + if the user has a clear understanding that the broad Ethereum community has elected to override the terminal PoW block. + Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely careful with this flag. --terminal-block-hash-override - Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should - only be used if the user has a clear understanding that the broad Ethereum community has - elected to override the terminal PoW block. Incorrect use of this flag will cause your - node to experience a consensus failure. Be extremely careful with this flag. + Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should only be used if the user has a + clear understanding that the broad Ethereum community has elected to override the terminal PoW block. Incorrect use of + this flag will cause your node to experience a consensus failure. Be extremely careful with this flag. --terminal-total-difficulty-override - Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a - 256-bit decimal integer (not a hex value). This flag should only be used if the user has a - clear understanding that the broad Ethereum community has elected to override the terminal - difficulty. Incorrect use of this flag will cause your node to experience a consensus + Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a 256-bit decimal integer (not a + hex value). This flag should only be used if the user has a clear understanding that the broad Ethereum community has + elected to override the terminal difficulty. Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely careful with this flag. --validators-file - The path to a JSON file containing a list of validators to be imported to the validator - client. This file is usually named "validators.json". + The path to a JSON file containing a list of validators to be imported to the validator client. This file is usually + named "validators.json". --vc-token The file containing a token required by the validator client. --vc-url - A HTTP(S) address of a validator client using the keymanager-API. If this value is not - supplied then a 'dry run' will be conducted where no changes are made to the validator - client. [default: http://localhost:5062] + A HTTP(S) address of a validator client using the keymanager-API. If this value is not supplied then a 'dry run' will be + conducted where no changes are made to the validator client. [default: http://localhost:5062] -h, --help Print help Flags: --disable-log-timestamp If present, do not include timestamps in logging output. - --disable-malloc-tuning If present, do not configure the system allocator. Providing - this flag will generally increase memory usage, it should only - be provided when debugging specific memory allocation issues. - --ignore-duplicates If present, ignore any validators which already exist on the - VC. Without this flag, the process will terminate without - making any changes. This flag should be used with caution, - whilst it does not directly cause slashable conditions, it - might be an indicator that something is amiss. Users should - also be careful to avoid submitting duplicate deposits for + --disable-malloc-tuning If present, do not configure the system allocator. Providing this flag will generally increase + memory usage, it should only be provided when debugging specific memory allocation issues. + --ignore-duplicates If present, ignore any validators which already exist on the VC. Without this flag, the + process will terminate without making any changes. This flag should be used with caution, + whilst it does not directly cause slashable conditions, it might be an indicator that + something is amiss. Users should also be careful to avoid submitting duplicate deposits for validators that already exist on the VC. --log-color Force outputting colors when emitting logs to the terminal. - --logfile-compress If present, compress old log files. This can help reduce the - space needed to store old logs. - --logfile-no-restricted-perms If present, log files will be generated as world-readable - meaning they can be read by any user on the machine. Note that - logs can often contain sensitive information about your - validator and so this flag should be used with caution. For - Windows users, the log file permissions will be inherited from - the parent folder. + --logfile-compress If present, compress old log files. This can help reduce the space needed to store old logs. + --logfile-no-restricted-perms If present, log files will be generated as world-readable meaning they can be read by any user + on the machine. Note that logs can often contain sensitive information about your validator + and so this flag should be used with caution. For Windows users, the log file permissions will + be inherited from the parent folder. ``` diff --git a/book/src/help_vm_move.md b/book/src/help_vm_move.md index 244707a64a8..45b47284f20 100644 --- a/book/src/help_vm_move.md +++ b/book/src/help_vm_move.md @@ -1,124 +1,109 @@ # Validator Manager Move ``` -Uploads validators to a validator client using the HTTP API. The validators are defined in a JSON -file which can be generated using the "create-validators" command. This command only supports -validators signing via a keystore on the local file system (i.e., not Web3Signer validators). +Uploads validators to a validator client using the HTTP API. The validators are defined in a JSON file which can be generated using +the "create-validators" command. This command only supports validators signing via a keystore on the local file system (i.e., not +Web3Signer validators). Usage: lighthouse validator_manager move [OPTIONS] --src-vc-token --src-vc-url --dest-vc-token --dest-vc-url Options: --builder-boost-factor - Defines the boost factor, a percentage multiplier to apply to the builder's payload value - when choosing between a builder payload header and payload from the local execution node. + Defines the boost factor, a percentage multiplier to apply to the builder's payload value when choosing between a builder + payload header and payload from the local execution node. --builder-proposals - When provided, all created validators will attempt to create blocks via builder rather - than the local EL. [possible values: true, false] + When provided, all created validators will attempt to create blocks via builder rather than the local EL. [possible + values: true, false] --count The number of validators to move. -d, --datadir - Used to specify a custom root data directory for lighthouse keys and databases. Defaults - to $HOME/.lighthouse/{network} where network is the value of the `network` flag Note: - Users should specify separate custom datadirs for different networks. + Used to specify a custom root data directory for lighthouse keys and databases. Defaults to $HOME/.lighthouse/{network} + where network is the value of the `network` flag Note: Users should specify separate custom datadirs for different + networks. --debug-level - Specifies the verbosity level used when emitting logs to the terminal. [default: info] - [possible values: info, debug, trace, warn, error, crit] + Specifies the verbosity level used when emitting logs to the terminal. [default: info] [possible values: info, debug, + trace, warn, error, crit] --dest-vc-token The file containing a token required by the destination validator client. --dest-vc-url - A HTTP(S) address of a validator client using the keymanager-API. This validator client is - the "destination" and will have new validators added as they are removed from the "source" - validator client. + A HTTP(S) address of a validator client using the keymanager-API. This validator client is the "destination" and will + have new validators added as they are removed from the "source" validator client. --gas-limit - All created validators will use this gas limit. It is recommended to leave this as the - default value by not specifying this flag. + All created validators will use this gas limit. It is recommended to leave this as the default value by not specifying + this flag. --genesis-state-url - A URL of a beacon-API compatible server from which to download the genesis state. - Checkpoint sync server URLs can generally be used with this flag. If not supplied, a - default URL or the --checkpoint-sync-url may be used. If the genesis state is already - included in this binary then this value will be ignored. + A URL of a beacon-API compatible server from which to download the genesis state. Checkpoint sync server URLs can + generally be used with this flag. If not supplied, a default URL or the --checkpoint-sync-url may be used. If the genesis + state is already included in this binary then this value will be ignored. --genesis-state-url-timeout The timeout in seconds for the request to --genesis-state-url. [default: 180] --log-format Specifies the log format used when emitting logs to the terminal. [possible values: JSON] --logfile - File path where the log file will be stored. Once it grows to the value specified in - `--logfile-max-size` a new log file is generated where future logs are stored. Once the - number of log files exceeds the value specified in `--logfile-max-number` the oldest log - file will be overwritten. + File path where the log file will be stored. Once it grows to the value specified in `--logfile-max-size` a new log file + is generated where future logs are stored. Once the number of log files exceeds the value specified in + `--logfile-max-number` the oldest log file will be overwritten. --logfile-debug-level - The verbosity level used when emitting logs to the log file. [default: debug] [possible - values: info, debug, trace, warn, error, crit] + The verbosity level used when emitting logs to the log file. [default: debug] [possible values: info, debug, trace, warn, + error, crit] --logfile-format - Specifies the log format used when emitting logs to the logfile. [possible values: - DEFAULT, JSON] + Specifies the log format used when emitting logs to the logfile. [possible values: DEFAULT, JSON] --logfile-max-number - The maximum number of log files that will be stored. If set to 0, background file logging - is disabled. [default: 5] + The maximum number of log files that will be stored. If set to 0, background file logging is disabled. [default: 5] --logfile-max-size - The maximum size (in MB) each log file can grow to before rotating. If set to 0, - background file logging is disabled. [default: 200] + The maximum size (in MB) each log file can grow to before rotating. If set to 0, background file logging is disabled. + [default: 200] --network - Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, - goerli, gnosis, chiado, sepolia, holesky] + Name of the Eth2 chain Lighthouse will sync and follow. [possible values: mainnet, prater, goerli, gnosis, chiado, + sepolia, holesky] --prefer-builder-proposals - If this flag is set, Lighthouse will always prefer blocks constructed by builders, - regardless of payload value. [possible values: true, false] + If this flag is set, Lighthouse will always prefer blocks constructed by builders, regardless of payload value. [possible + values: true, false] --safe-slots-to-import-optimistically - Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. - This flag should only be used if the user has a clear understanding that the broad - Ethereum community has elected to override this parameter in the event of an attack at the - PoS transition block. Incorrect use of this flag can cause your node to possibly accept an + Used to coordinate manual overrides of the SAFE_SLOTS_TO_IMPORT_OPTIMISTICALLY parameter. This flag should only be used + if the user has a clear understanding that the broad Ethereum community has elected to override this parameter in the + event of an attack at the PoS transition block. Incorrect use of this flag can cause your node to possibly accept an invalid chain or sync more slowly. Be extremely careful with this flag. --src-vc-token The file containing a token required by the source validator client. --src-vc-url - A HTTP(S) address of a validator client using the keymanager-API. This validator client is - the "source" and contains the validators that are to be moved. + A HTTP(S) address of a validator client using the keymanager-API. This validator client is the "source" and contains the + validators that are to be moved. --stdin-inputs If present, read all user inputs from stdin instead of tty. --suggested-fee-recipient - All created validators will use this value for the suggested fee recipient. Omit this flag - to use the default value from the VC. + All created validators will use this value for the suggested fee recipient. Omit this flag to use the default value from + the VC. -t, --testnet-dir - Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse - testnet. Only effective if there is no existing database. + Path to directory containing eth2_testnet specs. Defaults to a hard-coded Lighthouse testnet. Only effective if there is + no existing database. --terminal-block-hash-epoch-override - Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. - This flag should only be used if the user has a clear understanding that the broad - Ethereum community has elected to override the terminal PoW block. Incorrect use of this - flag will cause your node to experience a consensus failure. Be extremely careful with - this flag. + Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH parameter. This flag should only be used + if the user has a clear understanding that the broad Ethereum community has elected to override the terminal PoW block. + Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely careful with this flag. --terminal-block-hash-override - Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should - only be used if the user has a clear understanding that the broad Ethereum community has - elected to override the terminal PoW block. Incorrect use of this flag will cause your - node to experience a consensus failure. Be extremely careful with this flag. + Used to coordinate manual overrides to the TERMINAL_BLOCK_HASH parameter. This flag should only be used if the user has a + clear understanding that the broad Ethereum community has elected to override the terminal PoW block. Incorrect use of + this flag will cause your node to experience a consensus failure. Be extremely careful with this flag. --terminal-total-difficulty-override - Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a - 256-bit decimal integer (not a hex value). This flag should only be used if the user has a - clear understanding that the broad Ethereum community has elected to override the terminal - difficulty. Incorrect use of this flag will cause your node to experience a consensus + Used to coordinate manual overrides to the TERMINAL_TOTAL_DIFFICULTY parameter. Accepts a 256-bit decimal integer (not a + hex value). This flag should only be used if the user has a clear understanding that the broad Ethereum community has + elected to override the terminal difficulty. Incorrect use of this flag will cause your node to experience a consensus failure. Be extremely careful with this flag. --validators - The validators to be moved. Either a list of 0x-prefixed validator pubkeys or the keyword - "all". + The validators to be moved. Either a list of 0x-prefixed validator pubkeys or the keyword "all". -h, --help Print help Flags: --disable-log-timestamp If present, do not include timestamps in logging output. - --disable-malloc-tuning If present, do not configure the system allocator. Providing - this flag will generally increase memory usage, it should only - be provided when debugging specific memory allocation issues. + --disable-malloc-tuning If present, do not configure the system allocator. Providing this flag will generally increase + memory usage, it should only be provided when debugging specific memory allocation issues. --log-color Force outputting colors when emitting logs to the terminal. - --logfile-compress If present, compress old log files. This can help reduce the - space needed to store old logs. - --logfile-no-restricted-perms If present, log files will be generated as world-readable - meaning they can be read by any user on the machine. Note that - logs can often contain sensitive information about your - validator and so this flag should be used with caution. For - Windows users, the log file permissions will be inherited from - the parent folder. + --logfile-compress If present, compress old log files. This can help reduce the space needed to store old logs. + --logfile-no-restricted-perms If present, log files will be generated as world-readable meaning they can be read by any user + on the machine. Note that logs can often contain sensitive information about your validator + and so this flag should be used with caution. For Windows users, the log file permissions will + be inherited from the parent folder. ```