如何通过网络引导程序为具有相同端口的VM

时间:2018-03-21 12:20:44

标签: corda

目前,我在具有不同IP的不同机器/ VM上有节点。因此,他们也可能共享相同的端口,但不同的IP,即h2port。

我正在将所有vms的node.config(带有自己的IP地址和合法身份)合并到一个文件夹中并运行网络引导程序。我收到错误port is being used,所以我假设引导程序会同时站起来导致端口冲突的节点。

我仍然可以让节点单独生成他们的nodeInfos..文件,并在没有引导程序的情况下手动分发它们。这是网络参数文件,我在尝试解决方法时遇到了麻烦。

公证示例node.config。

basedir="/opt/corda"
myLegalName="O=Notary, L=London, C=UK"
notary {
    validating=false
}
p2pAddress="X.X.X.X:10002"
rpcUsers=[]

正常节点node.config

basedir : "/opt/corda"
p2pAddress : "X.X.X.X:10002"
rpcSettings {
    address="localhost:10003"
    adminAddress="localhost:10014"
    useSsl = false
    standAloneBroken = false
}
h2port : 11000
myLegalName : "O=Company1, OU=Company, L=London, C=UK"
extraAdvertisedServiceIds: [ "" ]
useHTTPS : false
devMode : true
rpcUsers=[
    {
        user=corda
        password=password
        permissions=[
            ALL
        ]
    }
]
sshd {
  port=2222
}

1 个答案:

答案 0 :(得分:2)

根本原因:将lease { *****some text****** binding state free; *****some text****** *****some text****** } lease { *****some text****** *****some text****** binding state free; *****some text****** *****some text****** } lease { *****some text****** *****some text****** binding state active; next binding state free; rewind binding state free; *****some text****** *****some text****** } lease { *****some text****** *****some text****** binding state active; next binding state free; rewind binding state free; *****some text****** *****some text****** } sed -n '/lease/!b;:a;/}/!{$!{N;ba}};{/binding state free;/p}' file.txt notary_node.confcompany1_node.conf放在同一个目录中。 company2_node.confcompany1来自不同的IP,但具有相同的company2。尝试使用h2port会同时站起来导致端口冲突的节点。

解决方案:来自其他节点的network-bootstrapper在生成网络参数时必须 ,因为node.conf仅包含有关公证人的信息。 s NetworkParameters,最低平台等。

仅将nodeInfo作为目录中的唯一配置并运行notary_node.config,它将成功生成网络参数文件。尽管通过这样做,您仍然无法利用引导程序为所有其他节点自动生成network-bootstrapper个文件。很快,但您可以在每个节点上手动使用nodeInfo-...,并收集他们的--just-generate-node-info文件。

然后,您可以继续将nodeInfo-..network-parameters文件手动分发到所有其他节点。