2016-12-21 1 views
0

하나의 멤버 자격 서비스와 하나의 유효성을 검사하는 동료로 구성된 Hyperledger 설정이 있습니다.하이퍼 리더의 피어를 다시 시작하지 못했습니다.

다음 명령을 사용하여 회원 서비스를 실행하고 피어의 유효성을 검사 할 수 있습니다.

회원 서비스 :

docker run --name c_membersrvc --net mynet --ip 172.17.0.50 --rm -it -e MEMBERSRVC_CA_ACA_ENABLED=true hyperledger/fabric-membersrvc membersrvc 

검증 피어 : 그러나

docker run --name c_vp0 --net mynet --ip 172.17.0.100 -p 172.17.0.1:7050:7050 -p 172.17.0.1:7053:7053 --rm -it -v /var/run/docker.sock:/var/run/docker.sock -e CORE_VM_ENDPOINT=unix:///var/run/docker.sock -e CORE_PEER_ID=vp0 -e CORE_PEER_ADDRESSAUTODETECT=true -e CORE_PEER_VALIDATOR_CONSENSUS_PLUGIN=noop -e CORE_LOGGING_LEVEL=ERROR -e CORE_SECURITY_ENABLED=true -e CORE_SECURITY_PRIVACY=true -e CORE_PEER_PKI_ECA_PADDR=172.17.0.50:7054 -e CORE_PEER_PKI_TCA_PADDR=172.17.0.50:7054 -e CORE_PEER_PKI_TLSCA_PADDR=172.17.0.50:7054 -e CORE_SECURITY_ENROLLID=test_vp0 -e CORE_SECURITY_ENROLLSECRET=MwYpmSRjupbT hyperledger/fabric-peer peer node start 

, 내가 확인하는 피어를 중지하고 동일한 명령을 사용하여 다시 시작할 때 위에 표시된대로, 나는 발생하는 다음과 같은 오류 :

Error: rpc error: code = 2 desc = Identity or token does not match. 

다시 시작할 때 유효성이있는 피어를 성공적으로 다시 시작할 수 있습니다. 먼저 회원 서비스. 실제 배포에서 필자는 유효성을 검사하는 피어 (peer)가 다시 시작해야 할 때마다 멤버 서비스를 다시 시작한다고 생각하지 않습니다.

회원 서비스를 다시 시작하지 않고도 유효성을 검사하는 피어를 성공적으로 다시 시작할 수있는 다른 방법이 있습니까?

오류에서 비슷한 게시물을 보았습니다 ID 또는 토큰이과 일치하지 않지만 이것은 유효성이있는 피어를 통한 사용자/클라이언트 로그인으로 인한 것입니다. 제안 된 솔루션은 Node.js SDK를 사용하여 클라이언트를 등록/등록하는 것입니다. 동일한 솔루션이 유효성을 검사하는 피어 다시 시작 문제에 적용 가능한지 확실하지 않습니다. VP가 처음 그것을 시작

답변

1

:

  1. 이 core.yaml
  2. 에서 enrollID 및 enrollSecret를 읽는 회원 서비스에 이러한 자격 증명을 보내고 응답으로 등록 인증서를받습니다.
  3. 가 등록 인증서를 저장은/var/hyperledger /의 prodution에서/...

당신이 부사장을 다시 시작하려고 폴더, 고정 표시기가 비어 /var/hyperledger/prodution/... 폴더와 새 컨테이너를 만듭니다. VP가 동일한 자격 증명을 사용하여 새로운 Enrloment 인증서를 생성하려고 시도하지만 회원 서비스가이 요청을 Identity or token does not match. 오류 메시지와 함께 거부합니다. 이는 계정 당 하나의 등록 인증서 만 생성 될 수 있기 때문에 발생합니다.

멤버쉽 서비스가 다시 시작될 경우 - 처음부터 시작되며 이전 등록에 대한 정보가 없으므로 다음 등록 요청이 수락됩니다.

옵션으로 인증서를 컨테이너 외부에 저장할 수 있습니다. 호스트 시스템의 모든 폴더를 컨테이너의 /var/hyperledger/prodution/...에 매핑하면됩니다.

+0

감사합니다. @Sergey. 이 방법을 시도해 보겠습니다. –

+0

안녕하세요 @ Sergey. 나는 그것을 시도했지만 오류가 발생했습니다 : 'DB를 여는 중 오류가 발생했습니다 : IO 오류'. 세부 사항을 설명하는 또 다른 질문을 게시 할 것입니다. –

관련 문제