Klaytn validator 추가 에러

서비스체인에 기존 카운실이 1개로 동작중인 체인에서 validator를 추가 후
[33] Klaytn peer registration failed 관련 에러가 지속적으로 발생중입니다.
validator를 제거하고싶어도 현재 블록생성이 되지 않고있어 조치가 불가능한 상황입니다.
해결 방법이 있을까요?

안녕하세요, 클레이튼 포럼에 글을 남겨주셔서 감사합니다.
추가하려는 peer의 node account가 unlock이 되어있지 않은 상태여서 해당 에러가 발생했을 가능성이 있습니다.
account unlock의 경우 블록생성이 안되고 있는 시점에서도 가능하므로 한번 조치하시기 바랍니다.
방식은 다음과 같습니다.

  1. 콘솔창에 접속
  2. personal.unlockAccount(account,password,time) 입력
  3. true가 나오면 unlock이 성공적으로 됨.

image

위 그림처럼 블록 생성이 현재 1780에서 진행 안되고 있음에도 unlock이 잘 된 걸 보실수 있습니다.

혹시 unlock 성공후에 validator 추가가 잘 되는지 댓글 부탁드립니다. 감사합니다.

1 Like

Unlock 후에도 같은 에러가 확인됩니다.

에러로그 공유 드립니다.

WARN[02/03,18:12:36 +09] [25] [RC] timeoutEvent Sent!                   set by=catchUpRound  sequence=1 round=4 proposer=0xC7~~~ preprepare is nil?=true len(prepares)=0 len(commits)=0
WARN[02/03,18:12:36 +09] [25] [RC] sendNextRoundChange happened         where="handleTimeoutMsg. lastProposal is nil or lastProposal's number is smaller than current sequence"
ERROR[02/03,18:12:36 +09] [25] Failed to decode message from payload     address=0xBc~~~ err="unauthorized address"
INFO[02/03,18:12:46 +09] [33] [Dial] Add dial candidate from static nodes  id=a99145b8ee32a49d NodeType=1 ip=10.~~~ port="[32000 32001]"
INFO[02/03,18:12:46 +09] [33] Klaytn peer registration failed           id=a99145b8ee32a49d conn=staticdial err="fail to validate peer type: invalid address"
ERROR[02/03,18:12:46 +09] [33] Protocol istanbul/64 failed               id=a99145b8ee32a49d conn=staticdial err="fail to validate peer type: invalid address"
INFO[02/03,18:13:16 +09] [33] [Dial] Add dial candidate from static nodes  id=a99145b8ee32a49d NodeType=1 ip=10.~~~ port="[32000 32001]"
INFO[02/03,18:13:16 +09] [33] Klaytn peer registration failed           id=a99145b8ee32a49d conn=staticdial err="fail to validate peer type: invalid address"
ERROR[02/03,18:13:16 +09] [33] Protocol istanbul/64 failed               id=a99145b8ee32a49d conn=staticdial err="fail to validate peer type: invalid address"
WARN[02/03,18:13:18 +09] [25] [RC] timeoutEvent Sent!                   set by=catchUpRound  sequence=1 round=5 proposer=0xC7~~~ preprepare is nil?=true len(prepares)=0 len(commits)=0
WARN[02/03,18:13:18 +09] [25] [RC] sendNextRoundChange happened         where="handleTimeoutMsg. lastProposal is nil or lastProposal's number is smaller than current sequence"
ERROR[02/03,18:13:18 +09] [25] Failed to decode message from payload     address=0xBc~~~ err="unauthorized address"

unauthorized address, invalid address 에러가 발생하는것으로 보아
validator 추가를 하는 과정에서 빠뜨리신 부분이 있는것 같습니다.

추가적으로 주의해야 할 점을 정리해서 알려드리겠습니다.

  • 신규 nodekey 생성 → validator 추가 → 신규 node의 실행 및 연결 → static-nodes.json 파일수정의 과정으로 이루어짐
  • node 실행 전에 init 명령어를 이용해서 genesis block을 먼저 지정해줘야 함.
  • node가 validatorSet에 추가되지 않았다면 해당 노드는 연결이 거부됨.

확인해보시고 다시 시도해주시기 바랍니다. 감사합니다.

2 Likes

키생성을 homi 통해서 생성된 노드키를 활용했는데 관련 문제는 없을까요?

네 괜찮습니다. homi로 만드셔도 됩니다.

1 Like