AWSのEC2を使ってbitcoin-abcのお手軽フルノードを作ってみよう
もともと、BitcoinCoreのフルノードをOdroidというシングルボードコンピューターで稼働させていたので、BitcoinABCクライアントのインストールとBitcoinSVクライアントのインストールも、同じPC上で構築して同時に起動させようとしてみた。
まあ、予想通りではあったのだけど…CoreとABCとSVのそれぞれのクライアントを同じPC上で同時に起動することはできなそうだ!
そんな気づきを得た今日2018年11月15日は、BitcoinCashのハードフォークが行われ、BCHがABCとSVに分岐するかもしれないという状況だったりする。
実際に分岐するとなると、同時に起動していないと観察することができないので、ノードの建て捨てができるAWSを使って片方のフルノード を作ってみようと思います。
今回はかなり省力バージョンでいく!
まずはEC2にインスタンスを作ろう!
AWSにログインしてEC2インスタンスを作りましょう。まだアカウント持っていないならとりあえず作っちゃいましょう。1年間の無料枠(制限あり)が使えます。
ログインしたらEC2を選択して。

インスタンスの作成を選びます。

OSはUbuntuでいいかな。無料枠の範囲だし。

インスタンスタイプを選びます。CPUとかメモリとかの選択です。t2.microなら無料枠の範囲だけど、CPUコア1、メモリ1GiBはさすがに心もとないので、t2.mediumを選びます。
t2.microでも多分動くと思います。無料枠の範囲なので試しにやってみても良かったけど、ハードフォークまでの時間があまりなくて、ダメだった場合にやり直している余裕がなさそうだったので、t2.mediumにしました。
t2.microでもswap領域作れば問題なく動くけど、ネットワーク帯域制限されてしまうようで、同期がなかなか進まない。t2.microは使わない方がいい。

次のインスタンスの詳細設定は…よくわからないからそのまま╭( ・ㅂ・)و ̑̑

次のストレージのサイズの追加は、ストレージ自体は1つでいいけど、初期値の 8GiBはさすがに少ないので、無料利用枠の対象である30GiBに設定します。
今回はフルノードだけど剪定モードで動かすので容量は少なくて問題ない。

タグの追加は別に必要ないのでそのまま次へ。

セキュリティグループの設定は…まあありがちなHTTP(80)、HTTPS(443)とbitcoinで利用するTCP(8333)だけ設定する。TCPだけでも大丈夫かも。
後から変更できるからあまり深く考えなくて大丈夫。

ここまででインスタンスを作る設定は完了。警告出ているけど、どうせすぐ消すから気にしない。右下の「作成」ボタンを押せばインスタンスが作られる。

作成ボタンを押すとキーペアの設定が出てくる。新しく作るのであれば「キーペアのダウンロード」からキーをダウンロードして大事に保管しておきましょう。
キーペアだけは暗号鍵なので、このタイミングでダウンロードしたものをなくすと復元はできなくなります。

これでインスタンスが作成される

すぐに使うので「パブリックDNS(IPv4)」に表示されているアドレスをコピーしておこう。(”ec2-13…” で始まっている値)
EC2インスタンスへの接続
EC2インスタンスへの接続は、AWS公式のサイトにOSからの接続方法が載っています。
僕はmacを使っているのでここからはmacからの接続方法です。
まずはターミナルを立ち上げる。立ち上げ方がわからなければ、Lanchpadから検索窓に「ターミナル」とか入力すれば出てくる。

ターミナルに接続したらEC2インスタンスを作成した時に、キーペアをダウンロードしたフォルダへ移動しましょう。ダウンロードして移動していないなら “Downloads” にあります。
$ cd Downloads
キーペアの権限を変更します。
$ chmod 400 bitcoin-abc.pem
権限を変更したらsshコマンドで接続します。
$ ssh -i bitcoin-abc.pem ubuntu@ec2-13(略)
※"ec2-13(略)"の部分は「パブリックDNS(IPv4)」を入力する
途中で何か質問されるので「yes」と答えておきましょう。
繋がったら今回はもうmakeとかまどろっこしいことはする気ないので、ABCが公開しているバイナリファイルをゲットします。
※2018/11/15時点の最新。ハードフォークバージョン。
$ wget https://download.bitcoinabc.org/0.18.3/linux/bitcoin-abc-0.18.3-x86_64-linux-gnu.tar.gz
ダウンロードが完了したら解凍と展開。
$ tar -zxvf bitcoin-abc-0.18.3-x86_64-linux-gnu.tar.gz
続けてconfファイルを作成します。
$ mkdir $HOME/.bitcoin
$ touch $HOME/.bitcoin/bitcoin.conf
$ vim $HOME/.bitcoin/bitcoin.conf
# ファイルが開いたら以下を記入する
prune=10240
rpcuser=Jihan
rpcpassword=wu
※vimコマンドで開いたファイルはキーボード ” i ” で挿入モードになるのでその状態でコピペする。保存して終了するときは “esc” キーを押して、”:wq” と入力してエンターで保存される。
※prune=10240 はブロックを保存するデータの容量をMiBで指定する。ここで指定した以上のサイズにブロックは保存されない。10240なのでマックス10GiBまで保存される。ブロック以外のデータもあるので実際に必要な容量はプラス2GiB以上は余裕を見たほうがいい
準備ができたらbitcoinをデーモン起動します。
$ bitcoin-abc-0.18.3/bin/bitcoind -daemon
あとは同期が終わるまで数時間待ちます。(いま同期中なのでどのくらいかかるかわからない…)
ログでも見ながら待ちましょう(。・ω・)ノ゙
$ tail -f $HOME/.bitcoin/debug.log
ディスカッション
コメント一覧
まだ、コメントがありません