2022-06-15 13:03:58 +00:00
|
|
|
---
|
|
|
|
# Go-Ethereum
|
2024-01-16 13:46:53 +00:00
|
|
|
geth_service_name: 'geth-sepolia-{{ node.branch }}'
|
2022-06-15 13:03:58 +00:00
|
|
|
geth_network_name: 'sepolia'
|
2024-07-30 05:22:47 +00:00
|
|
|
geth_service_path: '/docker/{{ geth_service_name }}'
|
|
|
|
geth_cont_name: '{{ geth_service_name }}-node'
|
|
|
|
geth_cont_vol: '{{ geth_service_path }}/node'
|
2022-06-15 13:03:58 +00:00
|
|
|
geth_sync_mode: 'full'
|
|
|
|
geth_log_level_name: info
|
2022-08-11 17:23:41 +00:00
|
|
|
# Geth auth & JWT token
|
2024-11-04 07:45:14 +00:00
|
|
|
geth_account_pass: '{{lookup("vault", "geth", field="password", stage="all")}}'
|
|
|
|
geth_authrpc_jwtsecret: '{{lookup("vault", "engine-api", field="jwt-token", stage="all")}}'
|
2022-06-15 13:03:58 +00:00
|
|
|
# Memory settings
|
|
|
|
geth_cont_mem_ratio: 0.3
|
|
|
|
# Genesis
|
|
|
|
geth_init_enabled: false
|
|
|
|
# Ports
|
|
|
|
geth_rpc_enabled: true
|
|
|
|
geth_rpc_addr: '0.0.0.0'
|
2022-08-11 17:23:41 +00:00
|
|
|
geth_authrpc_addr: '0.0.0.0'
|
2022-06-15 13:03:58 +00:00
|
|
|
geth_websocket_enabled: true
|
|
|
|
geth_websocket_addr: '0.0.0.0'
|
2024-01-16 13:46:53 +00:00
|
|
|
geth_port: '{{ 30303 + idx|int + 11 }}'
|
|
|
|
geth_metrics_port: '{{ 6060 + idx|int + 11 }}'
|
|
|
|
geth_rpc_port: '{{ 8545 + idx|int + 11 }}'
|
|
|
|
geth_authrpc_port: '{{ 8551 + idx|int + 11 }}'
|
|
|
|
geth_websocket_port: '{{ 9546 + idx|int + 11 }}'
|
2024-09-17 15:42:55 +00:00
|
|
|
# Parameter for waku RLN keystore generation
|
|
|
|
geth_extra_flags: '{{ ["--rpc.allow-unprotected-txs"] if idx == 0 }}'
|
2024-01-16 13:46:53 +00:00
|
|
|
|
|
|
|
# We map short names to branches to avoid too long service names.
|
|
|
|
node_name_to_branch_map:
|
|
|
|
libp2p: 'nim-libp2p-auto-bump-unstable'
|
2022-06-15 13:03:58 +00:00
|
|
|
|
2022-06-17 09:55:18 +00:00
|
|
|
# Beacon Nodes
|
2024-01-16 13:46:53 +00:00
|
|
|
beacon_node_service_name: 'beacon-node-{{ beacon_node_network }}-{{ node.branch }}'
|
2022-06-17 09:55:18 +00:00
|
|
|
beacon_node_network: 'sepolia'
|
2023-09-29 15:48:02 +00:00
|
|
|
beacon_node_era_dir_path: '{{ nimbus_era_files_timer_path }}'
|
2024-01-16 13:46:53 +00:00
|
|
|
beacon_node_repo_branch: '{{ node_name_to_branch_map.get(node.branch, node.branch) }}'
|
2024-09-17 15:42:55 +00:00
|
|
|
beacon_node_xtra_flags: '{{ node.extra_flags if node.extra_flags is defined else {} }}'
|
2022-08-23 13:29:40 +00:00
|
|
|
beacon_node_payload_builder_enabled: '{{ node.get("payload_builder", false) }}'
|
2024-01-30 09:19:46 +00:00
|
|
|
beacon_node_payload_builder_url: 'https://boost-relay-sepolia.flashbots.net/ '
|
2024-05-28 08:28:29 +00:00
|
|
|
# Updates
|
2024-06-11 06:16:54 +00:00
|
|
|
beacon_node_update_frequency: '*-*-* {{ "%02d" | format(idx * 2) }}:00:00'
|
2024-05-28 08:28:29 +00:00
|
|
|
beacon_node_update_build_nim_flags: '-d:noSignalHandler {{ node.get("nim_flags", "") }}'
|
|
|
|
beacon_node_update_build_targets: ['nimbus_beacon_node', 'ncli_db']
|
2022-06-17 09:55:18 +00:00
|
|
|
# Monitoring
|
|
|
|
beacon_node_validator_monitor_auto: true
|
2023-06-07 16:12:59 +00:00
|
|
|
beacon_node_validator_monitor_details: true
|
2023-03-15 23:46:17 +00:00
|
|
|
# Execution layer Enginer API
|
|
|
|
beacon_node_exec_layer_urls: ['http://localhost:{{ geth_authrpc_port }}']
|
|
|
|
beacon_node_exec_layer_jwt_secret: '{{ geth_authrpc_jwtsecret | mandatory }}'
|
2022-09-14 15:02:50 +00:00
|
|
|
# Suggests it to the Execution Layer client.
|
2024-11-04 07:45:14 +00:00
|
|
|
beacon_node_suggested_fee_recipient: '{{lookup("vault", "testnet-wallet", field="address", stage="all")}}'
|
2022-06-17 09:55:18 +00:00
|
|
|
# Validators from nimbus-private repo¬
|
|
|
|
beacon_node_dist_validators_enabled: '{{ node.start is defined and node.end is defined }}'
|
2024-05-09 14:50:28 +00:00
|
|
|
beacon_node_dist_validators_start: '{{ node.vc | ternary(0, node.start) | mandatory }}'
|
|
|
|
beacon_node_dist_validators_end: '{{ node.vc | ternary(0, node.end) | mandatory }}'
|
2022-06-17 09:55:18 +00:00
|
|
|
# Ports
|
2024-05-09 14:50:28 +00:00
|
|
|
beacon_node_rest_port_base: 9300
|
2022-06-17 09:55:18 +00:00
|
|
|
beacon_node_discovery_port: '{{ 9000 + idx|int + 11 }}'
|
|
|
|
beacon_node_listening_port: '{{ 9000 + idx|int + 11 }}'
|
|
|
|
beacon_node_metrics_port: '{{ 9200 + idx|int + 11 }}'
|
2024-05-09 14:50:28 +00:00
|
|
|
beacon_node_rest_port: '{{ beacon_node_rest_port_base + idx|int + 11 }}'
|
2022-06-17 09:55:18 +00:00
|
|
|
beacon_node_rest_address: '0.0.0.0'
|
2024-04-23 10:49:42 +00:00
|
|
|
# Reduce Consul alerts sensitivity
|
2024-06-14 17:18:49 +00:00
|
|
|
beacon_node_consul_check_disabled: '{{ node.get("public_api", false) }}'
|
2024-04-23 10:49:42 +00:00
|
|
|
beacon_node_consul_check_interval: '60s'
|
|
|
|
beacon_node_consul_check_timeout: '10s'
|
|
|
|
beacon_node_consul_success_before_passing: 60 # 1h
|
|
|
|
beacon_node_consul_failures_before_warning: 360 # 6h
|
|
|
|
beacon_node_consul_failures_before_critical: 720 # 12h
|
2022-06-17 09:55:18 +00:00
|
|
|
|
2022-09-27 23:56:45 +00:00
|
|
|
# Validator Client
|
2024-01-16 13:46:53 +00:00
|
|
|
validator_client_service_name: 'validator-client-{{ validator_client_network }}-{{ node.branch }}'
|
2024-05-09 14:50:28 +00:00
|
|
|
validator_client_service_enabled: '{{ node.vc }}'
|
2022-09-27 23:56:45 +00:00
|
|
|
validator_client_network: '{{ beacon_node_network }}'
|
|
|
|
validator_client_log_level: 'INFO'
|
|
|
|
validator_client_beacon_node_url: 'http://127.0.0.1:{{ beacon_node_rest_port }}'
|
|
|
|
# Builds
|
|
|
|
validator_client_build_repo_branch: '{{ beacon_node_repo_branch }}'
|
|
|
|
validator_client_build_frequency: 'daily'
|
|
|
|
# Ports
|
|
|
|
validator_client_metrics_port: '{{ 8108 + idx|int + 1 }}'
|
|
|
|
validator_client_keymanager_port: '{{ 5052 + idx|int + 1 }}'
|
2024-07-30 05:22:47 +00:00
|
|
|
|
|
|
|
# Geth metrics¬
|
|
|
|
geth_expo_service_name: '{{ geth_service_name }}'
|
|
|
|
geth_expo_source_cont_name: '{{ geth_cont_name }}'
|
|
|
|
geth_expo_source_data_path: '{{ geth_cont_vol }}/data'
|
|
|
|
geth_expo_cont_port: '{{ 9400 + (idx|int) + 1 }}'
|
|
|
|
|
2022-11-30 08:25:24 +00:00
|
|
|
# Suggests it to the Execution Layer client and the builder network.
|
2024-11-04 07:45:14 +00:00
|
|
|
validator_client_suggested_fee_recipient: '{{lookup("vault", "testnet-wallet", field="address", stage="all")}}'
|
2022-11-24 12:50:43 +00:00
|
|
|
# MEV Payload Builder
|
|
|
|
validator_client_payload_builder_enabled: '{{ node.get("payload_builder", false) }}'
|
2022-09-27 23:56:45 +00:00
|
|
|
# Keymanager
|
|
|
|
validator_client_keymanager_enabled: true
|
2024-11-04 07:45:14 +00:00
|
|
|
validator_client_keymanager_token: '{{lookup("vault", "validator-client", field="keymanager-token", stage="all")}}'
|
2022-09-27 23:56:45 +00:00
|
|
|
# Validators Distribution
|
|
|
|
validator_client_dist_validators_enabled: '{{ node.start is defined and node.end is defined }}'
|
2024-05-09 14:50:28 +00:00
|
|
|
validator_client_dist_validators_start: '{{ (not node.vc) | ternary(0, node.start) | mandatory }}'
|
|
|
|
validator_client_dist_validators_end: '{{ (not node.vc) | ternary(0, node.end) | mandatory }}'
|
2022-09-27 23:56:45 +00:00
|
|
|
|
2023-09-29 15:48:02 +00:00
|
|
|
# ERA files geneartion.
|
2024-09-16 06:10:36 +00:00
|
|
|
nimbus_era_files_timer_enabled: '{{ (nodes_layout[inventory_hostname]|length) > 1 }}'
|
2023-09-29 15:48:02 +00:00
|
|
|
nimbus_era_files_timer_path: '/data/era'
|
|
|
|
nimbus_era_files_network: '{{ beacon_node_network }}'
|
2024-05-28 08:28:29 +00:00
|
|
|
nimbus_era_files_db_path: '/data/beacon-node-{{ beacon_node_network }}-unstable/data/db'
|
|
|
|
nimbus_era_files_nclidb_path: '/data/beacon-node-{{ beacon_node_network }}-unstable/repo/build/ncli_db'
|
2023-09-29 15:48:02 +00:00
|
|
|
|
2024-09-18 14:06:00 +00:00
|
|
|
# Migrated to NFTables from IPTables.
|
|
|
|
# https://github.com/status-im/infra-misc/issues/301
|
|
|
|
bootstrap__firewall_nftables: true
|
|
|
|
|
2023-05-17 16:08:22 +00:00
|
|
|
# Open Ports
|
|
|
|
open_ports_list:
|
2024-09-18 14:06:00 +00:00
|
|
|
nginx:
|
2024-09-18 15:59:20 +00:00
|
|
|
- { port: 443, comment: 'Nginx' }
|
2024-09-18 14:06:00 +00:00
|
|
|
smart-metrics:
|
2024-10-18 08:18:39 +00:00
|
|
|
- { port: '{{ smart_metrics_listen_port }}', comment: 'SMART Metrics', ipset: 'hq.metrics', iifname: 'wg0' }
|
2024-09-18 14:06:00 +00:00
|
|
|
geth-node:
|
2024-09-18 14:41:20 +00:00
|
|
|
- { port: '30314-30317', comment: 'Go-Ethereum libp2p', protocol: 'tcp' }
|
|
|
|
- { port: '30314-30317', comment: 'Go-Ethereum discovery', protocol: 'udp' }
|
2024-10-18 08:18:39 +00:00
|
|
|
- { port: '9400-9404', comment: 'Geth Exporter', ipset: 'hq.metrics', iifname: 'wg0' }
|
2024-11-08 09:59:21 +00:00
|
|
|
- { port: '6071-6074', comment: 'Geth Metrics', ipset: 'hq.metrics', iifname: 'wg0' }
|
2024-09-18 14:41:20 +00:00
|
|
|
beacon-node:
|
|
|
|
- { port: '9011-9014', comment: 'Beacon Node libp2p', protocol: 'tcp' }
|
|
|
|
- { port: '9011-9014', comment: 'Beacon Node discovery', protocol: 'udp' }
|
2024-10-18 08:18:39 +00:00
|
|
|
- { port: '9211-9214', comment: 'Beacon Node Metrics', ipset: 'hq.metrics', iifname: 'wg0' }
|
2024-09-18 14:41:20 +00:00
|
|
|
- { port: '9311-9314', comment: 'Beacon Node REST API', ipset: '{{ env }}.{{ stage }}', iifname: 'wg0' }
|
2024-09-18 14:06:00 +00:00
|
|
|
validator-client:
|
2024-09-18 14:41:20 +00:00
|
|
|
- { port: '5053-5057', comment: 'Validator Client REST API', ipset: '{{ env }}.{{ stage }}', iifname: 'wg0' }
|
2024-10-18 08:18:39 +00:00
|
|
|
- { port: '8109-8113', comment: 'Validator Client Metrics', ipset: 'hq.metrics', iifname: 'wg0' }
|
2024-09-18 14:41:20 +00:00
|
|
|
waku-fleets: # https://github.com/status-im/infra-nim-waku/issues/59
|
|
|
|
- { port: '8556-8559', comment: 'RCP for WakuMonitor', ipset: 'waku-nmon.misc', iifname: 'wg0' }
|
|
|
|
- { port: '8556-8559', comment: 'RCP for waku.test', ipset: 'waku.test', iifname: 'wg0' }
|
|
|
|
- { port: '8556-8559', comment: 'RCP for waku.sandbox', ipset: 'waku.sandbox', iifname: 'wg0' }
|
|
|
|
- { port: '9557-9560', comment: 'Websocket for Waku', ipset: 'waku.test', iifname: 'wg0' }
|
|
|
|
- { port: '9557-9560', comment: 'Websocket for Waku', ipset: 'waku.sandbox', iifname: 'wg0' }
|