본문 바로가기

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

[Hyperledger Fabric] 하이퍼 레저 패브릭 & 익스플로러 설치 방법 본문

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

[Hyperledger Fabric] 하이퍼 레저 패브릭 & 익스플로러 설치 방법

✍21시간 2019. 12. 31. 13:58

hyperledger explorer

하이퍼 레저 익스플로러는 블록, 트랜잭션 및 관련 데이터, 네트워크 정보 (이름, 상태, 노드 목록), 외 체인 코드 및 트랜잭션, 기타 관련 항목을 모니터링 할수있는 웹 응용 프로그램 도구 입니다~!

현재까지 릴리즈 된 최신 버전은 2019년도 12월 10일날 나온 v1.0.0-rc2가 되겠고요.. 패브릭 지원 버전은 1.4.0~1.4.4 까지 지원 된다고 하네요. (제가 최근에 2.0 beta 로 테스트 할 때 무리 없이 모니터링 되기는 했습니다;;;)

 

이만 설명은 줄이고 본론으로 들어가도록 하죠~

(이 포스팅에서는 리눅스 우분투 18.04 OS 기준으로 가이드 하도록 하고, 아무것도 설치 되어있지 않다 를 전제로 두겠습니다. 만약 패브릭이든 유틸이든 깔려있으면 해당 부분은 생략하고 진행하시면 될것같아요.)

 

 

- 의존성 및 OS

확인 된 Docker 버전 지원 :

 

 

1. 계정 생성

루트 계정 사용 시 익스플로러가 정상 동작 하지 않을 수 있으며, 동작이상을 떠나 루트 계정 사용은 왠만하면 자제 해야겠죠?

(계정 이름은 원하시는 걸 하면 되요! 이 과정에서는 explorer 라고 만들겠습니다.)

 

$sudo adduser explorer
$sudo usermod -aG sudo explorer
$su - explorer

 

 

2. 관련 필수 유틸 설치

하이퍼레저 패브릭 설치 하기 전에 관련 된 아래 유틸들을 셋팅해야 해요~

- 목록

- Nodejs 8.11.x and above (9.x is not yet supported)
- PostgreSQL 9.5 and above
- jq

- docker-ce
- docker-compose
- GO

prereqs-ubuntu.sh 쉘 안에는 유틸 설치 커맨드가 들어 있습니다.

$curl -O https://hyperledger.github.io/composer/latest/prereqs-ubuntu.sh
$chmod u+x prereqs-ubuntu.sh
$./prereqs-ubuntu.sh

 

그리고, 아래와 같은 커맨드로 고랭을 설치 다운받고, 환경변수를 셋팅 해줄께요.

$wget https://dl.google.com/go/go1.11.2.linux-amd64.tar.gz
$sudo tar -C /usr/local -xzvf go1.11.2.linux-amd64.tar.gz
$vi ~/.bashrc
#(add these 2 lines to end of file)
export GOPATH=/usr/local/go
export PATH=$PATH:$GOPATH/bin

 

마지막으로 jq를 설치 하도록 하고, 재 로그인 하겠습니다.

$sudo apt-get install jq
$exit
$su - explorer

 

 

3. 하이퍼레저 패브릭 (1.4.4) 설치

하이퍼 레저를 다운 받고, 베이직 튜토리얼인 퍼스트 네트워크를 올릴께요.

(현재 20191231 최신인 2.0 베타를 받아도 이상이 없더군요.)

$curl -sSL http://bit.ly/2ysbOFE | bash -s 1.4.4

(2.0 베타 - $curl -sSL https://bit.ly/2ysbOFE | bash -s -- 2.0.0-beta 1.4.4 0.4.18)

$cd ~/fabric-samples/first-network
$./byfn.sh generate
$./byfn.sh up

./byfn.sh up

하이퍼레저 패브릭 설치에 관련 해 자세히 알고 싶다면.. 아래 이전 포스팅 링크

https://tmjb.tistory.com/2

 

하이퍼 레저 패브릭(hyperledger fabric) 네트워크 환경 구축 (with 버추얼박스, 우분투, 도커)

블록체인은 크게 3가지가 있다고 생각하면 되요! 퍼블릭(public), 프라이빗(private), 컨소시엄(conthosium) 으로 분류 되됩니다. 이번 강좌로는 컨소시엄 블록체인을 구현할수 있는 IBM과 리눅스 재단에서 내놓은..

tmjb.tistory.com

 

 

4. 블록체인 익스플로러 소스 다운로드

$cd
$git clone https://github.com/hyperledger/blockchain-explorer.git

 

 

5. 포스트그레스 데이터베이스 설치

익스플로러는 postgreSQL DB를 사용합니다. (초창기 버전에서는 Mysql&Maria 를 썼던거 같은데...)

$sudo apt-get update
$sudo apt-get install postgresql postgresql-contrib
$service postgresql restart

아래 명령어로 상태를 확인 합니다.

$pg_lsclusters

pg_lsclusters

 

6. 데이터베이스 에 기본 구성(테이블, 데이터 등) 생성

createdb.sh 쉘을 실행시켜서 익스플로러가 필요로 하는 데이터베이스, 유저, 기본 테이블 등 을 생성 합니다.

$cd blockchain-explorer/app/persistence/fabric/postgreSQL
$chmod -R 775 db/
$cd db
$./createdb.sh

 

아래 커맨드로 생성 리스트를 확인 합니다.

$sudo -u postgres psql
$\l

생성 데이터베이스 확인 리스트

- psql 종료 명령 (exit command)

$\q

 

 

7. 익스플로러 설정 파일 수정

익스플로러도 기본 튜토리얼로 first-network를 지원하므로, first-network.json 파일을 그대로 사용 하되 3번에서 패브릭을 설치하고 네트워크를 생성할 때 만들어진 비공개키의 경로만 변경 해주면 되용

아래 경로에 위치한 파일의 주소를 기억 해 둡니다.

$ls ~/fabric-samples/first-network/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/

비공개 키 파일명

해당 경로에 위치한 json 설정 파일을 열어 기억 해 두었던 파일 path 로 대체 해주세요.

(organizations - adminPrivateKey, signedCert, peers - tlsCACerts)

$cd blockchain-explorer/app/platform/fabric/connection-profile
$vi first-network.json

first-network.json 파일

 

 

8. 익스플로러 설치 스크립트 실행 및 기동

$cd blockchain-explorer
$./main.sh install
$./start.sh

 

설치가 정상적으로 완료 되었다면 http://<Your-IP-Address>:8080 웹사이트로 억세스 할 수 있습니다.

처음접속하면 아이디와 비번 입력하는 화면이 뜨는데 해당 정보는 7번에서 설정 했던 first-network.json 파일에 기입 되어 있습니다. 디폴트는 admin:adminpw 이고요!

 

 

 

 

 

 

 

 

<하이퍼레저 패브릭>

 

하이퍼 레저 패브릭(hyperledger fabric) 네트워크 환경 구축 (with 버추얼박스, 우분투, 도커)

블록체인은 크게 3가지가 있다고 생각하면 되요! 퍼블릭(public), 프라이빗(private), 컨소시엄(conthosium) 으로 분류 되됩니다. 이번 강좌로는 컨소시엄 블록체인을 구현할수 있는 IBM과 리눅스 재단에서 내놓은..

tmjb.tistory.com

 

Comments