Gift history
Please access after login.


Wait a moment...

Symbolノード構築手順 2 (symbol-bootstrapのインストール完了まで)

332
0
2021-04-05 22:13:16
0.00 mXYM
(0)

それでは早速続きです。

本記事はSymbolノード構築手順1の続きとなりますよ。

参考としたページについては逐次載せています。

全体としてはSymbolノード構築手順1に記載しているので、そちらを確認してください。

今回は、

Symbol-bootstrapのインストールまで実施します。

そこから先はまた次の機会に。

 

なお、本文内で登場するスラッシュについてはnemlogの都合上、全角化している場合があります。

半角として使用してください。

rootユーザでのログイン

まず、Teratermを使用してのログインを行っていますか?

ログイン用のユーザでログイン後、ノード用ユーザに切り替えておいてください。

 

さらに、

$ su ubuntu

でログインしておきます。

インストールなどをこちらで行ったほうが都合がいいため……。

メモリスワップ拡大

前回、VPSうんぬんの際にsymbolノードの推奨スペックを挙げました。

必要なメモリを満たしていますか?

満たしていない場合、それを埋めてやる必要があります。

 

ぶっちゃけ現状、推奨メモリほどなくても支障はないかと思いますが、

不足している分は足してやる必要があります。

 

$ free -m

こちらを行うと現在のメモリ使用状態が表示されます。

(MB単位)

 

total列を参照してもらいたいのですが、
Memが物理メモリです。
Swapが仮想メモリ(って呼んでいいのか?)的なスワップ領域となります。

 

今後のトランザクション発生量などにもよるかと思いますが、
基本的にMem+Swapが16GBを上回る感じが必要です。
※Swapが0の場合もあるかもしれません。

 

そんなわけなので、スワップ領域を確保します。

 

$ sudo fallocate -l xG /swapfile

※xGのxに上記、足りない分のメモリを入力してください。

 

$ ls -lh /swapfile

を入力して、指定したファイルが作成されているかを確認します。

 

 

ありましたか? ありますね?

では、こいつを作っただけでなく、

有効化しますよ。

 

以下のコマンドを実行します。

$ sudo chmod 600 /swapfile
$ sudo mkswap /swapfile
$ sudo swapon /swapfile

 

最後に

$ sudo swapon --show

を実行してください。

スワップ領域が表示されるはずです。

 

全体としては

$ free -m

を入力すると物理メモリ、スワップ領域の確認ができます。

 

スワップ領域の拡張については以上です。

VPSのメモリ量とスワップ領域のバランスについては、どのぐらいであればいいか? というのはわかりません。

もちろん、推奨スペックを確保するのが一番です。推奨ですからね!

 

では続いて、symbol-bootstrap関連のセットアップに入っていきます。

bootstrapまでのセットアップ

手順としては

Symbolテストネットノードを建ててみた (v0.10.x Hippo on Ubuntu Server 18.04)

をなぞるだけです。ありがとうございます! 感謝を! ありがてえ!

 

インストール系はrootでやったほうが楽なので、メモリスワップと同様にそのままrootで行います。

 

さて。

Node.js / npmをインストール

インストール作業なので、root(ubuntu)ユーザで行ってください。

以下のコマンドを入力し、しばし待つ。

$ curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -

 

 

こんな感じのが出れば終わりです。

続けててどんどんコマンドを投げていきます。

$ sudo apt-get install -y nodejs
$ sudo npm install -g npm@latest

入力のたびに少し待つが、すぐ終わります。

 

これでnodejs/npmのインストールは終わりなので、バージョンでも確認しておきます。

symbol-bootstrapをインストール

いよいよお待ちかねのsymbol-bootstrapインストールタイムです。ここまで(記事として起こすのが)本当に長かった。。。

インストール作業なので、root(ubuntu)ユーザで行ってください。

 

以下のコマンドでインストールを行います。

$ sudo npm install -g symbol-bootstrap

 

終わり次第、以下のコマンドでバージョン確認をします。

$ symbol-bootstrap -v

 

※この記事の実装をしたときはsymbol-bootstrap/1.0.2でした。

2021/04になってから早々に1.0.3にバージョンアップされています。

 

symbol-bootstrap自体のインストールはここまでです。あっさりしたものですね。

 

symbol-bootstrapはDocker/DockerComposeが必要とのことなので、それぞれを導入します。

Docker/DockerComposeをインストール

Dockerのインストールを行います。

root(ubuntu)ユーザで実行したと思いました。

 

$ sudo apt-get update
$ sudo apt-get install ca-certificates curl gnupg-agent software-properties-common
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
$ sudo apt-key fingerprint 0EBFCD88
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
$ sudo apt-get update 
$ sudo apt-get install docker-ce docker-ce-cli containerd.io

 

こんな感じの、参考先のまんまを入力してインストールしました。はい。ハハ……。ありがとうございます。

 

続けてDocker composerのインストールです。

$ sudo curl -L https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
$ sudo chmod +x /usr/local/bin/docker-compose

 

という感じで。

 

こちら曰く、Dockerコンテナログファイルの設定をしたほうがいいとのことでした。

# echo '{"log-driver":"journald","log-opts":{"tag":"docker/{{.ImageName}}/{{.Name}}"}}' > /etc/docker/daemon.json

を実行してdaemon.jsonを作るようでしたが、パーミッションエラーで怒られてしまいだめだったので、

$ cd /etc/docker/
$ sudo bi daemon.json

※/が/になっている箇所があります。

として、

内容に直接

{"log-driver":"journald","log-opts":{"tag":"docker/{{.ImageName}}/{{.Name}}"}}

をぶっこみました。

効いているのかこれ? よくわからないですが、まぁ、やったということで。

いずれ学びたいと思います。

 

後ほどDocker起動時に権限エラーとなったために、ここで行いますが

Dockerの実行には権限が必要? らしいです。

 

symbol-bootstrapの実行はroot(ubuntu)でなく、ノード実行用ユーザ(user2)で行う予定なので、

そいつで動かせないといけません。

 

$ sudo gpasswd -a user2 docker
$ sudo chgrp docker /var/run/docker.sock
$ sudo service docker restart

※一部/が/になっている箇所があります。

と、そんな感じのコマンドを入力します。これでいいのか? まぁいいか。

 

さて、それでは

$ exit

にて、ノード実行用ユーザ(user2)にユーザを切り替えます。

 

前回の記事からの流れ通り、

ログイン用ユーザでログイン→ノード実行用ユーザに切り替え→root(ubuntu)ユーザに切り替え、

としていれば、exitでノード実行用ユーザに切り替わると思います。

 

ノード実行用ユーザになったら、

$ cd

 

として、ホームディレクトリへ行きます。

 

ここで、ノード環境を作成するディレクトリを作ります。

$ mkdir node-home

node-homeがノード環境を配置するディレクトリです。名前は好きにしてください。

 

この中で作業するので、node-homeにcdで移動してください。内容は、当然ながら空っぽですね。

 

というわけでsymbol-bootstrapのインストール完了までしました。今回はここまでです。

次はー、symbol-bootstrapの設定と起動についてなると思います。

 

Writer
湘南のポエマーを目指しているおじさん。 「実行力のあるやつはプレイヤーだ。実行力がないから、ポエマーなのだ」 ポケットの中の少ないNEMと共に、未来を見つめたいと思っています。

Comment
Login required to post comment
Loading...
https://symbol-sakura-16.next-web-technology.com:3001,https://symbol.harvest-monitor.com:3001,https://hideyoshi-node.net:3001,https://harvest-01.symbol.farm:3001,https://criptian-xym-node.net:3001,https://35665.xym.stir-hosyu.com:3001,https://yuna.keshet.finance:3001,https://cryptocat-xym-node.com:3001,https://misaki-xym.com:3001,https://ik1-305-12844.vs.sakura.ne.jp:3001,https://17107.xym.stir-hosyu.com:3001,https://23639.xym.stir-hosyu.com:3001,https://sym-main-01.opening-line.jp:3001,https://sym-main-02.opening-line.jp:3001,https://sym-main-03.opening-line.jp:3001,https://sym-main-04.opening-line.jp:3001,https://sym-main-05.opening-line.jp:3001,https://sym-main-06.opening-line.jp:3001,https://sym-main-07.opening-line.jp:3001,https://sym-main-08.opening-line.jp:3001,https://sym-main-09.opening-line.jp:3001,https://sym-main-10.opening-line.jp:3001,https://symbol-node-01.kokichi.tokyo:3001,https://50038.xym.stir-hosyu.com:3001,https://27423.xym.stir-hosyu.com:3001,https://angel.vistiel-arch.jp:3001,https://xym.stakeme.tokyo:3001,https://00-symbol-node.yagiyoshi.com:3001,
6BED913FA20223F8,051FAEC15105C808,73019335A785A3AE,5289A9B0DBB7EB25,6B245EAF1302E444,2C4A4893229DD0A9,63509D495CAD7B80,481D74291A71FD1F,009388A38C91A8B2,4E94920841641B77,027C6AD49DE2C9F9,