Postgresql 在多台主机上虚拟化hyperledger网络时出现问题

Postgresql 在多台主机上虚拟化hyperledger网络时出现问题,postgresql,blockchain,hyperledger-explorer,Postgresql,Blockchain,Hyperledger Explorer,我已经完成了教程 我连接了3台主机,所有服务都启动了。我在PC2主机中运行./script.sh时得到了正确的结果。 现在,我将学习下一个教程: 有人能在本教程中给我一些启发吗?我想我应该用ubuntu 16.04创建一个新主机,并安装以下必备组件: nodejs 8.11.x PostgreSQL 9.5或更高版本 Jq 我说得对吗 在exploreconfig.json中,我更新了postgres变量: 主机:192.168.1.136(第四代虚拟机ip), 港口:5432, 用户名:p

我已经完成了教程

我连接了3台主机,所有服务都启动了。我在PC2主机中运行./script.sh时得到了正确的结果。 现在,我将学习下一个教程:

有人能在本教程中给我一些启发吗?我想我应该用ubuntu 16.04创建一个新主机,并安装以下必备组件:

nodejs 8.11.x

PostgreSQL 9.5或更高版本

Jq

我说得对吗

在exploreconfig.json中,我更新了postgres变量:

主机:192.168.1.136(第四代虚拟机ip), 港口:5432, 用户名:postgres, 密码:psql, 数据库:fabric

他们说得对吗

我还修改了config.json文件中的order、Org1[peer0&peer1)、Org2(peer0&peer1)IP地址,以及网络启动并运行的前三个虚拟机的IP地址

并遵循其余说明和测试,但当我运行命令./start.sh时,控制台中有以下日志:

false 'ssl-certs' '/home/database/blockchain-explorer/ssl-certs'

postgres://christy:christy@192.168.1.136:5432/fabric

error when connecting to db: { Error: connect ECONNREFUSED 192.168.1.136:5432

at Object._errnoException (util.js:992:11)

at _exceptionWithHostPort (util.js:1014:20)

at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1186:14)

code: 'ECONNREFUSED',

errno: 'ECONNREFUSED',

syscall: 'connect',

address: '192.168.1.136',

port: 5432 }

******* Initialization started for hyperledger fabric platform ******, { 

'network-1': 

 { version: '1.0',

 clients: { 'client-1': [Object] },

 channels: { mychannel: [Object] },

 organizations: { Org1MSP: [Object], Org2MSP: [Object], OrdererMSP: 
 [Object] },

  peers: 

   { 'peer0.org1.ntua.com': [Object],

    'peer1.org1.ntua.com': [Object],

    'peer0.org2.ntua.com': [Object],

    'peer1.org2.ntua.com': [Object] },

    orderers: { 'orderer.ntua.com': [Object] } },

    'network-2': {} }

   client_configs.name  undefined  client_configs.profile  undefined

   FabricUtils.createFabricClient 

   <<<<<<<<<<<<<<<<<<<<<<<<<< Explorer Error >>>>>>>>>>>>>>>>>>>>>

   Error :  [ 'Invalid platform configuration, Please check the log' ]

   error when connecting to db: TypeError: Cannot read property 'on' of 
   undefined

  at Timeout.handleDisconnect [as _onTimeout] (/home/database/blockchain-

  explorer/app/persistence/postgreSQL/PgService.js:68:16)

  at ontimeout (timers.js:498:11)

  at tryOnTimeout (timers.js:323:5)

  at Timer.listOnTimeout (timers.js:290:5)


  <<<<<<<<<<<<<<<<<<<<<<<<<< Explorer Error >>>>>>>>>>>>>>>>>>>>>

  TypeError: "callback" argument must be a function

  at setTimeout (timers.js:450:11)

  at Timeout.handleDisconnect [as _onTimeout] (/home/database/blockchain-

  explorer/app/persistence/postgreSQL/PgService.js:85:5)

  at ontimeout (timers.js:498:11)

  at tryOnTimeout (timers.js:323:5)

  at Timer.listOnTimeout (timers.js:290:5)

  Received kill signal, shutting down gracefully

  Closed out connections

  false 'ssl-certs' '/home/database/blockchain-explorer/ssl-certs'

   postgres://christy:christy@192.168.1.136:5432/fabric

   error when connecting to db: { Error: connect ECONNREFUSED 192.168.1.136:5432

   at Object._errnoException (util.js:992:11)

   at _exceptionWithHostPort (util.js:1014:20)

   at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1186:14)

   code: 'ECONNREFUSED',

   errno: 'ECONNREFUSED',

   syscall: 'connect',

   address: '192.168.1.136',

   port: 5432 }


   ******* Initialization started for hyperledger fabric platform ******, 
  { 

  'network-1': 

  { version: '1.0',

   clients: { 'client-1': [Object] },

   channels: { mychannel: [Object] },

   organizations: { Org1MSP: [Object], Org2MSP: [Object], OrdererMSP: 

   [Object] },

   peers: 

   { 'peer0.org1.ntua.com': [Object],

     'peer1.org1.ntua.com': [Object],

     'peer0.org2.ntua.com': [Object],

     'peer1.org2.ntua.com': [Object] },

    orderers: { 'orderer.ntua.com': [Object] } },

    'network-2': {} }

    client_configs.name  undefined  client_configs.profile  undefined

    FabricUtils.createFabricClient 

    <<<<<<<<<<<<<<<<<<<<<<<<<< Explorer Error >>>>>>>>>>>>>>>>>>>>>

    Error :  [ 'Invalid platform configuration, Please check the log' ]

    error when connecting to db: TypeError: Cannot read property 'on' of 
    undefined

   at Timeout.handleDisconnect [as _onTimeout] (/home/database/blockchain-

   explorer/app/persistence/postgreSQL/PgService.js:68:16)

   at ontimeout (timers.js:498:11)

   at tryOnTimeout (timers.js:323:5)

   at Timer.listOnTimeout (timers.js:290:5)

   <<<<<<<<<<<<<<<<<<<<<<<<<< Explorer Error >>>>>>>>>>>>>>>>>>>>>

   TypeError: "callback" argument must be a function

   at setTimeout (timers.js:450:11)

   at Timeout.handleDisconnect [as _onTimeout] (/home/database/blockchain-

   explorer/app/persistence/postgreSQL/PgService.js:85:5)

   at ontimeout (timers.js:498:11)

   at tryOnTimeout (timers.js:323:5)

   at Timer.listOnTimeout (timers.js:290:5)

   Received kill signal, shutting down gracefully

   Received kill signal, shutting down gracefully

   Closed out connections
false“ssl证书”//home/database/blockchain explorer/ssl证书
postgres://christy:christy@192.168.1.136:5432/织物
连接到数据库时出错:{错误:connect econnrefered 192.168.1.136:5432
at Object.\u errnoException(util.js:992:11)
at_例外WithHostPort(util.js:1014:20)
在TCPConnectWrap.afterConnect[as oncomplete](net.js:1186:14)
代码:'econnreference',
错误号:'econnrefered',
系统调用:“连接”,
地址:“192.168.1.136”,
端口:5432}
*******hyperledger结构平台******,{
“网络-1”:
{版本:“1.0”,
客户端:{'client-1':[Object]},
通道:{mychannel:[对象]},
组织:{Org1MSP:[对象]、Org2MSP:[对象]、OrderMSP:
[对象]},
同龄人:
{'peer0.org1.ntua.com':[Object],
'peer1.org1.ntua.com':[Object],
'peer0.org2.ntua.com':[Object],
'peer1.org2.ntua.com':[Object]},
订购者:{'order.ntua.com':[Object]},
'网络-2':{}
客户端\u configs.name未定义客户端\u configs.profile未定义
FabricUtils.createFabricClient

我可以给你一些方面来检查你的环境

  • 首先,您需要检查是否能够从尝试启动Hyperledger Explorer的虚拟机访问postgresql DB(第四个虚拟机)。如果不能,您需要更改postgres配置(postgresql.conf/pg_hba.conf),以便启用外部访问

    $sudo-u postgres psql-h 192.168.1.136-d fabric-c“表对等”

  • 其次,请确认您确实在第四个VM上运行了./createdb.sh。如果更改了数据库名称,还需要对齐脚本

    $cd-app/persistence/fabric/postgreSQL/db/

    $./createdb.sh