노드 유형
BOT Chain 실행
아카이브 노드
빠른 노드
노드 유지 관리
1. 바이너리
모든 클라이언트는 최신 릴리스로 업그레이드하는 것이 좋습니다. 최신 버전은 더 안정적이고 더 나은 성능을 제공할 것으로 예상됩니다.
2. 저장공간
2.1 정리 상태
테스트에 따르면 스토리지 크기가 고용량에 도달하면 풀 노드의 성능이 저하됩니다(기존에는 실험값인 1.5TB였으며 최신 수치를 업데이트해야 함). 풀노드는 항상 스토리지를 정리하여 가벼운 스토리지를 유지하는 것이 좋습니다.
2.2 가지치기 방법
-
BOT Chain 노드를 중지합니다.
-
nohup geth snapshot prune-state --datadir {the data dir of your BOT node} &을 실행합니다. 완료하는 데 3~5시간이 소요됩니다. -
완료되면 노드를 시작합니다.
관리자는 노드 중 하나가 정리되는 경우를 대비해 항상 몇 개의 백업 노드를 보유해야 합니다. 하드웨어도 중요합니다. SSD가 500GB의 여유 디스크 공간, 솔리드 스테이트 드라이브(SSD), gp3, 8k IOPS, 500MB/S 처리량, 읽기 대기 시간 <1ms(노드가 스냅 동기화로 시작된 경우 NVMe SSD가 필요함)를 충족하는지 확인하세요.
2.3 실시간으로 고대 데이터 정리
고대 데이터는 이미 불변으로 간주되는 블록 데이터입니다. 이는 현재 90000으로 설정된 임계값에 의해 결정됩니다. 즉, 90000보다 오래된 블록은 고대 데이터로 간주됩니다. 고대 데이터에 관심이 없는 사용자에게는 --prunceancient 플래그를 권장합니다. 이 방법은 최신 90000개 블록의 데이터만 보관하므로 디스크 공간을 절약하려는 사용자에게도 권장됩니다. 이 플래그가 켜져 있으면 고대 데이터는 다시 복구되지 않으며 시작 명령에서 이 플래그 없이는 노드를 다시 실행할 수 없습니다.
2.4 플래그 사용 방법
./geth --tries-verify-mode none --config /server/config.toml --datadir /server/node --cache 8000 --rpc.allow-unprotected-txs --history.transactions 0 --pruneancient=true --syncmode=full
2.5 블록 정리 도구
원하지 않는 고대 블록 데이터를 정리하기 위해 v1.1.8에 도입된 새로운 오프라인 기능입니다. 공간을 절약하기 위해 고대 데이터베이스의 블록, 영수증 및 헤더를 폐기합니다.
가지치기 방법
-
BOT Chain 노드를 중지합니다.
-
달려라
./geth snapshot prune-block --datadir /server/node --datadir.ancient ./chaindata/ancient --block-amount-reserved 1024
block-amount-reserved은 정리 후 보관하려는 고대 데이터 블록의 수입니다.
3. 가벼운 보관
노드가 충돌하거나 강제 종료되면 노드는 몇 분 또는 몇 시간 전의 블록에서 동기화됩니다. 이는 메모리의 상태가 실시간으로 데이터베이스에 유지되지 않고 노드가 시작되면 마지막 체크포인트의 블록을 재생해야 하기 때문입니다. 재생 시간은 config.toml의 구성 TrieTimeout에 따라 다릅니다. 긴 재생 시간을 견딜 수 있다면 노드가 가벼운 스토리지를 유지할 수 있도록 높이는 것이 좋습니다.