我正在尝试使用Kubernetes中的CLI容器创建一个通道。但是,它失败并显示以下错误消息:
Error: failed to create deliver client for orderer: failed to load config for OrdererClient: unable to load orderer.tls.clientKey.file: open : no such file or directory command terminated with exit code 1
我到处搜索orderer.tls.clientKey.file
设置-没有成功。
问题:该设置应位于何处?
我已经在CLI和订购者处将其作为环境变量进行了尝试,并且在对等方的orderer
文件中引入了一个新的core.yaml
部分-一切都失败了。
启用TLS,客户端身份验证和NodeOU(如果这很重要)。
HLF版本2.1
频道创建命令:
export CORE_PEER_MSPCONFIGPATH=/config/admin/msp
peer channel create -c channel1 -f /config/peer/channel1.tx -o org1-orderer:30011 --outputBlock /channels/channel1.block --clientauth --tls --cafile /config/peer/tls-msp/tlscacerts/ca-cert.pem
CLI环境变量:
env:
- name: FABRIC_LOGGING_SPEC
value: grpc=debug
- name: CORE_PEER_ID
value: org1-cli
- name: CORE_PEER_ADDRESS
value: org1-peer1:30151
- name: CORE_PEER_LOCALMSPID
value: Org1MSP
- name: CORE_PEER_TLS_ENABLED
value: "true"
- name: CORE_PEER_TLS_ROOTCERT_FILE
value: /config/peer/tls-msp/tlscacert/ca-cert.pem
- name: CORE_PEER_TLS_CLIENTAUTHREQUIRED
value: "true"
- name: CORE_PEER_TLS_CLIENTCERT_FILE
value: /config/peer/tls-msp/signcerts/cert.pem
- name: CORE_PEER_TLS_CLIENTKEY_FILE
value: /config/peer/tls-msp/keystore/key.pem
- name: CORE_PEER_MSPCONFIGPATH
value: /config/peer/msp
答案 0 :(得分:2)
我假设您想要Mutual TLS,就像服务器和客户端身份验证一样。如果是这种情况,那么(我认为)您需要一个包含PEM编码的私钥的密钥文件,以便在两个地方用于与订购者端点进行相互TLS通信:像您一样的CLI环境变量,以及在create channel命令本身中
--keyfile <Path to file containing PEM-encoded private key>
。