Skip to content

Commit

Permalink
Merge pull request #8 from telosnetwork/multi_bp_and_more
Browse files Browse the repository at this point in the history
Use leap 5, increase max tx time to 199ms, use multi bp setup
  • Loading branch information
poplexity authored Sep 25, 2024
2 parents ecbb87d + 50e22b9 commit 0bc1b31
Show file tree
Hide file tree
Showing 9 changed files with 203 additions and 12 deletions.
23 changes: 17 additions & 6 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -3,21 +3,32 @@ FROM ubuntu:24.04
RUN apt-get update && \
apt-get install -y wget vim net-tools curl jq zstd

RUN wget https://github.com/AntelopeIO/leap/releases/download/v4.0.6/leap_4.0.6-ubuntu22.04_amd64.deb && \
dpkg -i leap_4.0.6-ubuntu22.04_amd64.deb || apt-get install -f -y
RUN wget https://github.com/AntelopeIO/leap/releases/download/v5.0.2/leap_5.0.2_amd64.deb && \
dpkg -i leap_5.0.2_amd64.deb || apt-get install -f -y

RUN apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*

WORKDIR /app

COPY config.ini /node/config.ini
COPY logging.json /node/logging.json
COPY data.tar.gz /node/data.tar.gz
COPY data.tar.gz data.tar.gz

COPY config-rpc.ini /node-rpc/config.ini
COPY logging.json /node-rpc/logging.json

COPY config-eosio.ini /node-eosio/config.ini
COPY logging.json /node-eosio/logging.json

COPY config-prod-1.ini /node-prod-1/config.ini
COPY logging.json /node-prod-1/logging.json

COPY config-prod-2.ini /node-prod-2/config.ini
COPY logging.json /node-prod-2/logging.json

COPY entrypoint.sh /app/entrypoint.sh

# Do the extraction in entrypoint.sh so shared_memory.bin remains sparse
#RUN tar -xvf /node/data.tar.gz -C /node && mv /node/data /node/data-dir

#CMD ["nodeos", "--data-dir=/node/data-dir", "--config-dir=/node", "--disable-replay-opts", "--enable-stale-production"]

CMD ["./entrypoint.sh"]
CMD ["./entrypoint.sh"]
28 changes: 28 additions & 0 deletions config-eosio.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
producer-name = eosio
signature-provider = EOS5GnobZ231eekYUJHGTcmy2qve1K23r5jSFQbMfwWTtPB7mFZ1L=KEY:5Jr65kdYmn33C3UabzhmWDm2PuqbRfPuDStts3ZFNSBLM7TqaiL

http-server-address = 0.0.0.0:8890
p2p-listen-endpoint = 0.0.0.0:9890

wasm-runtime = eos-vm

#chain-state-db-size-mb = 65536
contracts-console = true
access-control-allow-origin = *
access-control-allow-headers = *
verbose-http-errors = true
http-validate-host = false
abi-serializer-max-time-ms = 100
http-max-response-time-ms = 50

# PLUGINS
plugin = eosio::chain_plugin
plugin = eosio::net_plugin
plugin = eosio::producer_plugin
plugin = eosio::producer_api_plugin

# rpc
p2p-peer-address = 127.0.0.1:9876

# prod-1
p2p-peer-address = 127.0.0.1:9891
31 changes: 31 additions & 0 deletions config-prod-1.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
producer-name = produceracc1
signature-provider = EOS5GnobZ231eekYUJHGTcmy2qve1K23r5jSFQbMfwWTtPB7mFZ1L=KEY:5Jr65kdYmn33C3UabzhmWDm2PuqbRfPuDStts3ZFNSBLM7TqaiL

http-server-address = 0.0.0.0:8891
p2p-listen-endpoint = 0.0.0.0:9891

wasm-runtime = eos-vm

#chain-state-db-size-mb = 65536
contracts-console = true
access-control-allow-origin = *
access-control-allow-headers = *
verbose-http-errors = true
http-validate-host = false
abi-serializer-max-time-ms = 100
http-max-response-time-ms = 50

# PLUGINS
plugin = eosio::chain_plugin
plugin = eosio::net_plugin
plugin = eosio::producer_plugin
plugin = eosio::producer_api_plugin

# rpc
p2p-peer-address = 127.0.0.1:9876

# eosio
p2p-peer-address = 127.0.0.1:9890

# prod-2
p2p-peer-address = 127.0.0.1:9892
31 changes: 31 additions & 0 deletions config-prod-2.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
producer-name = produceracc2
signature-provider = EOS5GnobZ231eekYUJHGTcmy2qve1K23r5jSFQbMfwWTtPB7mFZ1L=KEY:5Jr65kdYmn33C3UabzhmWDm2PuqbRfPuDStts3ZFNSBLM7TqaiL

http-server-address = 0.0.0.0:8892
p2p-listen-endpoint = 0.0.0.0:9892

wasm-runtime = eos-vm

#chain-state-db-size-mb = 65536
contracts-console = true
access-control-allow-origin = *
access-control-allow-headers = *
verbose-http-errors = true
http-validate-host = false
abi-serializer-max-time-ms = 100
http-max-response-time-ms = 50

# PLUGINS
plugin = eosio::chain_plugin
plugin = eosio::net_plugin
plugin = eosio::producer_plugin
plugin = eosio::producer_api_plugin

# rpc
p2p-peer-address = 127.0.0.1:9876

# eosio
p2p-peer-address = 127.0.0.1:9890

# prod-1
p2p-peer-address = 127.0.0.1:9891
76 changes: 76 additions & 0 deletions config-rpc.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
http-server-address = 0.0.0.0:8888
p2p-listen-endpoint = 0.0.0.0:9876

wasm-runtime = eos-vm
eos-vm-oc-enable = true

#chain-state-db-size-mb = 65536
contracts-console = true
access-control-allow-origin = *
access-control-allow-headers = *
verbose-http-errors = true
http-validate-host = false
abi-serializer-max-time-ms = 100
http-max-response-time-ms = 50
transaction-finality-status-max-storage-size-gb = 20
transaction-retry-max-storage-size-gb = 1
read-only-threads = 8

# PLUGINS
plugin = eosio::http_plugin
plugin = eosio::chain_plugin
plugin = eosio::chain_api_plugin
plugin = eosio::net_plugin
plugin = eosio::producer_plugin
plugin = eosio::net_api_plugin
plugin = eosio::producer_api_plugin

plugin = eosio::state_history_plugin
state-history-endpoint = 0.0.0.0:18999
trace-history = true
chain-state-history = true
trace-history-debug-mode = true
state-history-dir = state-history

# prod-0
p2p-peer-address = 127.0.0.1:9890

# prod-0
p2p-peer-address = 127.0.0.1:9891

# amsterdam: NL, Amsterdam
p2p-peer-address = telos.eu.eosamsterdam.net:9120
# bp.boid: ES, Tenerife, Canary Islands, Spain
p2p-peer-address = telos.p2p.boid.animus.is:5151
# bp.boid: ES, Tenerife, Canary Islands, Spain
p2p-peer-address = telos.p2p.boid.animus.is:5252
# eosauthority: DE, Falkenstein
p2p-peer-address = node-telos.eosauthority.com:10311
# eosphereiobp: AU, Sydney
p2p-peer-address = peer1-telos.eosphere.io:9876
# eosphereiobp: AU, Sydney
p2p-peer-address = peer2-telos.eosphere.io:9876
# guild.nefty: FI, Finland
p2p-peer-address = telos-public-seed.neftyblocks.com:9877
# kandaweather: ZA, Cape Town
p2p-peer-address = api.kandaweather.net:9876
# nation.tlos: CA, Canada
p2p-peer-address = telos.seed.eosnation.io:9876
# omnidexblock: US, Johnstown
p2p-peer-address = omnidexbp.com:9876
# southafrica1: ZA, Pretoria
p2p-peer-address = p2p.telos.africa:9876
# telosgermany: DE, Frankfurt
p2p-peer-address = p2p.telosgermany.genereos.io:9876
# telosglobal1: US, Sacramento,CA
p2p-peer-address = node1.us-west.telosglobal.io:9876
# telosglobal1: US, Herndon,VA
p2p-peer-address = node1.us-east.telosglobal.io:9876
# teloskiwinzz: AU, Melbourne
p2p-peer-address = telosmainnet.bp.kiwi:9786
# telosmadrid1: DE, SEED
p2p-peer-address = seed.telosmadrid.io:9878
# telosunlimit: US, St.Louis
p2p-peer-address = p2p.telosunlimited.io:9876
# totaltelosbp: ES, Spain
p2p-peer-address = p2p.totaltelos.tech:9820
8 changes: 5 additions & 3 deletions config.ini
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
#Private key: 5KCkcSxYKZfh5Cr8CCunS2PiUKzNZLhtfBjudaUnad3PDargFQo
#Public key: EOS5uHeBsURAT6bBXNtvwKtWaiDSDJSdSmc96rHVws5M1qqVCkAm6

producer-name = eosio
signature-provider = EOS5GnobZ231eekYUJHGTcmy2qve1K23r5jSFQbMfwWTtPB7mFZ1L=KEY:5Jr65kdYmn33C3UabzhmWDm2PuqbRfPuDStts3ZFNSBLM7TqaiL
# producer-name = eosio
# signature-provider = EOS5GnobZ231eekYUJHGTcmy2qve1K23r5jSFQbMfwWTtPB7mFZ1L=KEY:5Jr65kdYmn33C3UabzhmWDm2PuqbRfPuDStts3ZFNSBLM7TqaiL

http-server-address = 0.0.0.0:8888
p2p-listen-endpoint = 0.0.0.0:9876
Expand Down Expand Up @@ -36,6 +36,8 @@ trace-history-debug-mode = true
state-history-dir = state-history


p2p-peer-address =

# amsterdam: NL, Amsterdam
p2p-peer-address = telos.eu.eosamsterdam.net:9120
# bp.boid: ES, Tenerife, Canary Islands, Spain
Expand Down Expand Up @@ -71,4 +73,4 @@ p2p-peer-address = seed.telosmadrid.io:9878
# telosunlimit: US, St.Louis
p2p-peer-address = p2p.telosunlimited.io:9876
# totaltelosbp: ES, Spain
p2p-peer-address = p2p.totaltelos.tech:9820
p2p-peer-address = p2p.totaltelos.tech:9820
Binary file modified data.tar.gz
Binary file not shown.
11 changes: 9 additions & 2 deletions entrypoint.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,13 @@

set -x

tar -xvf /node/data.tar.gz -C /node && mv /node/data /node/data-dir
tar -xvf data.tar.gz -C /node-rpc && mv /node-rpc/data /node-rpc/data-dir
tar -xvf data.tar.gz -C /node-eosio && mv /node-eosio/data /node-eosio/data-dir
tar -xvf data.tar.gz -C /node-prod-1 && mv /node-prod-1/data /node-prod-1/data-dir
tar -xvf data.tar.gz -C /node-prod-2 && mv /node-prod-2/data /node-prod-2/data-dir

nodeos --data-dir=/node/data-dir --config-dir=/node --disable-replay-opts --enable-stale-production
nodeos --data-dir=/node-eosio/data-dir --config-dir=/node-eosio --enable-stale-production >> prod-eosio.log 2>&1 &
nodeos --data-dir=/node-prod-1/data-dir --config-dir=/node-prod-1 --enable-stale-production >> prod-1.log 2>&1 &
nodeos --data-dir=/node-prod-2/data-dir --config-dir=/node-prod-2 --enable-stale-production >> prod-2.log 2>&1 &

nodeos --data-dir=/node-rpc/data-dir --config-dir=/node-rpc --disable-replay-opts --enable-stale-production
7 changes: 6 additions & 1 deletion run.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,9 @@
#!/bin/bash
set +x

docker run --platform linux/amd64 -d -p 8888:8888 -p 9876:9876 -p 18999:18999 --name telos-node telos-node
docker run --platform linux/amd64 \
-it \
--rm \
-p 8888:8888 -p 9876:9876 -p 18999:18999 \
--name telos-node \
telosnetwork/testcontainer-nodeos-evm:latest

0 comments on commit 0bc1b31

Please sign in to comment.