There are three types of nodes:
Any node requires at least **16GB** of RAM and **8-core** CPU, but disk usage depends on node type. Only linux is well tested.
- Lite node
- Full node
- Archive node
Lite NodeLite node has only intermediate state and basically just proxy all requests to other nodes. This is useful to moderate the workload. Lite node requires **~10GB** of disk space.
Full nodeFull node have full state (but not transaction history) of a blockchain, it is useful for stable access to a blockchain. Full node requires **~10GB** of disk space at the beginning, but will be growing by **~10GB** per week.
Archive nodeArchive node is a full node but it has an access to the whole history of a blockchain. Current recommendation is to have **6TB** SSD.
Installing Lite or Full NodeThe easiest way to install node is to use mytonctrl.Execute in this command in bash replacing mode with **lite** or **full**:After installing you can get an access to mytonctrl. Execute in shell:
Exposing PortsEach node exposes random UDP port. To find it execute:and find **validator-engine** process with UDP port and configure your firewalls and routers. Only this port is required for synchronization.
Connect to Lite ServerLite server is component of TON node that serves client connections and performs various queries. If you want to use outside of local node you have to get lite client config.Start mytonctrl:In mytonctrl execute:In installer execute:You will get config for your lite client, like: Open **port** on your router/firewalls to make lite server accessible from outside.
(Advanced) Installing Archive NodeFirst you need to have 6TB SSD on your server, but current method relies on ZFS and you can use 3TB if you enable ZFS compression.
- Install zfs, create new pool (`data`).
- Enable compression: `zfs set compression=lz4 data`
- Create volume: `zfs create data/ton-work`
- Install `mytonctrl`
- Stop validator process: `systemctl stop validator`
- Backup configs: `mv /var/ton-work /var/ton-work.bak`
- Apply dump (see below)
- Mount zfs: `zfs set mountpoint=/var/ton-work data/ton-work && zfs mount data/ton-work`
- Copy config.json, keys and db/keyring from backup to `/var/ton-work`
- Fix permissions: `chown -R validator:validator /var/ton-work`
- Start validator: `systemctl start validator`
Apply DumpRequest credentials at http://anode2.ton.swisscops.com.After getting credentials, execute: