diff --git a/ansible/inventories/devnet-0/group_vars/all/images.yaml b/ansible/inventories/devnet-0/group_vars/all/images.yaml index 1b30719..6e564ae 100644 --- a/ansible/inventories/devnet-0/group_vars/all/images.yaml +++ b/ansible/inventories/devnet-0/group_vars/all/images.yaml @@ -14,6 +14,7 @@ default_ethereum_client_images: nethermind: nethermindeth/nethermind:master reth: ghcr.io/paradigmxyz/reth:latest nimbusel: ethpandaops/nimbus-eth1:master + ethrex: ghcr.io/lambdaclass/ethrex:latest default_tooling_images: mev_boost: ethpandaops/mev-boost:develop diff --git a/ansible/inventories/devnet-0/group_vars/ethrex.yaml b/ansible/inventories/devnet-0/group_vars/ethrex.yaml new file mode 100644 index 0000000..f250ae7 --- /dev/null +++ b/ansible/inventories/devnet-0/group_vars/ethrex.yaml @@ -0,0 +1,80 @@ +# role: ethpandaops.general.bootstrap +bootstrap_default_user_authorized_keys_github_team_el: + - fmoletta + - JereSalo + - ilitteri + +# role: ethpandaops.general.ethereum_node +ethereum_node_el: ethrex +# role: ethpandaops.general.ethrex +ethrex_container_name: execution +ethrex_container_image: "{{ default_ethereum_client_images.ethrex }}" +ethrex_container_env: + VIRTUAL_HOST: "{{ ethereum_node_rcp_hostname }}" + VIRTUAL_PORT: "{{ ethereum_node_el_ports_http_rpc | string }}" + LETSENCRYPT_HOST: "{{ ethereum_node_rcp_hostname }}" + RUST_LOG: "info" +ethrex_container_volumes: + - "{{ ethrex_datadir }}:/data" + - "{{ ethrex_auth_jwt_path }}:/execution-auth.jwt:ro" + - "{{ eth_testnet_config_dir }}:/network-config:ro" +ethrex_container_command_extra_args: + - --chain=/network-config/genesis.json + - --bootnodes={{ ethereum_el_bootnodes | join(',') }} + - --http.api=eth,net,web3,debug,admin,txpool +prometheus_config: | + global: + scrape_interval: 30s + evaluation_interval: 30s + scrape_timeout: 10s + external_labels: + instance: "{{ ethereum_network_name }}-{{ inventory_hostname }}" + ip_address: "{{ ansible_host }}" + network: "{{ ethereum_network_name }}" + testnet: "{{ ethereum_network_name }}" + execution_client: "{{ ethereum_node_el }}" + consensus_client: "{{ ethereum_node_cl }}" + supernode: "{{ ethereum_node_cl_supernode_enabled | bool | default(false) }}" + remote_write: + - queue_config: + batch_send_deadline: 5s + max_backoff: 500ms + max_samples_per_send: 500 + min_backoff: 50ms + max_shards: 100 + url: {{ prometheus_remote_push_url }} + remote_timeout: 10s + basic_auth: + username: {{ prometheus_remote_write_username }} + password: {{ prometheus_remote_write_password }} + scrape_configs: + - job_name: "prometheus" + metrics_path: "/metrics" + static_configs: + - targets: ["localhost:9090"] + labels: + instance: "{{ ethereum_network_name }}-{{ inventory_hostname }}" + - job_name: "node" + metrics_path: "/metrics" + static_configs: + - targets: ["172.17.0.1:9100"] + labels: + instance: "{{ ethereum_network_name }}-{{ inventory_hostname }}" + - job_name: "exporter" + metrics_path: "/metrics" + static_configs: + - targets: ["ethereum-metrics-exporter:9090"] + labels: + instance: "{{ ethereum_network_name }}-{{ inventory_hostname }}" + - job_name: "consensus_node" + metrics_path: "/metrics" + static_configs: + - targets: ["{{ vars[ethereum_node_cl + '_container_name'] }}:{{ ethereum_node_cl_ports_metrics }}"] + labels: + instance: "{{ ethereum_network_name }}-{{ inventory_hostname }}" + - job_name: "execution" + metrics_path: "/metrics" + static_configs: + - targets: ["execution:{{ ethereum_node_el_ports_metrics }}"] + labels: + instance: "{{ ethereum_network_name }}-{{ inventory_hostname }}"