hyperledger-fabric에 블록체인 배우기 (2/9) 샘플 이동

hyperledger-fabric에 블록체인 배우기 (1/9) 블록체인이란?
⇒ hyperledger-fabric에 블록체인 배우기 (2/9) 샘플 이동
hyperledger-fabric에 블록체인 배우기 (3/9) 블록 보기
hyperledger-fabric에 블록체인 배우기 (4/9) kafka 넣기
hyperledger-fabric에 블록체인 배우기 (5/9) 시각화

환경 구축



  • 준비하는 것
  • CentOS7 메모리 4GB 이상 ※ 코멘트 참조


  • 블록체인 네트워크 환경
  • fabric-sdk: 1.4
  • 체인 코드 : golang
  • 클라이언트: node.js


  • 블록체인 네트워크 구성
    (fabric-sample/balance-transfer)
  • 1 조직 2Peer
  • 2 조직
  • orderer 1개
  • kafka 없음


  • 블록체인 네트워크 구성을 그림으로 나타내면 다음과 같다.
    orderer는 트랜잭션을 순서대로 처리하기 위한 것.
    단일 장애점이 되므로 중복하는 것이 좋다(대응 방법 조사 중...)



    설치 절차


  • 설치할 것
  • git
  • jq
  • docker
  • node
  • golang
  • fabric-sample (git clone)


  • git 설치
    sudo yum install -y git
    

    jq 설치
    sudo yum install -y jq
    

    docker 설치
    sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    sudo yum makecache fast
    sudo yum install -y docker-ce
    

    node는 package.json에 지정된 버전을 포함합니다. 아마 최신이라도 움직인다.

    노드 설치
    curl -sL https://rpm.nodesource.com/setup_8.x | sudo bash -
    sudo yum install -y nodejs-8.9.4 # node8.9, npm 5.6
    

    golang 설치
    sudo yum install -y golang
    

    fabric-sample의 clone
    mkdir -p /var/www
    cd /var/www/
    git clone https://github.com/hyperledger/fabric-samples.git
    

    실행 절차



  • 사전 준비
  • docker 시작
  • node client 시작
  • 채널 만들기
  • 채널에 참가
  • 체인 코드 설치
  • 채널 초기화


  • 실행
  • 체인 코드 실행
  • 블록 획득
  • channel 정보 취득


  • 사전 준비부터 실행은 쉘 2개로 완료

    사전 준비부터 실행까지
    cd /var/www/fabric-samples/balance-transfer
    ./runApp.sh
    ./testAPIs.sh
    

    실행 결과

    머신 파워를 필요로 하기 때문에, 순조롭게 움직이지 않는 것이 있다고 생각합니다.
    fabricSDK의 호출은 몇개나 고쳐 갑니다만, 이번은 channel의 초기화에 손을 넣습니다.
    channel의 초기화(instantiate) 호출은, instantiate-chaincode.js 그리고 행해집니다.

    instantiate-chaincode.js의 timeout을 60초에서 180초로 변경(2곳)
    let results = await channel.sendInstantiateProposal(request, 60000); //instantiate takes much longerlet results = await channel.sendInstantiateProposal(request, 180000); //instantiate takes much longer}, 60000);}, 180000);
    node client가 시작될 때 npm install이 실행됩니다. 이때 gcc 에러가 나오는 경우가 있으므로, 이하를 참고해 주세요.
    Failed install script 'node-gyp rebuild'
    npm install -g node-gypnpm config set python /usr/bin/pythonyum install gcc-c++

    좋은 웹페이지 즐겨찾기