Plan the environment
Supported operating systems
MyTonCtrl is tested on the following distributions (choose one and keep it up to date):- Ubuntu 22.04 LTS or 24.04 LTS
- Debian 11 or 12
sudo access—running MyTonCtrl as root leads to subtle permission failures later on.
Hardware sizing by role
| Role | CPU | RAM | Storage | Network | Traffic | Notes |
|---|---|---|---|---|---|---|
| Full/validator node | 16 dedicated cores (32 threads preferred) | 128 GB | ≥1 TB NVMe SSD or provisioned 64k+ IOPS | ≥1 Gbps up/down | 64 TB/month typical (peaks ~100 TB) | Leave headroom for elections and snapshots. |
| Liteserver | 16 cores | 128 GB | ≥1 TB NVMe SSD | ≥1 Gbps | ~16 TB/month peaks | Hetzner/OVH are acceptable for liteservers (not for validators). |
| Archive liteserver | 16 cores | 128 GB | ≥12 TB NVMe or ZFS pool with compression | ≥1 Gbps | ≥16 TB/month | Plan for continuous growth; monitor ZFS capacity. |
Disk latency is the common bottleneck. Benchmark storage before going live (MyTonCtrl> benchmark).
Network and ports
- Obtain a static public IPv4 address for each node.
- Forward a single UDP port (default 30303) from the internet to the node and leave all outbound ports open. Verify exposure with
netstat -tulpnand third-party scanners. - Update cloud security groups or on-prem firewalls after installation—use
MyTonCtrl> about validator/about liteserverto confirm the chosen port.
Recommended providers
The TON Foundation validates the following instances for validator-class workloads:| Cloud Provider | Instance Type | CPU | RAM | Storage | Network | Public IP | Traffic |
|---|---|---|---|---|---|---|---|
| GCP | n2-standard-16 | 32 vCPUs | 128 GB | 1 TB NVMe SSD | 16 Gbps | Static external IP | 64 TB/month |
| Alibaba Cloud | ecs.g6.4xlarge | 32 vCPUs | 128 GB | 1 TB NVMe SSD | Up to 10 Gbps | Elastic IP | 64 TB/month |
| Tencent Cloud | M5.4XLARGE | 32 vCPUs | 128 GB | 1 TB NVMe SSD | Up to 10 Gbps | Elastic IP | 64 TB/month |
| Vultr | Bare metal Intel E-2388G | 16C/32T | 128 GB | 1.92 TB NVMe SSD | 10 Gbps | Fixed | 64 TB/month |
| DigitalOcean | General purpose premium Intel | 32 vCPUs | 128 GB | 1 TB NVMe SSD | 10 Gbps | Fixed | 64 TB/month |
| Latitude | c3.medium.x86 | 16C/32T | 128 GB | 1.9 TB NVMe SSD | 10 Gbps | Fixed | 64 TB/month |
| AWS | i4i.8xlarge | 32 vCPUs | 256 GB | 2×3.75 TB Nitro SSD | Up to 25 Gbps | Elastic IP | 64 TB/month |
Prepare the operator account
If you still need a dedicated operator, create and switch to it before installing MyTonCtrl:Install MyTonCtrl
Run the installer from the operator account withsudo so it can create system users and services:
- Selecting mainnet vs. testnet (or supplying a custom
global.config.json). - Choosing the initial mode (
validatororliteserver). - Optionally downloading blockchain dumps via TON Storage (recommended for archive builds).
- Whether to run post-download tasks in the background (useful when pulling large dumps).
Verify services and synchronization
statusshows the long-form report, includingLocal validator initial sync status—wait for it to readsynchronizedbefore switching roles.status_fastprints live metrics such astimeDiffandLocal validator out of sync; both should trend toward zero on a healthy node.status_modesconfirms which modes are currently enabled.
Baseline maintenance tasks
MyTonCtrl> create_backupandrestore_backupsafeguard your configs and keys—run before upgrades and after major changes.MyTonCtrl> set sendTelemetry truesends telemetry to the MyTonCtrl developers so they can surface TON status alerts and diagnose emerging issues.MyTonCtrl> updatefollowed byupgradeapplies MyTonCtrl and binary updates; schedule regular maintenance windows.MyTonCtrl> settings_statusreviews every setting, its owner mode, and the current value.- Use
tail -F /var/ton-work/log*andjournalctl -u validator -fduring troubleshooting; reduce verbosity again if you temporarily raninstaller set_node_argument --verbosity 3.
Validator quickstart
You need: a fully synchronized node, validator mode not active elsewhere, and at least the current minimum stake (approximately 300,000 TON; check tonscan.com/validation for live numbers).Prepare the validator wallet (one-time)
-
List existing wallets:
MyTonCtrl> wl. The installer usually createsvalidator_wallet_001. -
If you need a dedicated wallet, create one (example):
-
Fund the wallet, inspect recent activity with
vas <wallet_name>, then activate it: -
Tell MyTonCtrl which wallet to use for elections:
-
Export and store the private key offline:
MyTonCtrl> ew validator_wallet.
Enable validator mode
Disable conflicting roles (liteserver cannot run alongside validator) and switch modes:validator shows as enabled and note the advertised ADNL port for firewall rules.
Configure staking policy
Assign either a fixed stake or a percentage of wallet balance:get stake / get stakePercent display the stored values; adjust before each election window if your balance changes.
Election routine
Use the same sequence every election cycle (automate with cron if desired):- Wait until
Local validator out of syncis below 20 before runningve. vesubmits election messages,check_efreports the previous and current round efficiency.- MyTonCtrl automatically splits balances into two stakes when the Elector accepts your bid; withdrawals become available in the following election per protocol rules.
Operational discipline
- Track network announcements via
@tonstatusand enable notifications. - Keep hardware aligned with the minimum system requirements; upgrade storage promptly if metrics show saturation.
- Leave telemetry enabled (
set sendTelemetry true) so telemetry continues reaching the MyTonCtrl developers and they can warn the community about issues. - Monitor RAM, disk, CPU, and bandwidth dashboards. Contact
@mytonctrl_help_botif metrics or efficiency drop below target. - Re-run
check_efor consult the efficiency API when diagnosing performance.
Liteserver quickstart
You need: a synchronized full node with validator mode disabled (liteserver cannot run alongside validator on the same machine).Activate liteserver services
Configure endpoints and proxies
enable LSdeploys the liteserver daemon.plscprints the client bundle—share it with/var/ton-work/keys/liteserver.pubso lite-clients can connect.- Regenerate configs at any time with
installer clcf.
Open the liteserver port
-
Check the port in
/var/ton-work/db/config.json(within theliteserversarray). -
Update security groups or configure
ufwon bare-metal hosts: - Confirm connectivity by initializing a lite-client using the generated config.
Ongoing care
- Monitor
netLoadAvgand CPU viastatus_fast; scale hardware before saturation. - Export
create_backupafter any config change so you can rapidly rebuild liteserver hosts. - Keep ports private—front them with VPNs or proxies when exposing to public users.
Archive liteserver quickstart
You need: liteserver mode enabled, ≥12 TB of fast storage, and ZFS installed for handling compressed dumps.Prepare storage with ZFS
Install and download archive data
Run the installer, chooseliteserver mode, and answer Yes (1) when prompted to download archive blocks via TON Storage. Allow the job to continue in the background—the download may take days.
Track progress in MyTonCtrl logs and wait for status → Local validator initial sync status to report synchronized before serving traffic.
Troubleshooting imports
Increase verbosity temporarily to review archive import logs, then revert:Importing archive ... from net messages, investigate storage latency—IOPS may be insufficient.
Snapshot and recovery tips
- Use ZFS snapshots (
zfs snapshot data/ton-work@<label>) for fast rollbacks. - To restore, stop services before
zfs rollback:sudo systemctl stop validator. - Keep off-site backups of
/var/ton-work/keysandcreate_backuparchives.
Monitoring and support
- Subscribe to
@tonstatusand@tonstatus_notificationsfor real-time validator alerts. - Use the private alert bot once your node is stable:
MyTonCtrl> enable_mode alert-botthen configure credentials per the alerting guide. - Contact validator support via
@validators_help_bot; regular node operators can use@ton_node_help. - Audit node health weekly:
status_fast,check_ef, disk usage (du -sh /var/ton-work/db), and snapshot consistency.