创建一个 Corda 网络

一个Corda网络有许多运行节点的机器组成。这些节点通信时使用持久协议,来创建和验证transactions。

有三种按功能分类的节点,这些功能节点都以服务的形式提供,一个节点可以运行其中几个。

设置自己的网络

证书

每一个在Corda网络的节点必须有一个被 network root CA 签名过的证书。参考 网络准入 获得更多信息。

配置

在每个节点的文件目录下都有一个可以新建和编辑的 node.conf 文件,可以查看 配置节点 了解详细信息。

配置例子:

myLegalName : "O=Bank A,L=London,C=GB"
keyStorePassword : "cordacadevpass"
trustStorePassword : "trustpass"
dataSourceProperties : {
    dataSourceClassName : org.h2.jdbcx.JdbcDataSource
    "dataSource.url" : "jdbc:h2:file:"${baseDirectory}"/persistence"
    "dataSource.user" : sa
    "dataSource.password" : ""
}
p2pAddress : "my-corda-node:10002"
rpcSettings = {
    useSsl = false
    standAloneBroker = false
    address : "my-corda-node:10003"
    adminAddress : "my-corda-node:10004"
}
webAddress : "localhost:10004"
rpcUsers : [
    { username=user1, password=letmein, permissions=[ StartFlow.net.corda.protocols.CashProtocol ] }
]
devMode : true

重要的network配置参数:

启动节点

首先你需要使用 bootstrapper 来创建并启动一个本地网络。请查看 网络启动器 来了解详细信息。

上边的步骤接收后,你可以按照任何顺序启动节点。你应该会看到一个 banner,一些 log 行并且最终是 Node started up and registered,表明节点已经完全启动完毕。

在过程管理方面没有规定的方法。你可以手动启动 jar 包或者可以是使用系统启动。

日志

只有少数重要的信息会输出到控制台。有关细节和诊断问题,请检查日志。

日志用标准 log4j2 来管理的,可以根据需要进行配置更改。日志默认输出到文件 NODE_DIRECTORY/logs/

连接到节点

一旦一个节点启动成功后,你可以连接到它,并进行诸如初始化协议、查询state等操作。基于你的network配置,你可能需要打开通道进行远程操作。

备注:一个客户端会和具有的单一身份和单节点进行关联,单个节点只能看到它们自己的账本。