본문 바로가기

개발자는 오늘도 달립니다.

[Hyperledger Fabric] Hyperledger Caliper 설치 및 실행 방법 본문

블록체인/하이퍼레저패브릭

[Hyperledger Fabric] Hyperledger Caliper 설치 및 실행 방법

✍21시간 2020. 6. 8. 14:32

Caliper 란 블록체인 하이퍼레저 각종 솔루션들을 성능 테스트 하기 위해 만들어진 프레임워크 이며
간단하게 말씀드리자면 블록체인 성능 벤치마크 도구입니다!

현재 패브릭 블록체인을 성능 테스트 하기 위해서는 직접 구현 된 테스트 로직에서 해야 합니다.
하지만 Caliper 를 이용 할 경우 검증 되어진 테스트 툴 위에서 좀더 간단히 실행 해볼 수 있다는 장점이 있습니다.
물론 직접 구현 된 테스트 로직 안에서는 세심한 조작이 가능해 지므로 속도 테스트에서 유리한 이점이 있습니다.

 

 

 

 

- 현재 지원되는 각종 솔루션

  • Hyperledger Besu
  • Hyperledger Burrow
  • Ethereum
  • Hyperledger Fabric
  • FISCO BCOS
  • Hyperledger Iroha
  • Hyperledger Sawtooth

 

- 성능 측정 가능 부분

  • Transaction/read throughput
  • Transaction/read latency (minimum, maximum, average, percentile)
  • Resource consumption (CPU, Memory, Network IO, …)

 

- 설치 전 필수 확인 요소

  • node-gyp, python2, make, g++ and git (for fetching and compiling some packages during install)
  • Node.js v8.X LTS or v10.X LTS (for running Caliper)
  • Docker and Docker Compose (only needed when running local examples, or using Caliper through its Docker image)

 

Caliper 는 NPM 패키지 설치 방법과 도커 이미지 설치 방법 두가지가 존재 하는데, 저는 NPM 패키지 설치 방법을 이용 하도록 하겠습니다.

 

 

1. Caliper 벤치마크 git 저장소를 설치 합니다.

 

git clone https://github.com/hyperledger/caliper-benchmarks.git

cd caliper-benchmarks

git checkout <your Caliper version>

 

 

2. 바이너리 설치 확인 및 도움말 확인.

npx caliper --version

npx caliper --help

 

Caliper CLI help1

 

 

3. NPM 설치

 

참고로 npm을 통한 설치는 Caliper를 설치 할때 가장 권장하는 방법이기도 합니다.

~/caliper-benchmarks$ npm init -y

(해당 명령어를 통해 package.json 파일 을 생성합니다.

~/caliper-benchmarks$ npm install --only=prod @hyperledger/caliper-cli@0.3.0

(CaliperCLI 를 설치 합니다. 버전은 위와 같이 명시적으로 지정하는 것이 좋습니다.)

~/caliper-benchmarks$ npx caliper bind --caliper-bind-sut fabric:1.4.0

(CLI를 필요한 플랫폼 SDK에 바인딩 합니다.)

~/caliper-benchmarks$

  npx caliper launch master \
  --caliper-workspace . \

  --caliper-benchconfig benchmarks/scenario/simple/config.yaml \
  --caliper-networkconfig networks/fabric/v1/v1.4.0/2org1peergoleveldb/fabric-go.yaml

(적절한 매개 변수를 사용하여 로컬 CLI이진 파일(Invokex 사용)을 호출합니다. 
원하는 만큼 Fabric1.4.0 벤치 마크에 대해 이 단계를 반복할 수 있습니다.)

 

 

간단한 예제를 실행 하는 것 까지 완료 되었습니다.

더 자세한 내용을 보고 싶다면 아래 공식 사이트 문서를 봐주세요!

 

https://hyperledger.github.io/caliper/v0.3.1

Hyperledger Caliper

 

Comments