环境
Win10 运行VMware,在vmware上运行节点:
创建3个节点的私有链,3个节点均运行ubuntu16,64位,且均运行在vmware虚拟机上。节点的名字和IP地址见下表:
节点名字 |
BITCOIN |
ETH1 |
ETH2 |
Ip地址 |
192.168.19.133 |
192.168.19.140 |
192.168.19.141 |
二、第一台虚拟机的基础环境
在VMware中安装第一台虚拟机,命名为BITCOIN。
下载Mist-linux64-0-9-3.zip,将其解压,放在/home/stein/mist中。创建目录/home/stein/myeth,用于构建私有链。目录结构如下:
进入mist目录,先运行mist。在运行mist的过程中会下载geth。下载放置位置为:
~/.config/Mist/binaries/Geth/unpacked/geth
将geth拷贝到~/myeth。也可将geth放在PATH环境变量中,或者在~/myeth中做一个指向geth的符号链接。
在~/myeth目录中编辑一个文件取名为CustomGenesis.json。内容为:
{
"nonce": "0x0000000000000042",
"timestamp": "0x00",
"parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"extraData": "0x00",
"gasLimit": "0x8000000",
"difficulty": "0x400",
"mixhash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"coinbase": "0x3333333333333333333333333333333333333333",
"alloc": {
},
"config": {
"chainId": 15,
"homesteadBlock": 0,
"eip155Block": 0,
"eip158Block": 0
}
}
创建目录~/myeth/mc。进入~/myeth。最后目录结构如下:
三、复制另外两台虚拟机
将BITCOIN机器克隆2次,复制出ETH1和ETH2,注意改名字。虚拟机为:
四、在3个节点中建立私有区块链
下面先建立一个节点BITCOIN的区块链。过程中假定当前目录为~/myeth。
初始化创始块:
./geth -datadir "mc" init CustomGenesis.json
先进入geth创建第一个用户:
./geth -datadir "mc" console
退出后重新启动节点并开始挖矿:
./geth -targetgaslimit 4294967295 -rpc -rpcaddr "127.0.0.1" -rpcport "8101" -port "30303" -rpcapi "eth,web3,personal" -networkid 123 -identity 123 -nodiscover -maxpeers 5 -datadir "mc" -unlock 0 -rpccorsdomain "*" -mine console
停止挖矿:
miner.stop()
在图形终端上启动mist:
../mist/mist --rpc ~/myeth/mc/geth.ipc
同样的事情在ETH1和ETH2上也做一遍,截图略去。
五、将ETH1和ETH2加入私有链:
在ETH1的终端上取ETH1的id:
Admin.nodeInfo.enode
在BITCOIN终端上将ETH1加入:
同样的办法将ETH2也加入:
可以看到节点数变为2