TON 노드 설치 가이드 (MyTonCtrl)
MyTonCtrl로 TON Full Node를 설치하고 Validator·LiteServer·Archive 모드를 설정하는 방법입니다.
출처: Run a node with MyTonCtrl, Full Node.
목차
- 전제 조건
- non-root 사용자 생성
- MyTonCtrl 설치
- 동기화 확인
- Validator 활성화
- LiteServer 활성화
- Archive LiteServer (선택)
- 소스 빌드 (고급)
전제 조건
- OS: Ubuntu 22.04/24.04 LTS, Debian 11/12
- 하드웨어: Full/Validator — 16코어(32스레드 권장), 128GB RAM, ≥1TB NVMe, ≥1Gbps, 트래픽 64TB/월 이상.
LiteServer — 동일 CPU/RAM/스토리지, 트래픽 ~16TB/월 피크.
Archive — ≥12TB NVMe 또는 ZFS. - 네트워크: 고정 공인 IPv4, UDP 포트(기본 30303) 인터넷에서 해당 노드로 포워딩.
- root가 아닌 sudo 가능 사용자로 설치·실행.
non-root 사용자 생성
sudo adduser <username>
sudo usermod -aG sudo <username>
# 새 사용자로 재접속 후 설치 진행
ssh <username>@<server_ip>
MyTonCtrl 설치
sudo apt update
sudo apt install -y curl wget git ca-certificates python3-pip
wget https://raw.githubusercontent.com/ton-blockchain/mytonctrl/master/scripts/install.sh
sudo bash install.sh -d
- -d: 덤프 다운로드로 동기화 가속(권장).
- Mainnet(기본): 위 명령 그대로.
- Testnet:
sudo bash install.sh -c https://ton.org/testnet-global.config.json - 초기 모드: 대화형에서
validator또는liteserver선택.
비대화형:-m validator또는-m liteserver.
설치 중 덤프 다운로드·백그라운드 작업 여부, 메인넷/테스트넷 선택 등을 묻습니다.
추가 플래그·환경 변수: MyTonCtrl overview.
설치 후 권한 확인
sudo chown -R validator:validator /var/ton-work/db
sudo chown -R <install_user>:<install_user> /var/ton-work/keys
동기화 확인
mytonctrl
MyTonCtrl> status
MyTonCtrl> status_fast
MyTonCtrl> status_modes
- status_fast:
timeDiff,Local validator out of sync— 0에 가깝게 수렴할 때까지 대기. - status:
Local validator initial sync status가 synchronized가 된 뒤 Validator/LiteServer 전환. - 동기화에 수 시간 걸릴 수 있습니다.
Validator 활성화
요구사항: 동기화 완료, Validator 모드를 다른 곳에서 사용 중이 아니어야 함, 최소 stake(약 30만 TON, tonscan.com/validation에서 확인).
1. Validator 지갑 준비
MyTonCtrl> wl
MyTonCtrl> nw 0 validator_wallet v3 1001
MyTonCtrl> aw validator_wallet
MyTonCtrl> set validatorWalletName "validator_wallet"
MyTonCtrl> ew validator_wallet # 개인키 오프라인 백업
지갑에 TON 입금 후 aw로 활성화.
2. Validator 모드 활성화
LiteServer와 Validator는 같은 머신에서 동시에 켤 수 없습니다.
MyTonCtrl> disable_mode liteserver
MyTonCtrl> enable_mode validator
MyTonCtrl> status_modes
MyTonCtrl> about validator
about validator에서 ADNL 포트 확인 후 방화벽에서 허용.
3. Stake 설정
MyTonCtrl> set stake 500000
# 또는
MyTonCtrl> set stakePercent 99
4. 선출(Election)
동기화가 안정적일 때(Local validator out of sync < 20):
MyTonCtrl> ve
MyTonCtrl> check_ef
자동화는 cron 등으로 ve·check_ef 주기 실행.
상세: Run a node with MyTonCtrl - Validator quickstart, Validator-HOWTO.
LiteServer 활성화
요구사항: 동기화 완료, Validator 모드 비활성화(같은 머신에서 동시 불가).
MyTonCtrl> enable_mode liteserver
MyTonCtrl> status_modes
MyTonCtrl> installer
Installer> enable LS
Installer> plsc
Installer> exit
plsc로 출력되는 클라이언트 번들·/var/ton-work/keys/liteserver.pub를 lite-client 연결에 사용.
방화벽: /var/ton-work/db/config.json의 liteservers 배열에 나온 포트 허용.
sudo ufw allow ssh
sudo ufw allow <liteserver_port>
sudo ufw enable
상세: Enable LiteServer, Run a node with MyTonCtrl - Liteserver quickstart.
Archive LiteServer (선택)
전체 블록 이력(약 12TB) 보관. ZFS·대용량 스토리지 필요.
- 스토리지: ZFS 풀 생성,
mountpoint=/var/ton-work등 설정.
Run a node with MyTonCtrl - Archive liteserver. - 설치 시 TON Storage로 아카이브 블록 다운로드 선택. 다운로드가 며칠 걸릴 수 있음.
소스 빌드 (고급)
Validator/LiteServer 운영은 MyTonCtrl 사용을 권장. 소스는 개발·커스텀 빌드용.
git clone --recursive https://github.com/ton-blockchain/ton.git
cd ton
# 빌드: 저장소의 scripts/build.sh, doc/FullNode-HOWTO 등 참고
./lite-client/lite-client --help
- ton-blockchain/ton — FullNode-HOWTO, Validator-HOWTO.
- 프로덕션 노드는 MyTonCtrl + 공식 바이너리 조합을 사용하는 것이 일반적입니다.
유지보수
- 업데이트:
MyTonCtrl> update→upgrade - 백업:
MyTonCtrl> create_backup/restore_backup - 로그:
tail -F /var/ton-work/log*,journalctl -u validator -f - 텔레메트리:
MyTonCtrl> set sendTelemetry true(권장) - 지원: @mytonctrl_help_bot, @ton_node_help, @tonstatus