无法通过对等超级账本结构与订购者通信

Pan*_*ema 8 google-cloud-platform kubernetes hyperledger hyperledger-fabric kubernetes-helm

我正在使用本机kubernetes引擎在Google云平台上使用具有动态配置(动态pod分配)的多节点环境进行结构的设置。

我正在使用头盔进行部署。因此,让我告诉您正在成功运行的实体。

1-> 1个具有Pod名称的订购者 ord1-hlf-ord-54bbffd6f7-4qtxd

2-> 1个pod的PodDB名称 cdb-peer1-hlf-couchdb-7cf88678b8-74426

3-> 1个具有Pod名称的同位体 peer1-hlf-peer-6c5f6886d4-wrddj

到现在一切都很好。让我在下面粘贴一些有用命令的结果

kubectl get nodes

master    Ready    master   138m   v1.14.1
worker1   Ready    <none>   135m   v1.14.1
Run Code Online (Sandbox Code Playgroud)

kubectl get ns

default           Active   141m
kube-node-lease   Active   141m
kube-public       Active   141m
kube-system       Active   141m
orderers          Active   122m
peers             Active   122m
Run Code Online (Sandbox Code Playgroud)

kubectl get pods -n peers

cdb-peer1-hlf-couchdb-7cf88678b8-74426   1/1     Running   0          114m
peer1-hlf-peer-6c5f6886d4-wrddj          1/1     Running   0          33m     
Run Code Online (Sandbox Code Playgroud)

kubectl get pods -n orderers

NAME                            READY   STATUS    RESTARTS   AGE
ord1-hlf-ord-54bbffd6f7-4qtxd   1/1     Running   0          120m
Run Code Online (Sandbox Code Playgroud)

kubectl get svc -A

NAMESPACE     NAME                    TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)                  AGE
default       kubernetes              ClusterIP   10.96.0.1        <none>        443/TCP                  144m
kube-system   kube-dns                ClusterIP   10.96.0.10       <none>        53/UDP,53/TCP,9153/TCP   144m
kube-system   tiller-deploy           ClusterIP   10.111.43.221    <none>        44134/TCP                138m
orderers      ord1-hlf-ord            ClusterIP   10.105.9.161     <none>        7050/TCP                 121m
peers         cdb-peer1-hlf-couchdb   ClusterIP   10.99.87.182     <none>        5984/TCP                 117m
peers         peer1-hlf-peer          ClusterIP   10.110.219.142   <none>        7051/TCP,7053/TCP        35m
Run Code Online (Sandbox Code Playgroud)

现在,您可以看到ord1-hlf-ord订购者正在使用服务名称运行,因此我正在按照kubernetes模式进行连接,service-name.namespace.svc.cluster.local因此我尝试ord1-hlf-ord.orderers.svc.cluster.local:7050在以下命令中连接订购者:

kubectl exec -n peers $PEER_POD -- su -c "CORE_PEER_MSPCONFIGPATH=/var/hyperledger/admin_msp peer channel create -o ord1-hlf-ord.orderers.svc.cluster.local:7050 -c mychannel -f /hl_config/channel/channel.tx" 
Run Code Online (Sandbox Code Playgroud)

但是我无法连接到订购者

我想告诉您的另一件事是,当我使用命令进入对等的Pod kubectl exec -it peer1-hlf-peer-6c5f6886d4-wrddj bash -n peers并尝试运行时apt-get update,通过安装ping可以检查对等体是否能够对订购者执行ping命令,然后我遇到了错误

root@peer1-hlf-peer-6c5f6886d4-wrddj:/# apt-get update
Err:1 http://security.ubuntu.com/ubuntu xenial-security InRelease        
  Temporary failure resolving 'security.ubuntu.com'
Err:2 http://archive.ubuntu.com/ubuntu xenial InRelease                  
  Temporary failure resolving 'archive.ubuntu.com'
Err:3 http://archive.ubuntu.com/ubuntu xenial-updates InRelease
  Temporary failure resolving 'archive.ubuntu.com'
Err:4 http://archive.ubuntu.com/ubuntu xenial-backports InRelease
  Temporary failure resolving 'archive.ubuntu.com'
Reading package lists... Done        
W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/xenial/InRelease  Temporary failure resolving 'archive.ubuntu.com'
W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/xenial-updates/InRelease  Temporary failure resolving 'archive.ubuntu.com'
W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/xenial-backports/InRelease  Temporary failure resolving 'archive.ubuntu.com'
W: Failed to fetch http://security.ubuntu.com/ubuntu/dists/xenial-security/InRelease  Temporary failure resolving 'security.ubuntu.com'
W: Some index files failed to download. They have been ignored, or old ones used instead.
Run Code Online (Sandbox Code Playgroud)

如果有人面对这个问题的原因,那么请告诉我。

提前致谢

ViK*_*KiG 1

应用 IP 地址时是否正常工作orderer。然后可能尝试在您的文件中输入它的条目/etc/hosts。该条目看起来像

    10.105.9.161 ord1-hlf-ord.orderers.svc.cluster.local
Run Code Online (Sandbox Code Playgroud)

这应该允许您解析 DNS,您可以通过 ping 检查这一点ord1-hlf-ord.orderers.svc.cluster.local