nimbus.holesky: add Geth hosts for MacOS and Windows

No Windows host with beacon nodes currently.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
This commit is contained in:
Jakub Sokołowski 2024-03-21 16:53:36 +01:00
parent ffa5a84ad3
commit 10ff179299
No known key found for this signature in database
GPG Key ID: FE65CD384D5BF7B4
9 changed files with 100 additions and 12 deletions

View File

@ -22,8 +22,9 @@
- name: Deploy prater Geth nodes for Windows - name: Deploy prater Geth nodes for Windows
become: true become: true
serial: '{{ serial|default(1) }}' serial: '{{ serial|default(1) }}'
vars_files: layout/holesky.yml
hosts: hosts:
- nimbus-geth-goerli - nimbus-geth-holesky
roles: roles:
- { role: infra-role-open-ports, tags: open-ports } - { role: infra-role-open-ports, tags: open-ports }
- { role: infra-role-smart-metrics, tags: smart-metrics } - { role: infra-role-smart-metrics, tags: smart-metrics }

View File

@ -0,0 +1,40 @@
---
# Syncing can use a lot of mamory
swap_file_size_mb: 4096
# Geth node
geth_service_name: 'geth-{{ geth_network_name }}-{{ "%02d"|format(idx|int+1) }}'
geth_service_path: '/docker/{{ geth_service_name }}'
geth_cont_name: '{{ geth_service_name }}-node'
geth_cont_vol: '{{ geth_service_path }}/node'
geth_network_name: 'holesky'
geth_sync_mode: 'full'
geth_log_level_name: info
geth_consul_advertised_address: '{{ hostname }}.wg'
# Geth auth & JWT token
geth_account_pass: '{{lookup("bitwarden", "nimbus/geth", field="password")}}'
geth_authrpc_jwtsecret: '{{lookup("bitwarden", "nimbus/jwt-token")}}'
# Memory settings
geth_cont_mem_ratio: 0.8
geth_cache_size: '{{ (ansible_memtotal_mb * 0.25|float) | int }}'
# Ports
geth_port: '{{ 30303 + (idx|int) + 1 }}'
geth_rpc_port: '{{ 8545 + (idx|int) + 1 }}'
geth_metrics_port: '{{ 6060 + (idx|int) + 1 }}'
geth_websocket_port: '{{ 9546 + (idx|int) + 1 }}'
geth_authrpc_port: '{{ 8551 + (idx|int) + 1 }}'
geth_authrpc_addr: '0.0.0.0'
# 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 }}'
# Open Ports
open_ports_default_comment: 'Geth API'
open_ports_default_chain: 'VPN'
open_ports_list:
- { port: '9400:9404', ipset: 'metrics.hq', comment: 'Geth Metrics' }
- { port: '8551:8554', ipset: 'nimbus.holesky', comment: Geth }
- { port: '{{ smart_metrics_listen_port }}', ipset: 'metrics.hq', comment: 'SMART Metrics' }

View File

@ -9,10 +9,13 @@
- local_action: command ./versioncheck.py - local_action: command ./versioncheck.py
changed_when: false changed_when: false
- name: Deploy Holesky Beacon Nodes - name: Deploy Holesky Linux Beacon Nodes
become: true become: true
serial: '{{ serial|default(1) }}' serial: '{{ serial|default(1) }}'
hosts: nimbus.holesky hosts:
- nimbus-holesky-geth
- nimbus-holesky-erigon
- nimbus-holesky-neth
vars_files: layout/holesky.yml vars_files: layout/holesky.yml
roles: roles:
- role: update-netplan - role: update-netplan
@ -22,3 +25,14 @@
- include_role: name=infra-role-beacon-node-linux - include_role: name=infra-role-beacon-node-linux
with_items: '{{ nodes_layout[hostname] }}' with_items: '{{ nodes_layout[hostname] }}'
loop_control: { loop_var: node, index_var: idx } loop_control: { loop_var: node, index_var: idx }
- name: Deploy Holesky MacOS Beacon Nodes
become: true
serial: '{{ serial|default(1) }}'
hosts:
- nimbus-holesky-macm2
vars_files: layout/holesky.yml
tasks:
- include_role: name=infra-role-beacon-node-macos
with_items: '{{ nodes_layout[hostname] }}'
loop_control: { loop_var: node, index_var: idx }

View File

@ -0,0 +1,2 @@
---
beacon_node_exec_layer_urls: ['http://holesky-01.ih-eu-mda1.nimbus.geth.wg:{{ 8551 + (idx|int) }}']

View File

@ -23,6 +23,8 @@ geth-07.ih-eu-mda1.nimbus.holesky hostname=geth-07.ih-eu-mda1.nimbus.holesky ans
geth-08.ih-eu-mda1.nimbus.holesky hostname=geth-08.ih-eu-mda1.nimbus.holesky ansible_host=194.33.40.140 env=nimbus stage=holesky data_center=ih-eu-mda1 region=eu-mda1 dns_entry=geth-08.ih-eu-mda1.nimbus.holesky.status.im geth-08.ih-eu-mda1.nimbus.holesky hostname=geth-08.ih-eu-mda1.nimbus.holesky ansible_host=194.33.40.140 env=nimbus stage=holesky data_center=ih-eu-mda1 region=eu-mda1 dns_entry=geth-08.ih-eu-mda1.nimbus.holesky.status.im
geth-09.ih-eu-mda1.nimbus.holesky hostname=geth-09.ih-eu-mda1.nimbus.holesky ansible_host=194.33.40.141 env=nimbus stage=holesky data_center=ih-eu-mda1 region=eu-mda1 dns_entry=geth-09.ih-eu-mda1.nimbus.holesky.status.im geth-09.ih-eu-mda1.nimbus.holesky hostname=geth-09.ih-eu-mda1.nimbus.holesky ansible_host=194.33.40.141 env=nimbus stage=holesky data_center=ih-eu-mda1 region=eu-mda1 dns_entry=geth-09.ih-eu-mda1.nimbus.holesky.status.im
geth-10.ih-eu-mda1.nimbus.holesky hostname=geth-10.ih-eu-mda1.nimbus.holesky ansible_host=194.33.40.147 env=nimbus stage=holesky data_center=ih-eu-mda1 region=eu-mda1 dns_entry=geth-10.ih-eu-mda1.nimbus.holesky.status.im geth-10.ih-eu-mda1.nimbus.holesky hostname=geth-10.ih-eu-mda1.nimbus.holesky ansible_host=194.33.40.147 env=nimbus stage=holesky data_center=ih-eu-mda1 region=eu-mda1 dns_entry=geth-10.ih-eu-mda1.nimbus.holesky.status.im
holesky-01.ih-eu-mda1.nimbus.geth hostname=holesky-01.ih-eu-mda1.nimbus.geth ansible_host=194.33.40.232 env=nimbus stage=geth data_center=ih-eu-mda1 region=eu-mda1 dns_entry=holesky-01.ih-eu-mda1.nimbus.geth.status.im
holesky-02.ih-eu-mda1.nimbus.geth hostname=holesky-02.ih-eu-mda1.nimbus.geth ansible_host=194.33.40.233 env=nimbus stage=geth data_center=ih-eu-mda1 region=eu-mda1 dns_entry=holesky-02.ih-eu-mda1.nimbus.geth.status.im
linux-01.ih-eu-mda1.nimbus.mainnet hostname=linux-01.ih-eu-mda1.nimbus.mainnet ansible_host=194.33.40.70 env=nimbus stage=mainnet data_center=ih-eu-mda1 region=eu-mda1 dns_entry=linux-01.ih-eu-mda1.nimbus.mainnet.status.im linux-01.ih-eu-mda1.nimbus.mainnet hostname=linux-01.ih-eu-mda1.nimbus.mainnet ansible_host=194.33.40.70 env=nimbus stage=mainnet data_center=ih-eu-mda1 region=eu-mda1 dns_entry=linux-01.ih-eu-mda1.nimbus.mainnet.status.im
linux-01.ih-eu-mda1.nimbus.prater hostname=linux-01.ih-eu-mda1.nimbus.prater ansible_host=185.181.230.78 env=nimbus stage=prater data_center=ih-eu-mda1 region=eu-mda1 dns_entry=linux-01.ih-eu-mda1.nimbus.prater.status.im linux-01.ih-eu-mda1.nimbus.prater hostname=linux-01.ih-eu-mda1.nimbus.prater ansible_host=185.181.230.78 env=nimbus stage=prater data_center=ih-eu-mda1 region=eu-mda1 dns_entry=linux-01.ih-eu-mda1.nimbus.prater.status.im
linux-01.ih-eu-mda1.nimbus.sepolia hostname=linux-01.ih-eu-mda1.nimbus.sepolia ansible_host=185.181.230.77 env=nimbus stage=sepolia data_center=ih-eu-mda1 region=eu-mda1 dns_entry=linux-01.ih-eu-mda1.nimbus.sepolia.status.im linux-01.ih-eu-mda1.nimbus.sepolia hostname=linux-01.ih-eu-mda1.nimbus.sepolia ansible_host=185.181.230.77 env=nimbus stage=sepolia data_center=ih-eu-mda1 region=eu-mda1 dns_entry=linux-01.ih-eu-mda1.nimbus.sepolia.status.im
@ -88,6 +90,8 @@ geth-07.ih-eu-mda1.nimbus.holesky
geth-08.ih-eu-mda1.nimbus.holesky geth-08.ih-eu-mda1.nimbus.holesky
geth-09.ih-eu-mda1.nimbus.holesky geth-09.ih-eu-mda1.nimbus.holesky
geth-10.ih-eu-mda1.nimbus.holesky geth-10.ih-eu-mda1.nimbus.holesky
holesky-01.ih-eu-mda1.nimbus.geth
holesky-02.ih-eu-mda1.nimbus.geth
linux-01.ih-eu-mda1.nimbus.mainnet linux-01.ih-eu-mda1.nimbus.mainnet
linux-01.ih-eu-mda1.nimbus.prater linux-01.ih-eu-mda1.nimbus.prater
linux-01.ih-eu-mda1.nimbus.sepolia linux-01.ih-eu-mda1.nimbus.sepolia
@ -128,6 +132,10 @@ metal-01.ih-eu-mda1.nimbus.eth1
metal-01.ih-eu-mda1.nimbus.fluffy metal-01.ih-eu-mda1.nimbus.fluffy
metal-02.ih-eu-mda1.nimbus.fluffy metal-02.ih-eu-mda1.nimbus.fluffy
[nimbus-geth-holesky]
holesky-01.ih-eu-mda1.nimbus.geth
holesky-02.ih-eu-mda1.nimbus.geth
[nimbus-geth-mainnet] [nimbus-geth-mainnet]
mainnet-01.aws-eu-central-1a.nimbus.geth mainnet-01.aws-eu-central-1a.nimbus.geth
@ -198,6 +206,8 @@ metal-01.ih-eu-mda1.nimbus.fluffy
metal-02.ih-eu-mda1.nimbus.fluffy metal-02.ih-eu-mda1.nimbus.fluffy
[nimbus.geth] [nimbus.geth]
holesky-01.ih-eu-mda1.nimbus.geth
holesky-02.ih-eu-mda1.nimbus.geth
mainnet-01.aws-eu-central-1a.nimbus.geth mainnet-01.aws-eu-central-1a.nimbus.geth
[nimbus.holesky] [nimbus.holesky]

View File

@ -55,7 +55,7 @@
- name: infra-role-beacon-node-macos - name: infra-role-beacon-node-macos
src: git@github.com:status-im/infra-role-beacon-node-macos.git src: git@github.com:status-im/infra-role-beacon-node-macos.git
version: 18f11473e3196d2c8cac893988eb9cd0cd255fbc version: 8ec55d8e1b3284bf1bce68e2bb2144a0a8059152
scm: git scm: git
- name: infra-role-validator-client - name: infra-role-validator-client

View File

@ -185,7 +185,11 @@ nodes_layout:
- { branch: 'libp2p', start: 94000, end: 100000, el: 'nethermind', vc: false } - { branch: 'libp2p', start: 94000, end: 100000, el: 'nethermind', vc: false }
# MacOS -------------------------------------------------------------------------- # MacOS --------------------------------------------------------------------------
'macm2-01.ih-eu-mda1.nimbus.holesky': # 0 each (FIXME: No exec client.) 'macm2-01.ih-eu-mda1.nimbus.holesky': # 0 each
- { branch: 'stable', build_start: '13:00:00' } - { branch: 'stable', build_start: '13:00:00' }
- { branch: 'testing', build_start: '15:00:00' } - { branch: 'testing', build_start: '15:00:00' }
- { branch: 'unstable', build_start: '17:00:00' } - { branch: 'unstable', build_start: '17:00:00' }
# Geth ---------------------------------------------------------------------------
'holesky-01.ih-eu-mda1.nimbus.geth': [{}, {}, {}] # For MacOS nodes.
'holesky-02.ih-eu-mda1.nimbus.geth': [{}, {}, {}] # For Windows nodes. (TODO)

16
geth.tf
View File

@ -23,3 +23,19 @@ module "nimbus_geth_mainnet" {
secgroup_id = module.nimbus_network.secgroup.id secgroup_id = module.nimbus_network.secgroup.id
keypair_name = aws_key_pair.jakubgs.key_name keypair_name = aws_key_pair.jakubgs.key_name
} }
module "nimbus_geth_holesky" {
source = "github.com/status-im/infra-tf-dummy-module"
name = "holesky"
env = "nimbus"
stage = "geth"
group = "nimbus-geth-holesky"
region = "eu-mda1"
prefix = "ih"
ips = [
"194.33.40.232", # holesky-01.ih-eu-mda1.nimbus.geth
"194.33.40.233", # holesky-02.ih-eu-mda1.nimbus.geth
]
}

View File

@ -1,17 +1,18 @@
output "hosts" { output "hosts" {
value = merge( value = merge(
module.nimbus_dashboard.hosts, module.nimbus_dashboard.hosts,
module.nimbus_log_store.hosts,
module.nimbus_geth_mainnet.hosts,
module.nimbus_nodes_fluffy_innova.hosts,
module.nimbus_eth1_node_innova.hosts, module.nimbus_eth1_node_innova.hosts,
module.nimbus_geth_holesky.hosts,
module.nimbus_geth_mainnet.hosts,
module.nimbus_log_store.hosts,
module.nimbus_nodes_fluffy_innova.hosts,
module.nimbus_nodes_holesky_innova_erigon.hosts,
module.nimbus_nodes_holesky_innova_geth.hosts,
module.nimbus_nodes_holesky_innova_macm2.hosts,
module.nimbus_nodes_holesky_innova_neth.hosts,
module.nimbus_nodes_mainnet_innova.hosts, module.nimbus_nodes_mainnet_innova.hosts,
module.nimbus_nodes_mainnet_stable_small.hosts, module.nimbus_nodes_mainnet_stable_small.hosts,
module.nimbus_nodes_prater_innova.hosts, module.nimbus_nodes_prater_innova.hosts,
module.nimbus_nodes_sepolia_innova.hosts, module.nimbus_nodes_sepolia_innova.hosts,
module.nimbus_nodes_holesky_innova_geth.hosts,
module.nimbus_nodes_holesky_innova_erigon.hosts,
module.nimbus_nodes_holesky_innova_neth.hosts,
module.nimbus_nodes_holesky_innova_macm2.hosts,
) )
} }