Vultrでマスターノード増設 (その2)
まず、新しいサーバ側で操作1.ソフトを準備する# 自分用の実行ファイルを保存するディレクトリを作るmkdir ~/bin#ダウンロードwget http://charitycoin.live/resources/charitycoin.linux.zip#展開unzip charitycoin.linux.zipunzip linux.zipcd linux-masterunzip charityd.zipchmod +x charityd charity-climv charityd charity-cli ~/bin#一旦ログアウトしてログインしなおす# または、単にログイン処理をやり直す. .profile2.ファイアウォールの解除# charity のポートを許可するsudo ufw allow 3300sudo ufw reload実行例masternodes@bjsoftab4:~$ sudo ufw allow 3300[sudo] password for masternodes:Rule addedRule added (v6)masternodes@bjsoftab4:~$ sudo ufw reloadFirewall reloaded3.マスターノード準備# 起動すると、最小限必要なファイルを作成するcharityd# 指示に従って、rpcuser と rpcpassword の行のファイルを作成する。# charity.conf ファイルの内容を参照して、rpc で通信するので、表示されるとおりで問題なし。# 気になるなら、pwgen 64 1 とかで再生成してもいいです。(パスワードを覚えておく必要はなし)nano ~/.charity/charity.conf# デーモンとして起動するcharityd -daemon# これをやっておけば、ログアウトしてもデーモンは動き続けます。# コマンドラインで、動作状態をチェックする# 何回か実行して、blocks が増えていれば、同期中です。charity-cli getinfo4.ウォレット側準備ここからはウォレット側。古いほうの linux サーバを使います。# 同期している間に、送金先の新アドレスを作成しますcharity-cli getaccountaddress mn2# ウォレットのアドレスがでるので、メモする。# マスターノードのプライべートキーを作成する。charity-cli masternode genkey# プライベートキーがでるので、メモする。さっき作成したウォレットのアドレスに、CryptBridge などから「ぴったり 1000 コインを一回で送金する」getinfo していると、そのうち送金が完了し、balance が、さっき送信したのと合わせ、 2000 以上になるはず。また、outputs の結果が変わります。charity-cli masternode outputs{ "4f40008f84a7544509283c3c419a91ab9ec5d5fb74c6818b294fca2ccce87c98" : "0"}一つ増えましたcharity-cli masternode outputs{ "4f40008f84a7544509283c3c419a91ab9ec5d5fb74c6818b294fca2ccce87c98" : "0", "b3aa01b5d322a02546dc5d03b86c8ffe60d79e2a955e72cc61df3dfe57c71f8b" : "0"}5.新マスターノードの設定ファイルを編集する新マスターノード側で操作します。# まず、止めるcharity-cli stop# ifconfig とかで、 IPアドレスを確認する例えば、10.10.10.10# .charity/charity.conf を編集するrpcallowip=127.0.0.1server=1listen=1daemon=1maxconnections=256masternode=1masternodeprivkey=さっき作ったマスターノードのプライべートキーexternalip=IPアドレス# 再起動charityd -daemon6.マスターノードを追加する今度は、ウォレット側で操作します。# .charity/masternode.conf を編集する# 今度は、mn2 の行を追加します。mn2 IPアドレス:3300 マスターノードのプレイべートキー output_txid output_indexmn1 10.10.10.10:3300 jfafdkfjadfjadfjdf 4f40008f84a7544509283c3c419a91ab9ec5d5fb74c6818b294fca2ccce87c98 0mn2 10.20.20.20:3300 afht3dfhshsfhjfaff b3aa01b5d322a02546dc5d03b86c8ffe60d79e2a955e72cc61df3dfe57c71f8b 0みたいな感じcharity-cli stopcharityd -daemon# 設定確認charity-cli masternode list-conf{ "masternode" : { "alias" : "mn1", "address" : "153.126.134.220:3300", "privateKey" : "7UVHachN1M86zVBaEGDrherxvbwsHFcjVZqyfW6xsr7x4ptssSo", "txHash" : "4f40008f84a7544509283c3c419a91ab9ec5d5fb74c6818b294fca2ccce87c98", "outputIndex" : "0", "status" : "ENABLED" }, "masternode" : { "alias" : "mn2", "address" : "45.32.53.231:3300", "privateKey" : "7Vt2znS5xB4LjNKbKt1UAJXFaAT7s5zLvbGj66D123hPZQY6ckv", "txHash" : "b3aa01b5d322a02546dc5d03b86c8ffe60d79e2a955e72cc61df3dfe57c71f8b", "outputIndex" : "0", "status" : "MISSING" }}7.マスターノードを起動するウォレット側で操作します。ウォレット側から、マスターノードに対し、スタート指示を出します。# マスターノード起動charity-cli masternode start-alias mn2{ "alias" : "mn2", "result" : "successful"}8.マスターノード状態を確認新サーバーで操作します。# マスターノード状態確認charity-cli masternode status{ "vin" : "CTxIn(COutPoint(0000000000000000000000000000000000000000000000000000000000000000, 4294967295), coinbase )", "service" : "[::]:0", "status" : "Not capable masternode: Hot node, waiting for remote activation."}# この場合は、起動できてないので、7.に戻って、起動指示を出しなおしてみます。# 以下になれば、OKです。# マスターノードの同期待ちなどかかるので、気長に。charity-cli masternode status{ "vin" : "CTxIn(COutPoint(b3aa01b5d322a02546dc5d03b86c8ffe60d79e2a955e72cc61df3dfe57c71f8b, 0), scriptSig=)", "service" : "45.32.53.231:3300", "pubkey" : "CMwKq5wopZAHs2DB5PuTF8DpuFXvFKB6QT", "status" : "Masternode successfully started"}