네트워크 업그레이드를 위해 체인 상태 내보내는 방법
노드 운영자를 위한 단계별 가이드로, 조정된 네트워크 업그레이드를 준비하기 위해 marood export 명령을 사용하여 마루 체인 상태를 안전하게 내보내는 방법을 설명합니다.
사전 요구사항
- 완전히 동기화된 마루 노드 (`marood`)
- 명령줄 사용에 대한 익숙함
1. 업그레이드 높이 결정
먼저, 업그레이드 높이는 거버넌스 제안을 통해 네트워크 검증인들에 의해 합의되어야 합니다. 제안이 통과되면 모든 노드 운영자는 이 정확한 높이에서 내보내기를 수행해야 합니다. 이 예에서는 업그레이드 높이를
1,000,000으로 가정하겠습니다.2. 정확한 높이에서 노드 중지
모든 검증인에 걸쳐 일관된 상태 내보내기를 보장하려면 업그레이드 높이에서
marood 프로세스를 정확하게 중지하는 것이 중요합니다. 특정 높이에서 노드가 자동으로 중지되도록 구성할 수 있습니다.# 노드의 app.toml 설정 파일에서:
halt-height = 1000000
# 그런 다음 marood 프로세스를 다시 시작합니다. 정상적으로 실행되다가
# 블록 1,000,000에 도달하면 자동으로 중지됩니다. 3. 내보내기 명령 실행
노드가 중지되면 내보내기 명령을 안전하게 실행할 수 있습니다. 이 명령은 노드의 데이터베이스에서 애플리케이션 상태를 읽고 결과 JSON을 표준 출력으로 인쇄합니다. 이 출력을 파일로 리디렉션하는 것이 좋습니다.
# 이 명령은 마지막 블록(1,000,000)에서 체인 상태를 내보내고
# `maroo_export.json`이라는 파일에 저장합니다.
marood export > maroo_export.json 주의: 내보내기 프로세스는 메모리를 많이 사용할 수 있으며 상태가 큰 체인의 경우 몇 분이 걸릴 수 있습니다. 컴퓨터에 충분한 리소스가 있는지 확인하십시오.
4. 내보낸 상태 확인 (선택 사항이지만 권장)
내보내기가 완료된 후
maroo_export.json 파일의 무결성을 확인해야 합니다. 일반적인 방법은 파일의 SHA256 해시를 계산하고 다른 검증인이나 신뢰할 수 있는 당사자가 생성한 해시와 비교하는 것입니다. 이를 통해 모든 사람이 정확히 동일한 상태에서 새 체인을 시작하는지 확인할 수 있습니다.sha256sum maroo_export.json