diff --git a/substrate/.maintain/sentry-node/docker-compose.yml b/substrate/.maintain/local-docker-test-network/docker-compose.yml similarity index 66% rename from substrate/.maintain/sentry-node/docker-compose.yml rename to substrate/.maintain/local-docker-test-network/docker-compose.yml index a4cc8f1ebb92ec4c0c8ab8a8c5b0487cda46220d..53e2a2913f38b8d15003543a6a9668aa63f29c86 100644 --- a/substrate/.maintain/sentry-node/docker-compose.yml +++ b/substrate/.maintain/local-docker-test-network/docker-compose.yml @@ -1,24 +1,26 @@ -# Docker compose file to simulate a sentry node setup. +# Docker compose file to start a multi node local test network. # +# # Nodes # -# Setup: +# - Validator node A +# - Validator node B +# - Light client C # -# Validator A is not supposed to be connected to the public internet. Instead it -# connects to a sentry node (sentry-a) which connects to the public internet. -# Validator B can reach validator A via sentry node A and vice versa. +# # Auxiliary nodes # +# - Prometheus monitoring each node. +# - Grafana pointed at the Prometheus node, configured with all dashboards. # -# Usage: +# # Usage # # 1. Build `target/release/substrate` binary: `cargo build --release` -# -# 2. Start networks and containers: `sudo docker-compose -f .maintain/sentry-node/docker-compose.yml up` -# -# 3. Reach: -# - polkadot/apps on localhost:3000 +# 2. Start networks and containers: +# `sudo docker-compose -f .maintain/sentry-node/docker-compose.yml up` +# 3. Connect to nodes: # - validator-a: localhost:9944 # - validator-b: localhost:9945 -# - sentry-a: localhost:9946 +# - light-c: localhost:9946 +# - via polkadot.js/apps: https://polkadot.js.org/apps/?rpc=ws%3A%2F%2Flocalhost%3A<NODE_PORT>#/explorer # - grafana: localhost:3001 # - prometheus: localhost:9090 @@ -34,9 +36,8 @@ services: - ../../target/release/substrate:/usr/local/bin/substrate image: parity/substrate networks: - - network-a + - internet command: - # Local node id: QmRpheLN4JWdAnY7HGJfWFNbfkQCb6tFf4vvA6hgjMZKrR - "--node-key" - "0000000000000000000000000000000000000000000000000000000000000001" - "--base-path" @@ -46,48 +47,38 @@ services: - "30333" - "--validator" - "--alice" - - "--sentry-nodes" - - "/dns/sentry-a/tcp/30333/p2p/12D3KooWSCufgHzV4fCwRijfH2k3abrpAJxTKxEvN1FDuRXA2U9x" - - "--reserved-nodes" - - "/dns/sentry-a/tcp/30333/p2p/12D3KooWSCufgHzV4fCwRijfH2k3abrpAJxTKxEvN1FDuRXA2U9x" + - "--bootnodes" + - "/dns/validator-b/tcp/30333/p2p/12D3KooWHdiAxVd8uMQR1hGWXccidmfCwLqcMpGwR6QcTP6QRMuD" # Not only bind to localhost. - "--unsafe-ws-external" - "--unsafe-rpc-external" - # - "--log" - # - "sub-libp2p=trace" - # - "--log" - # - "afg=trace" - "--log" - - "sub-authority-discovery=trace" + - "sub-libp2p=trace" - "--no-telemetry" - "--rpc-cors" - "all" - "--prometheus-external" - sentry-a: + validator-b: image: parity/substrate ports: - - "9946:9944" + - "9945:9944" volumes: - ../../target/release/substrate:/usr/local/bin/substrate networks: - - network-a - internet command: - # Local node id: QmV7EhW6J6KgmNdr558RH1mPx2xGGznW7At4BhXzntRFsi - "--node-key" - - "0000000000000000000000000000000000000000000000000000000000000003" + - "0000000000000000000000000000000000000000000000000000000000000002" - "--base-path" - - "/tmp/sentry" + - "/tmp/bob" - "--chain=local" - "--port" - "30333" - - "--sentry" - - "/dns/validator-a/tcp/30333/p2p/12D3KooWEyoppNCUx8Yx66oV9fJnriXwCcXwDDUA2kj6vnc6iDEp" - - "--reserved-nodes" - - "/dns/validator-a/tcp/30333/p2p/12D3KooWEyoppNCUx8Yx66oV9fJnriXwCcXwDDUA2kj6vnc6iDEp" + - "--validator" + - "--bob" - "--bootnodes" - - "/dns/validator-b/tcp/30333/p2p/12D3KooWHdiAxVd8uMQR1hGWXccidmfCwLqcMpGwR6QcTP6QRMuD" + - "/dns/validator-a/tcp/30333/p2p/12D3KooWEyoppNCUx8Yx66oV9fJnriXwCcXwDDUA2kj6vnc6iDEp" - "--no-telemetry" - "--rpc-cors" - "all" @@ -95,32 +86,30 @@ services: - "--unsafe-ws-external" - "--unsafe-rpc-external" - "--log" - - "sub-authority-discovery=trace" + - "sub-libp2p=trace" - "--prometheus-external" - validator-b: + light-c: image: parity/substrate ports: - - "9945:9944" + - "9946:9944" volumes: - ../../target/release/substrate:/usr/local/bin/substrate networks: - internet command: - # Local node id: QmSVnNf9HwVMT1Y4cK1P6aoJcEZjmoTXpjKBmAABLMnZEk - "--node-key" - - "0000000000000000000000000000000000000000000000000000000000000002" + - "0000000000000000000000000000000000000000000000000000000000000003" - "--base-path" - - "/tmp/bob" + - "/tmp/light" - "--chain=local" - "--port" - "30333" - - "--validator" - - "--bob" + - "--light" - "--bootnodes" - "/dns/validator-a/tcp/30333/p2p/12D3KooWEyoppNCUx8Yx66oV9fJnriXwCcXwDDUA2kj6vnc6iDEp" - "--bootnodes" - - "/dns/sentry-a/tcp/30333/p2p/12D3KooWSCufgHzV4fCwRijfH2k3abrpAJxTKxEvN1FDuRXA2U9x" + - "/dns/validator-b/tcp/30333/p2p/12D3KooWHdiAxVd8uMQR1hGWXccidmfCwLqcMpGwR6QcTP6QRMuD" - "--no-telemetry" - "--rpc-cors" - "all" @@ -128,20 +117,19 @@ services: - "--unsafe-ws-external" - "--unsafe-rpc-external" - "--log" - - "sub-authority-discovery=trace" + - "sub-libp2p=trace" - "--prometheus-external" prometheus: image: prom/prometheus networks: - - network-a - internet ports: - "9090:9090" links: - validator-a:validator-a - - sentry-a:sentry-a - validator-b:validator-b + - light-c:light-c volumes: - ./prometheus/:/etc/prometheus/ restart: always @@ -152,7 +140,6 @@ services: depends_on: - prometheus networks: - - network-a - internet ports: - 3001:3000 diff --git a/substrate/.maintain/sentry-node/grafana/provisioning/dashboards/dashboards.yml b/substrate/.maintain/local-docker-test-network/grafana/provisioning/dashboards/dashboards.yml similarity index 100% rename from substrate/.maintain/sentry-node/grafana/provisioning/dashboards/dashboards.yml rename to substrate/.maintain/local-docker-test-network/grafana/provisioning/dashboards/dashboards.yml diff --git a/substrate/.maintain/sentry-node/grafana/provisioning/datasources/datasource.yml b/substrate/.maintain/local-docker-test-network/grafana/provisioning/datasources/datasource.yml similarity index 100% rename from substrate/.maintain/sentry-node/grafana/provisioning/datasources/datasource.yml rename to substrate/.maintain/local-docker-test-network/grafana/provisioning/datasources/datasource.yml diff --git a/substrate/.maintain/sentry-node/prometheus/prometheus.yml b/substrate/.maintain/local-docker-test-network/prometheus/prometheus.yml similarity index 89% rename from substrate/.maintain/sentry-node/prometheus/prometheus.yml rename to substrate/.maintain/local-docker-test-network/prometheus/prometheus.yml index 547d4bea57ae5c55f210743165b347dd732ec0de..f8acb7c0b8ccd228ee437601366e8301e3c2c3ea 100644 --- a/substrate/.maintain/sentry-node/prometheus/prometheus.yml +++ b/substrate/.maintain/local-docker-test-network/prometheus/prometheus.yml @@ -7,9 +7,9 @@ scrape_configs: - targets: ['validator-a:9615'] labels: network: dev - - targets: ['sentry-a:9615'] + - targets: ['validator-b:9615'] labels: network: dev - - targets: ['validator-b:9615'] + - targets: ['light-c:9615'] labels: network: dev