메인 콘텐츠로 건너뛰기
이 페이지에서는 op-conductor 서비스가 무엇이며 개략적으로 어떻게 동작하는지 설명합니다. 기존 네트워크에 추가하려면 설정 가이드를 따르십시오. 전체 플래그 및 RPC 목록은 구성 및 RPC 레퍼런스를 참고하십시오.

sequencer 안정성 및 가용성 향상

op-conductor는 고가용성 구성에서 sequencer의 안정성과 가용성을 높이기 위해 설계된 보조 서비스입니다. op-conductor는 단일 장애 지점(single point of failure)과 관련된 위험을 최소화하여 sequencer가 계속 동작하고 응답할 수 있도록 보장합니다.

전제 조건

op-conductor는 비잔틴 장애 허용(Byzantine fault tolerance, BFT)을 포함하지 않는다는 점에 유의해야 합니다. 즉, 이 시스템은 참여하는 모든 node가 정직하고 올바르게 동작한다는 가정하에 운영됩니다.

보장 사항 요약

op-conductor의 설계는 다음을 보장합니다.
  • unsafe reorg 없음
  • 네트워크 분할 중 unsafe head 정체 없음
  • node 장애가 1개 이하일 때 100% 가동 시간

설계

op-conductor. 개략적으로 op-conductor는 다음 기능을 수행합니다.

Raft 합의 레이어 참여

  • 리더 결정: Raft 합의 알고리즘에 참여하여 sequencer 중 리더를 결정합니다.
  • 상태 관리: 최신 unsafe 블록을 저장하여 시스템 전체의 일관성을 보장합니다.

RPC 요청 처리

  • Admin RPC: 수동 복구 시나리오를 위한 관리용 RPC를 제공합니다. 리더십 투표 중지, 클러스터에서 자신을 제거하는 기능 등이 포함되며 이에 국한되지 않습니다.
  • Health RPC: op-node가 트랜잭션과 unsafe 블록의 게시를 허용할지 판단할 수 있도록 health RPC를 제공합니다.

sequencer 상태 모니터링

  • 최적의 성능과 안정성을 보장하기 위해 sequencer(op-node)의 상태를 지속적으로 모니터링합니다.

제어 루프 관리

  • sequencer(op-node)의 상태를 관리하는 제어 루프를 구현합니다. 여기에는 다양한 시나리오와 상태 검사에 따라 동작을 시작하고 중지하는 것이 포함됩니다.

Conductor 상태 전이

다음은 op-conductor가 sequencer의 Raft 합의를 관리하는 방식을 나타낸 상태 머신 다이어그램입니다. op-conductor 상태 전이. 유용한 팁: 그래프를 더 잘 이해하려면 한 번에 하나의 node에 집중하여, 어떤 상태에서 현재 상태로 전이될 수 있는지, 그리고 현재 상태에서 다른 상태로 어떻게 전이될 수 있는지 파악하십시오. 이렇게 하면 상태 전이를 처리하는 방식을 이해할 수 있습니다.

다음 단계

  • 설정 가이드를 따라 다운타임 없이 기존 다중 sequencer 네트워크에 op-conductor를 추가하십시오.
  • 구성 및 RPC 레퍼런스에서 플래그와 admin RPC를 확인하십시오.
  • op-conductor-mon을 확인하십시오. 이 도구는 여러 op-conductor 인스턴스를 모니터링하고 메트릭 보고를 위한 통합 인터페이스를 제공합니다.
  • op-conductor와 상호작용하기 위해 op-conductor-ops에 익숙해지십시오.