권고 삭제 구성

기본 구성 파일은 새로운 ledger 버전을 사용할 수 있게 되면 오래된 XRP ledger 상태 및 트랜잭션 기록을 자동으로 삭제하도록 ripppled를 설정합니다. 서버가 피크 시간대에 대부분의 하드웨어 리소스를 사용하는 경우, 사용량이 적은 시간에 실행되도록 예약된 명령에 의해 메시지가 표시될 때만 ledger을 삭제하도록 서버를 구성하여 온라인 삭제가 서버 성능에 영향을 덜 미치도록 할 수 있습니다.

요구 조건

이 튜토리얼에서는 서버가 다음 사전 요구 사항을 충족한다고 가정합니다:

  • 지원되는 운영 체제를 사용 중입니다: 우분투 리눅스, 레드햇 엔터프라이즈 리눅스(RHEL) 또는 CentOS.

  • rippled 서버가 이미 설치되어 있고 온라인 삭제가 활성화되어 있습니다. 기본 구성 파일은 2000 ledger 버전 이후 온라인 삭제를 사용하도록 설정합니다.

  • 크론 데몬이 설치되어 실행 중입니다. 우분투 리눅스는 기본적으로 크론 데몬을 실행합니다. RHEL 또는 CentOS에서는 cronie 패키지를 설치할 수 있습니다:

$ sudo yum install cronie
  • 서버에 선택한 양의 기록을 ledger 저장소에 저장할 수 있는 충분한 디스크 공간이 있습니다. 다양한 구성에 필요한 스토리지 양에 대한 자세한 내용은 용량 계획을 참조하세요. 권고 삭제를 사용하도록 설정한 경우, 서버가 삭제하기 전에 누적할 수 있는 최대 기록은 online_delete 설정에 구성된 ledger 버전 수에 온라인 삭제 프롬프트 사이의 시간을 더한 값과 같습니다.

  • 서버가 가장 덜 바쁜 시간을 알 수 있습니다.

구성 단계

일별 일정으로 권고 삭제를 구성하려면 다음 단계를 수행하세요:

  1. rippled 구성 파일의 [node_db] 구절에서 advisory_delete를 사용 설정합니다.

[node_db]
# Other settings unchanged ...
online_delete=2000
advisory_delete=1
  • 메시지가 표시될 때만 온라인 삭제를 실행하려면 advisory_delete를 1로 설정합니다. (새 ledger 버전을 사용할 수 있게 되면 자동으로 온라인 삭제를 실행하려면 0으로 설정합니다.)

  • 온라인 삭제를 실행한 후 보관할 최소 장부 버전 수로 online_delete를 설정합니다. 서버는 온라인 삭제가 실행될 때까지 이보다 더 많은 기록을 누적합니다.

권장 설치는 기본적으로 구성 파일 /etc/opt/ripple/rippled.cfg를 사용합니다. 구성 파일을 저장할 수 있는 다른 위치로는 $HOME/.config/ripple/rippled.cfg(여기서 $HOME은 ripppled를 실행하는 사용자의 홈 디렉터리), $HOME/.local/ripple/rippled.cfg 또는 ripppled를 시작한 현재 작업 디렉터리 등이 있습니다.

  1. can_delete 메소드를 테스트 실행하여 서버에 온라인 삭제를 실행하라는 메시지를 표시합니다. rippled 커맨드라인 인터페이스를 사용하여 이 명령을 실행할 수 있습니다. 예를 들어:

$ rippled --conf=/etc/opt/ripple/rippled.cfg can_delete now

응답은 서버가 ledger 저장소에서 삭제할 수 있는 최대 ledger 인덱스를 나타냅니다. 예를 들어, 다음 메시지는 ledger 인덱스 43633667까지 포함된 ledger 버전을 삭제할 수 있음을 나타냅니다:

{
  "result": {
    "can_delete": 43633667,
    "status": "success"
  }
}

서버는 보유하고 있는 최신 유효성 검사된 ledger 버전 수가 온online_delete 설정과 같거나 큰 경우에만 해당 ledger 버전을 삭제합니다.

  1. 예약된 시간에 이전 단계에서 테스트한 can_delete 메소드를 실행하도록 크론 데몬을 구성합니다. 크론 구성을 편집합니다:

$ crontab -e

다음 예에서는 매일 오전 1시 5분 서버 시간에 삭제를 실행하도록 서버를 설정합니다:

5 1 * * * rippled --conf /etc/opt/ripple/rippled.cfg can_delete now

서버의 구성된 표준 시간대를 기준으로 명령이 실행되도록 예약해야 합니다.

Tip:

advisory_delete를 비활성화한 경우에는 온라인 삭제를 실행하기 위해 크론 작업을 예약할 필요가 없습니다. 이 경우 서버의 가장 오래된 유효성 검사된 ledger 버전과 현재 유효성 검사된 ledger 버전 간의 차이가 온라인_삭제 값 이상일 때 rippled이 자동으로 online_delete를 실행합니다.

  1. rippled 서비스를 시작(또는 재시작)합니다.

$ sudo systemctl restart rippled
  1. server_info 메소드를 사용하여 서버의 complete_ledgers 범위를 주기적으로 확인하여 ledger이 예정대로 삭제되고 있는지 확인합니다. 온라인 삭제 후 complete_ledgers의 가장 낮은 ledger 인덱스가 증가해야 합니다. 서버의 사용량과 한 번에 삭제하는 기록의 양에 따라 삭제가 실행될 때 완료하는 데 몇 분 정도 걸릴 수 있습니다.

문제 해결

온라인 삭제를 구성한 후에도 온라인 삭제가 실행되지 않는 것 같으면 다음을 시도해 보세요:

  • 크론 작업을 구성한 사용자에게 rippled 서버를 커맨드라인 클라이언트로 실행할 수 있는 권한이 있는지 확인합니다.

  • 크론 작업의 구문과 실행 예정 시간을 확인합니다.

  • rippled된 실행 파일이 크론 구성에 지정된 경로에서 사용할 수 있는지 확인합니다. 필요한 경우 실행 파일의 절대 경로(예: /opt/ripple/bin/rippled)를 지정하세요.

  • rippled 로그에서 SHAMapStore::WRN으로 시작하는 메시지가 있는지 확인합니다. 서버가 네트워크와 동기화되지 않아 온라인 삭제가 중단되고 있음을 나타낼 수 있습니다.

Last updated