SKALE 3.0

534485763354787851

You can find the compatible versions in this page. Set up requires only Validator-Cli, Node-Cli and SGX versions.

The rest of the versions were provided for docker containers and correspondent tags in their individual code repositories.

Right now versions are backwards incompatible. So do not downgrade the node unless it was explicitly requested by the core team.

Prerequisites

Node machine

  • A Linux x86_64 machine

  • Incoming ports 80, 443, 3009, 311, and 10000–18192, and ICMP IPv4 should not be closed by external firewall

  • Outgoing ports 5000, 8391, should be opened

  • Ubuntu 20.04 (focal)

  • disk mounted as / - 100GB

  • separate not mounted block device - 2Tb

  • 8 physical cores

  • 32GB RAM

  • 16GB Swap

  • docker

  • docker-compose → 1.29.2

  • iptables-persistent, btrfs-progs, lsof, lvm2, psmisc, and apt

  • live-restore enabled docker docs

SGX Server

  • SGX-enabled Intel processor

Geth Node

  • geth node with latest version

Important notes:

  1. Make sure DISABLE_IMA .env option set to False.

  2. If you’re using ufw or iptables for configuring your own firewall rules, please, do not allow any of the ports listed above.

  3. Nodes should be able to access Ports 1026–1031 open only to SKALE Nodes, not public SGX ports.

  4. Make sure that other network nodes receives packets from your node with source IP address that is equal to IP address that you provided during node registration (it can be found in skale node info output).

  5. Please, don’t forget to check your SSL certificate using skale ssl check command.

Mainnet Versions for Set up

Node CLI

Validator CLI

SGX Wallet

1.9.0-stable.0 container: skalenetwork/sgxwallet_release:1.9.0-stable.0

Skale node

Skaled

Docker lvmpy

Transaction manager

Skale admin

Bounty agent

Skale watchdog

Mainnet Environment Variables to set

CONTAINER_CONFIGS_STREAM=3.0.1
DB_PASSWORD={by-validator}
DB_PORT={by-validator}
DB_ROOT_PASSWORD={by-validator}
DB_USER={by-validator}
DISABLE_IMA=False
DISK_MOUNTPOINT=[{by-validator}, your attached storage /dev/sda or /dev/xvdd (this is an example. You just need to use your 2TB block device)]
DOCKER_LVMPY_STREAM=1.0.2-stable.0
ENDPOINT=[{by-validator}, GETH NODE ENDPOINT]
ENV_TYPE=mainnet
FILEBEAT_HOST=filebeat.mainnet.skalenodes.com:5000
IMA_CONTRACTS_ABI_URL=https://raw.githubusercontent.com/skalenetwork/skale-network/master/releases/mainnet/IMA/1.5.0/mainnet/abi.json
IMA_ENDPOINT=[{by-validator}, GETH NODE ENDPOINT ]
MANAGER_CONTRACTS_ABI_URL=https://raw.githubusercontent.com/skalenetwork/skale-network/master/releases/mainnet/skale-manager/1.11.0/skale-manager-1.11.0-mainnet-abi.json
MONITORING_CONTAINERS={MONITORING_CONTAINERS}
SGX_SERVER_URL=[{by-validator}, setup SGX wallet first]
INFLUX_URL=https://mainnet-metrics-db.skalenodes.com:8391
TELEGRAF=True