From 4ea58aeda7b0b90d158e7a3e96d32bb6bb8f8ac5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Soko=C5=82owski?= Date: Sat, 18 Mar 2023 18:02:58 +0100 Subject: [PATCH] deploy SMART metrics to all metal hosts MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jakub SokoĊ‚owski --- ansible/geth.yml | 6 ++++-- ansible/group_vars/all.yml | 3 +++ ansible/group_vars/logs.nimbus.yml | 15 ++++++++------- ansible/group_vars/nimbus-geth-goerli.yml | 1 + ansible/group_vars/nimbus-geth-mainnet.yml | 15 ++++++++------- ansible/group_vars/nimbus.mainnet.yml | 5 +++-- ansible/group_vars/nimbus.prater.yml | 1 + ansible/mainnet.yml | 1 + ansible/prater.yml | 1 + ansible/requirements.yml | 7 ++++++- 10 files changed, 36 insertions(+), 19 deletions(-) diff --git a/ansible/geth.yml b/ansible/geth.yml index 8fcdb2e..abc045a 100644 --- a/ansible/geth.yml +++ b/ansible/geth.yml @@ -16,6 +16,7 @@ roles: - { role: swap-file, tags: swap-file } - { role: open-ports, tags: open-ports } + - { role: smart-metrics, tags: smart-metrics } - { role: infra-role-geth, tags: infra-role-geth } - { role: infra-role-geth-exporter, tags: infra-role-geth-exporter } @@ -25,8 +26,9 @@ hosts: - nimbus-geth-goerli roles: - - { role: swap-file, tags: swap-file } - - { role: open-ports, tags: open-ports } + - { role: swap-file, tags: swap-file } + - { role: open-ports, tags: open-ports } + - { role: smart-metrics, tags: smart-metrics } tasks: - include_role: name=infra-role-geth tags: [ geth, infra-role-geth ] diff --git a/ansible/group_vars/all.yml b/ansible/group_vars/all.yml index e8891f0..51b36fb 100644 --- a/ansible/group_vars/all.yml +++ b/ansible/group_vars/all.yml @@ -38,6 +38,9 @@ consul_catalog_url: 'http://localhost:8500/v1/catalog' swap_file_path: '/docker/main.swap' swap_file_size_mb: 2048 +# SMART Metrics +smart_metrics_listen_port: 9633 + # Nimbus ------------------------------ beacon_node_log_level: DEBUG # Builds diff --git a/ansible/group_vars/logs.nimbus.yml b/ansible/group_vars/logs.nimbus.yml index 9e49231..53832e6 100644 --- a/ansible/group_vars/logs.nimbus.yml +++ b/ansible/group_vars/logs.nimbus.yml @@ -48,10 +48,11 @@ open_ports_default_chain: 'VPN' open_ports_list: - { port: 80, chain: 'SERVICES' } - { port: 443, chain: 'SERVICES' } - - { port: '{{ es_api_port }}', ipset: 'dash.hq' } - - { port: '{{ es_api_port }}', ipset: 'logs.hq' } - - { port: '{{ es_api_port }}', ipset: 'logs.nimbus' } - - { port: '{{ es_api_port }}', ipset: 'dash.nimbus' } - - { port: '{{ es_node_port }}', ipset: 'logs.nimbus' } - - { port: '{{ es_node_port }}', ipset: 'dash.nimbus' } - - { port: '{{ es_exp_cont_port }}', ipset: 'metrics.hq' } + - { port: '{{ es_api_port }}', ipset: 'dash.hq' } + - { port: '{{ es_api_port }}', ipset: 'logs.hq' } + - { port: '{{ es_api_port }}', ipset: 'logs.nimbus' } + - { port: '{{ es_api_port }}', ipset: 'dash.nimbus' } + - { port: '{{ es_node_port }}', ipset: 'logs.nimbus' } + - { port: '{{ es_node_port }}', ipset: 'dash.nimbus' } + - { port: '{{ es_exp_cont_port }}', ipset: 'metrics.hq' } + - { port: '{{ smart_metrics_listen_port }}', ipset: 'metrics.hq', comment: 'SMART Metrics' } diff --git a/ansible/group_vars/nimbus-geth-goerli.yml b/ansible/group_vars/nimbus-geth-goerli.yml index 364700a..d4e4694 100644 --- a/ansible/group_vars/nimbus-geth-goerli.yml +++ b/ansible/group_vars/nimbus-geth-goerli.yml @@ -33,6 +33,7 @@ open_ports_default_chain: 'VPN' open_ports_list: - { port: '9400:9404', ipset: 'metrics.hq', comment: 'Geth Metrics' } - { port: '8551:8554', ipset: 'nimbus.prater' } + - { port: '{{ smart_metrics_listen_port }}', ipset: 'metrics.hq', comment: 'SMART Metrics' } nodes_layout: # For AWS Prater nodes. diff --git a/ansible/group_vars/nimbus-geth-mainnet.yml b/ansible/group_vars/nimbus-geth-mainnet.yml index 7ca76c6..7508ab1 100644 --- a/ansible/group_vars/nimbus-geth-mainnet.yml +++ b/ansible/group_vars/nimbus-geth-mainnet.yml @@ -35,10 +35,11 @@ geth_expo_cont_port: 9200 open_ports_default_comment: 'Geth API' open_ports_default_chain: 'VPN' open_ports_list: - - { port: '{{ geth_expo_cont_port }}', ipset: 'metrics.hq', comment: 'Geth Metrics' } - - { port: '{{ geth_rpc_port }}', ipset: 'nimbus.mainnet' } - - { port: '{{ geth_rpc_port }}', ipset: 'eth2.prod' } - - { port: '{{ geth_authrpc_port }}', ipset: 'nimbus.mainnet' } - - { port: '{{ geth_authrpc_port }}', ipset: 'eth2.prod' } - - { port: '{{ geth_websocket_port }}', ipset: 'nimbus.mainnet' } - - { port: '{{ geth_websocket_port }}', ipset: 'eth2.prod' } + - { port: '{{ geth_expo_cont_port }}', ipset: 'metrics.hq', comment: 'Geth Metrics' } + - { port: '{{ smart_metrics_listen_port }}', ipset: 'metrics.hq', comment: 'SMART Metrics' } + - { port: '{{ geth_rpc_port }}', ipset: 'nimbus.mainnet' } + - { port: '{{ geth_rpc_port }}', ipset: 'eth2.prod' } + - { port: '{{ geth_authrpc_port }}', ipset: 'nimbus.mainnet' } + - { port: '{{ geth_authrpc_port }}', ipset: 'eth2.prod' } + - { port: '{{ geth_websocket_port }}', ipset: 'nimbus.mainnet' } + - { port: '{{ geth_websocket_port }}', ipset: 'eth2.prod' } diff --git a/ansible/group_vars/nimbus.mainnet.yml b/ansible/group_vars/nimbus.mainnet.yml index 2683601..50c507e 100644 --- a/ansible/group_vars/nimbus.mainnet.yml +++ b/ansible/group_vars/nimbus.mainnet.yml @@ -96,8 +96,9 @@ nimbus_era_files_nclidb_path: '/data/beacon-node-{{ beacon_node_network }}-unsta open_ports_default_comment: 'Nimbus REST API' open_ports_default_chain: 'VPN' open_ports_list: - - { port: '9300:9310', ipset: '{{ env }}.{{ stage }}' } - - { port: '9400', ipset: 'metrics.hq', comment: 'Geth Exporter' } + - { port: '9300:9310', ipset: '{{ env }}.{{ stage }}' } + - { port: '9400', ipset: 'metrics.hq', comment: 'Geth Exporter' } + - { port: '{{ smart_metrics_listen_port }}', ipset: 'metrics.hq', comment: 'SMART Metrics' } # Split by hostname for more central location nodes_layout: diff --git a/ansible/group_vars/nimbus.prater.yml b/ansible/group_vars/nimbus.prater.yml index 4030b9a..b1de95d 100644 --- a/ansible/group_vars/nimbus.prater.yml +++ b/ansible/group_vars/nimbus.prater.yml @@ -136,6 +136,7 @@ open_ports_default_chain: 'VPN' open_ports_list: - { port: '9300:9310', ipset: '{{ env }}.{{ stage }}' } - { port: '9400:9404', ipset: 'metrics.hq', comment: 'Geth Exporter' } + - { port: '{{ smart_metrics_listen_port }}', ipset: 'metrics.hq', comment: 'SMART Metrics' } # https://github.com/status-im/infra-nim-waku/issues/59 - { port: '9546:9550', ipset: 'wakuv2.test', comment: 'Wakuv2 Websocket' } diff --git a/ansible/mainnet.yml b/ansible/mainnet.yml index eb70924..fd20d89 100644 --- a/ansible/mainnet.yml +++ b/ansible/mainnet.yml @@ -34,6 +34,7 @@ hosts: nimbus-mainnet-metal roles: - { role: open-ports, tags: [ open-ports ] } + - { role: smart-metrics, tags: [ smart-metrics ] } - { role: redirect-ports, tags: [ redirect-ports ] } - { role: infra-role-geth, tags: [ infra-role-geth ] } - { role: infra-role-geth-exporter, tags: [ infra-role-geth-exporter ] } diff --git a/ansible/prater.yml b/ansible/prater.yml index f5aed05..62e2cbf 100644 --- a/ansible/prater.yml +++ b/ansible/prater.yml @@ -35,6 +35,7 @@ hosts: nimbus-prater-metal roles: - { role: open-ports, tags: [ open-ports ] } + - { role: smart-metrics, tags: [ smart-metrics ] } - { role: redirect-ports, tags: [ redirect-ports ] } - { role: nimbus-era-files, tags: [ nimbus-era-files ] } tasks: diff --git a/ansible/requirements.yml b/ansible/requirements.yml index 5baf048..9e8f4d8 100644 --- a/ansible/requirements.yml +++ b/ansible/requirements.yml @@ -80,7 +80,7 @@ - name: infra-role-rocketpool src: git@github.com:status-im/infra-role-rocketpool.git - version: 8c96f6c15af5aefc1f022f6dcd7c0efb1ce29b63 + version: 5b8106a8c6e17ec96e992fd8711fc42f0aab901a scm: git - name: infra-role-winsw @@ -122,3 +122,8 @@ src: git@github.com:status-im/infra-role-geth-exporter.git version: 21770167cdeb5c481066547b6d0814f1ba8546c1 scm: git + +- name: smart-metrics + src: git@github.com:status-im/infra-role-smart-metrics.git + version: f94db4679ef3f920188565dda1e3933cdf70e39a + scm: git