Nodes/ton/localhost/installation

ton

TON 노드 설치 가이드 (MyTonCtrl)

6분 읽기 · localhost/installation

list목차(15)

TON 노드 설치 가이드 (MyTonCtrl)

MyTonCtrl로 TON Full Node를 설치하고 Validator·LiteServer·Archive 모드를 설정하는 방법입니다.
출처: Run a node with MyTonCtrl, Full Node.

목차


전제 조건

  • 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 statussynchronized가 된 뒤 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.jsonliteservers 배열에 나온 포트 허용.

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·대용량 스토리지 필요.


소스 빌드 (고급)

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> updateupgrade
  • 백업: 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

ton 다른 챕터