하이퍼레저v1.4 피어 노드 추가

min71·2021년 10월 24일
0

하이퍼레저

목록 보기
11/12

피어노드 추가

네트워크 구조

  • 기존 네트워크 구조

Orderer : orderer.example.com 1개 존재
Org1 : peer0, peer1 존재
Org2 : peer0, peer1 존재

  • 변경된 네트워크 구조

Orderer : orderer.example.com 1개 존재
Org1 : peer0, peer1, peer2 존재
Org2 : peer0, peer1, peer2, peer3 존재

네트워크 시작

cd fabric-samples/first-network
./byfn.sh up

네트워크 수정

1. crypto-config.yaml 수정

2. docker-compose-new-peer.yaml 작성

3. 암호자료 생성

../bin/cryptogen extend --config=./crypto-config.yaml

새 피어노드 시작

# 새 피어노드 시작
docker-compose -f docker-compose-new-peer.yaml up -d

# 새로 만든 피어노드 별 컨테이너 접속
# peer0.org1.example.com
docker exec -it cli bash

# peer2.org2.example.com
docker exec -it -e "CORE_PEER_ADDRESS=peer2.org2.example.com:11051" -e "CORE_PEER_LOCALMSPID=Org2MSP" -e "CORE_PEER_TLS_ENABLED=true" -e "CORE_PEER_TLS_CERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/peers/peer2.org2.example.com/tls/server.crt" -e "CORE_PEER_TLS_KEY_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/peers/peer2.org2.example.com/tls/server.key" -e "CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/peers/peer2.org2.example.com/tls/ca.crt" -e "CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp" cli bash

# peer3.org2.example.com
docker exec -it -e "CORE_PEER_ADDRESS=peer3.org2.example.com:12051" -e "CORE_PEER_LOCALMSPID=Org2MSP" -e "CORE_PEER_TLS_ENABLED=true" -e "CORE_PEER_TLS_CERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/peers/peer3.org2.example.com/tls/server.crt" -e "CORE_PEER_TLS_KEY_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/peers/peer3.org2.example.com/tls/server.key" -e "CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/peers/peer3.org2.example.com/tls/ca.crt" -e "CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/users/Admin@org2.example.com/msp" cli bash
# 체널 설정 블록 가져오기
# peer0.org1.example.com
peer channel fetch config -c mychannel

# 채널에 가입
# peer2.org2.example.com
peer channel join -b mychannel.block

# peer3.org2.example.com
peer channel join -b mychannel.block

# 체인코드 설치
# peer2.org2.example.com
peer chaincode install -n mycc -v 1.0 -p github.com/chaincode/chaincode_example02/go/

# peer3.org2.example.com
peer chaincode install -n mycc -v 1.0 -p github.com/chaincode/chaincode_example02/go/

# 체인코드 질의
# peer0.org1.example.com
export CHANNEL_NAME=mychannel
peer chaincode query -C $CHANNEL_NAME -n mycc -c '{"Args":["query","a"]}'

# peer2.org2.example.com
export CHANNEL_NAME=mychannel
peer chaincode query -C $CHANNEL_NAME -n mycc -c '{"Args":["query","a"]}'

# peer3.org2.example.com
export CHANNEL_NAME=mychannel
peer chaincode query -C $CHANNEL_NAME -n mycc -c '{"Args":["query","a"]}'

profile
한 줄 소개

0개의 댓글

관련 채용 정보