ノードセットアップ

ここはBitSharesのフルノードをセットアップする方法のページです。

必要十分な手順かどうかはともかく、とりあえず以下のようにすれば動きます。

Linux

Ubuntu

(1) Ubuntu 16.04 Server (64-bit) をインストール直後の状態から開始とする。

sudo apt-get update

(2) ローカルIPアドレスを固定 (必要に応じて)

sudo vi /etc/network/interfaces


(2-1) dhcpをstaticに書き換え。
(2-2) 以下のように設定情報を書き足し。

address 192.168.***.*** // このサーバのローカルIPアドレス
netmask 255.255.***.*** // サブネットマスク
gateway 192.168.***.*** // ルーター等のローカルIPアドレス
dns-nameservers ***.***.***.*** // DNSサーバのアドレス。大抵はgatewayと同じでOK


(2-3) 保存してエディタを終了。
(2-4) 以下のコマンドで変更を適用して再起動する。enp0s25は環境によって異なる。ifaceの後に続く文字列に置き換えること。

sudo ip addr flush dev enp0s25
reboot

(3) ファイアウォールの設定 (LANで使用する場合は必須)

sudo ufw allow ssh
sudo ufw allow 8090
sudo ufw enable

(4) bitshares-coreをビルド

sudo apt-get install cmake make libbz2-dev libdb++-dev libdb-dev libssl-dev openssl libreadline-dev autoconf automake libtool git ntp libcurl4-openssl-dev g++ libcurl4-openssl-dev libboost-all-dev
git clone https://github.com/bitshares/bitshares-core.git
cd bitshares-core
git submodule update --init --recursive
cmake -DBOOST_ROOT="$BOOST_ROOT" -DCMAKE_BUILD_TYPE=Release .
make

(5) witness_nodeを起動、同期

programs/witness_node/witness_node --rpc-endpoint="0.0.0.0:8090" --max-ops-per-account 100

同期には6時間ほどかかります (2018年6月時点)。

オプションについては下記を参照。

Windows

Windowsは64bit版であること。

(1) https://github.com/bitshares/bitshares-core/releases からBitShares-Core-2.0.yymmdd-x64-cli-tools.zipをダウンロード。

(2) 任意の場所に解凍する。ブロックデータを保存するため、ディスクに20GB以上の空きが必要。

(3) コマンドプロンプトを開き、以下のコマンドを実行すると同期が始まる。

[解凍したフォルダ]/witness_node.exe --rpc-endpoint="0.0.0.0:8090" --max-ops-per-account 100

オプションについては下記を参照。

オプション

よく使用するオプション

--rpc-endpoint=""
LANで使用する場合は--rpc-endpoint="0.0.0.0:8090"、localhostだけで使用する場合は--rpc-endpoint="127.0.0.1:8090"

--max-ops-per-account
メモリ上に保持する履歴数。通常は100を指定。大きくするとメモリの必要量も増加する。

--track-account
特定のアカウントの履歴だけを必要とする場合に指定。アカウントはIDで指定する必要がある (IDはエクスプローラで確認)。複数指定することも可能。
例: --track-account "\"1.2.10\"" "\"1.2.100\"" "\"1.2.1000\""

--replay-blockchain
メモリ上のブロックチェーンの状態を再構築するオプション (下記参照)。

ノードの停止と再起動

ノードを停止するにはCtrl+Cを入力します。一度入力すると終了処理が走り、数十秒程度で終了します。終了処理中にCtrl+Cをもう一度入力すると直ちに終了しますが、ブロックチェーンデータが壊れる恐れがあります。

再起動する際は、--replay-blockchainオプションをつけて再構築する必要があります。これには数時間かかる場合があります。

必要なハードウェアスペック

HDD: ブロックデータは2018年6月現在で約20GB弱。

RAM: --max-ops-per-account 100オプションありで約10GB使用。さらに、--track-accountで1アカウントのみを指定すると約3GB。