Fabric-CA生产环境部署

增加新组织

小韦云科技-区块链+小程序+公众号+商城+分销+直播+企业官网+外贸电商-为您提供优质的开发服务-电话/微信联系:18123611282

在现实中,区块链联盟大部分都不可能一开始就能确定下来的,往往都是在运营过程中不断有新组织加进来,因此动态增加组织是很有必须的

使用TLS CA服务端生成组织3的TLS证书

cd ~/test-ca
cp /opt/hyperledger/tls-ca/crypto/ca-cert.pem /opt/hyperledger/tls-ca/crypto/tls-ca-cert.pem
export FABRIC_CA_CLIENT_TLS_CERTFILES=/opt/hyperledger/tls-ca/crypto/tls-ca-cert.pem
export FABRIC_CA_CLIENT_HOME=/opt/hyperledger/tls-ca/admin
fabric-ca-client register -d --id.name peer1-org3 --id.secret peer1PW --id.type peer -u https://0.0.0.0:7052

创建并启动组织3的CA服务器

cd ~/test-ca
docker-compose -f ca-org3.yml up -d

ca-org3.yml 可从这里下载,它包括下面几个容器

  • rca-org3:组织3的CA容器
  • cli-org3:连接到组织3节点1的CLI容器

在Org3上注册以下身份

  • 对等1(peer1-org3)
  • 管理员(admin1-org3)
  • 最终用户(user-org3)
export FABRIC_CA_CLIENT_TLS_CERTFILES=/opt/hyperledger/org3/ca/crypto/ca-cert.pem
export FABRIC_CA_CLIENT_HOME=/opt/hyperledger/org3/ca/admin
fabric-ca-client enroll -d -u https://rca-org3-admin:rca-org3-adminpw@0.0.0.0:7056
fabric-ca-client register -d --id.name peer1-org3 --id.secret peer1PW --id.type peer -u https://0.0.0.0:7056
fabric-ca-client register -d --id.name admin-org3 --id.secret org3AdminPW --id.type user -u https://0.0.0.0:7056
fabric-ca-client register -d --id.name user-org3 --id.secret org3UserPW --id.type user -u https://0.0.0.0:7056

配置peer节点

把组织3的CA服务器上的ca-cert.pem复制到指定目录

mkdir -p /opt/hyperledger/org3/peer1/assets/ca/
cp /opt/hyperledger/org3/ca/crypto/ca-cert.pem /opt/hyperledger/org3/peer1/assets/ca/org3-ca-cert.pem

获取组织3节点1的节点证书

export FABRIC_CA_CLIENT_HOME=/opt/hyperledger/org3/peer1
export FABRIC_CA_CLIENT_TLS_CERTFILES=/opt/hyperledger/org3/peer1/assets/ca/org3-ca-cert.pem
export FABRIC_CA_CLIENT_MSPDIR=msp
fabric-ca-client enroll -d -u https://peer1-org3:peer1PW@0.0.0.0:7056

获取组织3节点1的TLS证书,用于HTTPS请求,需要先从组织0(注意不是组织3的CA服务器)上的TLS CA服务器上的ca-cert.pem复制(或下载)到指定目录

mkdir -p /opt/hyperledger/org3/peer1/assets/tls-ca
cp /opt/hyperledger/tls-ca/crypto/tls-cert.pem /opt/hyperledger/org3/peer1/assets/tls-ca/tls-ca-cert.pem

执行获取组织3节点1的TLS证书操作

export FABRIC_CA_CLIENT_MSPDIR=tls-msp
export FABRIC_CA_CLIENT_TLS_CERTFILES=/opt/hyperledger/org3/peer1/assets/tls-ca/tls-ca-cert.pem
fabric-ca-client enroll -d -u https://peer1-org3:peer1PW@0.0.0.0:7052 --enrollment.profile tls --csr.hosts peer1-org3
find /opt/hyperledger/org3/peer1/tls-msp/keystore/* -exec mv {} /opt/hyperledger/org3/peer1/tls-msp/keystore/key.pem \;

获取org3的管理员证书

获取org3的管理员证书

export FABRIC_CA_CLIENT_HOME=/opt/hyperledger/org3/admin
export FABRIC_CA_CLIENT_TLS_CERTFILES=/opt/hyperledger/org3/peer1/assets/ca/org3-ca-cert.pem
export FABRIC_CA_CLIENT_MSPDIR=msp
fabric-ca-client enroll -d -u https://admin-org3:org3AdminPW@0.0.0.0:7056

把组织1的admin证书复制(或下载)到peer1指定的admincerts目录下

mkdir /opt/hyperledger/org3/peer1/msp/admincerts
cp /opt/hyperledger/org3/admin/msp/signcerts/cert.pem /opt/hyperledger/org3/peer1/msp/admincerts/org3-admin-cert.pem

启动peer节点

上面组织3的节点配置完后,就可以启动了

cd ~/test-ca
docker-compose -f peer-org3.yml up -d

peer-org3.yml 可从这里下载,它包括下面容器

  • peer1-org3:组织3的peer1容器

把peer节点加入通道中

下载通道配置文件

cp /opt/hyperledger/org0/orderer/channel.tx /opt/hyperledger/org3/peer1/assets/channel.tx
cp /opt/hyperledger/org1/peer1/assets/mychannel.block /opt/hyperledger/org3/peer1/assets/mychannel.block

配置管理员目录结构

mkdir /opt/hyperledger/org3/admin/msp/admincerts
cp /opt/hyperledger/org3/admin/msp/signcerts/cert.pem /opt/hyperledger/org3/admin/msp/admincerts/org3-admin-cert.pem

进入组织3的peer容器中

docker exec -it cli-org3 sh

把当前的peer节点加入到通道中

export CORE_PEER_MSPCONFIGPATH=/opt/hyperledger/org3/admin/msp
export CORE_PEER_ADDRESS=peer1-org3:7051
peer channel join -b /opt/hyperledger/org3/peer1/assets/mychannel.block

执行查询peer节点加入的通道,看看通道是否加入成功

peer channel list

本文由小韦云原创,转载请注明出处:https://bctos.cn/doc/14/1912,否则追究其法律责任

关键词:fabric 增加组织

广告位招商