Execution 또는 Consensus 클라이언트 변경하기

정상적인 상황에서는 Rocket Pool 노드를 처음 생성할 때 Execution 및 Consensus 클라이언트를 선택하고 노드 수명 동안 행복하게 실행할 것입니다. 그러나 클라이언트 선택을 변경하고 싶은 몇 가지 상황이 있습니다. 다음은 몇 가지 예입니다.

  • 클라이언트가 Execution 또는 Beacon 체인에서 과반수 점유율을 차지하게 되어 네트워크의 전반적인 건강을 위해 변경하고 싶은 경우
  • 버그로 인해 클라이언트가 제대로 작동하지 않아 검증 작업을 재개하기 위해 빠르게 다시 온라인 상태가 되어야 하는 경우
  • 다른 클라이언트가 제공하는 새로운 기능을 시도하고 싶은 경우
  • 다른 클라이언트가 노드의 하드웨어에 더 적합한 경우(예: 일부 클라이언트는 다른 클라이언트보다 ARM 시스템에서 더 잘 작동합니다)

다행히도 Smartnode 스택은 클라이언트 변경을 매우 쉽게 만듭니다. Configuration TUI에서 몇 가지 변경과 클라이언트를 변경하기 전에 기존 클라이언트 데이터를 백업하기 위한 몇 가지 선택적 추가 명령만 있으면 됩니다.

Execution 클라이언트 변경하기

Execution 클라이언트를 변경하기 전에 다음 사항을 유의할 가치가 있습니다.

  • 체인 데이터는 클라이언트 간에 공유되지 않습니다. 새 클라이언트는 메인넷 체인 데이터를 재동기화해야 하며, 이는 약간의 시간이 걸릴 수 있습니다(각 클라이언트는 Smartnode가 재동기화 속도를 높이는 데 사용하는 스냅 동기화를 지원하지만).
  • 기본적으로 Smartnode는 이전 Execution 클라이언트로 되돌리고 중단한 지점부터 다시 시작하려는 경우를 대비하여 드라이브에 이전 클라이언트의 체인 데이터를 남겨둡니다. Execution 클라이언트는 수백 기가바이트를 사용할 수 있으므로 클라이언트를 변경하기 전에 다른 위치로 내보내고 삭제하여 공간을 확보할 수 있습니다. 아래에 이를 수행하는 방법에 대한 단계가 있습니다.
  • 새 클라이언트가 재동기화하는 동안 대부분의 Smartnode CLI 기능은 Execution 클라이언트에 의존하므로 오프라인 상태가 됩니다. Smartnode의 다운타임을 완화하기 위해 이 작업을 수행하기 전에 대체 Execution 클라이언트를 사용할 수 있어야 합니다.

(선택 사항) Execution 클라이언트의 데이터베이스 내보내기

프로세스의 첫 번째 단계는 선택 사항입니다. 원하는 경우 현재 Execution 클라이언트의 기존 체인 데이터를 내보낼 수 있습니다. 이렇게 하면 새 Execution 클라이언트를 위해 노드의 귀중한 디스크 공간을 확보할 수 있으며, 이전 클라이언트로 되돌리고 중단한 지점부터 다시 시작하려는 경우를 대비하여 이전 체인 데이터를 보관할 수 있습니다.

자세한 내용은 노드 백업하기 가이드를 참조하십시오.

선택한 Execution 클라이언트 변경하기

선택한 클라이언트를 변경하려면 rocketpool service config를 실행하여 설정 UI로 들어갑니다. Execution Client (ETH1) 섹션으로 이동하고 Execution Client 드롭다운을 선택합니다.

Enter로 드롭다운을 열고 화살표 키를 사용하여 선택한 클라이언트로 이동한 후 Enter를 다시 눌러 선택을 확인합니다.

각 클라이언트에는 고유한 옵션이 있으므로 다른 클라이언트를 선택한 후 이 화면에 일부 추가 설정이 나타날 수 있습니다. 자유롭게 탐색하여 어떻게 영향을 미치는지 확인하십시오.

선택에 만족하면 Esc를 눌러 메인 메뉴로 돌아간 다음 Tab을 눌러 Review Changes and Save 버튼을 강조 표시합니다. 클라이언트 선택 변경을 보여주는 검토 화면이 표시됩니다.

Enter를 눌러 변경 사항을 수락하면 완료됩니다! 새 Execution 클라이언트가 즉시 동기화를 시작합니다. 평소와 같이 rocketpool service logs eth1로 팔로우할 수 있습니다. 오류가 없고 제대로 작동하는지 확인하기 위해 이 작업을 수행할 것을 권장합니다.

참고

Execution과 Consensus 레이어가 병합되었으므로 Execution 클라이언트를 중단하면 Execution 클라이언트가 재동기화를 완료할 때까지 Consensus 클라이언트도 중단됩니다. 이는 노드가 블록 증명 및 제안을 중지하고 ETH를 얻는 대신 유출된다는 것을 의미합니다!

이를 방지하고 Execution 클라이언트가 재동기화하는 동안 계속 검증하려면 대체 노드를 설정하십시오.

(권장) 이전 체인 데이터 제거하기

이것은 필수 단계는 아니지만 새 클라이언트로 전환한 후 이전 클라이언트의 체인 데이터를 제거하여 디스크 공간을 확보할 것을 강력히 권장합니다.

이렇게 하려면 다음 명령을 실행하기만 하면 됩니다.

rocketpool service resync-eth1

이것은 모든 Execution 클라이언트 데이터를 삭제하고 처음부터 다시 시작합니다.

방금 새 Execution 클라이언트를 선택했으므로 영향을 받지 않습니다. 기본적으로 이전 체인 데이터를 삭제하기만 합니다. 새 클라이언트의 불필요한 진행 손실을 방지하기 위해 클라이언트를 전환한 후 가능한 한 빨리 이 작업을 수행해야 합니다.

Consensus 클라이언트 변경하기

Checkpoint Sync 덕분에 Consensus 클라이언트를 변경하는 것은 Execution 클라이언트보다 훨씬 쉽습니다. 이 기능을 사용하면 새 Consensus 클라이언트를 네트워크와 즉시 동기화할 수 있으므로 이전 체인 데이터를 보존할 필요가 없습니다.

rocketpool service config UI를 사용하여 Consensus Client (ETH2) 섹션으로 이동하는 것으로 시작합니다. 다음으로 Consensus Client 드롭다운을 선택합니다.

Enter로 드롭다운을 열고 화살표 키를 사용하여 선택한 클라이언트로 이동한 후 Enter를 다시 눌러 선택을 확인합니다.

각 클라이언트에는 고유한 옵션이 있으므로 다른 클라이언트를 선택한 후 이 화면에 일부 추가 설정이 나타날 수 있습니다. 자유롭게 탐색하여 어떻게 영향을 미치는지 확인하십시오.

다음으로 Checkpoint Sync 제공자를 사용하고 있는지 확인합니다.

Checkpoint Sync 제공자가 구성되어 있지 않으면 여기의 지침을 사용하여 무료로 쉽게 수행할 수 있습니다!

선택에 만족하면 Esc를 눌러 메인 메뉴로 돌아간 다음 Tab을 눌러 Review Changes and Save 버튼을 강조 표시합니다. 클라이언트 선택 변경을 보여주는 검토 화면이 표시됩니다.

Enter를 눌러 변경 사항을 수락하면 완료됩니다! 새 Consensus 클라이언트가 즉시 동기화를 시작합니다. 평소와 같이 rocketpool service logs eth2로 팔로우할 수 있습니다. 오류가 없고 제대로 작동하는지 확인하기 위해 이 작업을 수행할 것을 권장합니다.