Symbol node を symbol-bootstrap を利用して手動で起ち上げたい人向け
Symbol-bootstrap を動作させる環境を作る
※この部分は 手入力で動作環境を構築する方法を述べています
自動で環境構築を行う "b" を使用すると
Symbol node の スタートから始める事ができます
【"b" Symbol bootstrap 動作環境 自動構築 shellscript(ベース構築)】
今回は t4vps c8プランを使用
※仮起ち上げの為スペックが低いプランを使用しています 実際は c16+faster ssd オプション以上でまともに動作します
若しくは 相応のスペック の vps を使用して下さい
ここでは user名を test8
IPアドレスは 212.24.106.178
sshdポート は 22 から 123 へ変更とする
※(この記事では 123 としてますが 1023 迄はシステムが使用しているので
1024~65535 の間にして下さい)
とする
各自で変更して作業して下さい
teratermを開き rootに sshdポート 22/root のパスワードでログイン
又は
windowsなら コマンドプロンプトから
linuxなら 端末から
ssh root@212.24.106.178
ssh root@サーバの IPアドレス
パスワードを聞かれるので サーバの パスワードを入力して サーバに ログイン
新しい user を作成
adduser test8
新しい user に sudo権限を付与
gpasswd -a test8 sudo
sshd port を変更する
vi /etc/ssh/sshd_config
"i" と打つと 入力が出来る様になります
変更の入力が終わったら [esc]を押下 ":wq" と打って下さい 変更が保存されます
※!注意! 上記の作業後は root と root パスワード では ログイン出来なくなります
この作業後は 新規で作成した sshd port/アカウント/パスワード でのみ ログイン可能です
sshd_config の変更を反映させる
systemctl restart sshd
ufw インストール
apt-get install ufw
sshd port を開く
ufw allow 123/tcp
ufw を有効にする
ufw enable
ufw の状態を確認する
ufw status
docker インストール
curl https://get.docker.com | sh
user に docker 実行権限を付与
usermod -aG docker test8
docker 起動
systemctl start docker
docker を常時起動させる
systemctl enable docker
docker のバージョン確認
docker --version
docker-compose インストール
curl -L https://github.com/docker/compose/releases/download/v2.29.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
docker-compose の実行権限の付与
chmod +x /usr/local/bin/docker-compose
docker-compose のバージョン確認
docker-compose --version
node.js インストール
curl -sL https://deb.nodesource.com/setup_20.x | sudo -E bash -
apt-get install -y nodejs
node.js のバージョン確認
node -v
npm のバージョン確認
npm -v
jq インストール
apt-get install jq
はい!
ここまでで symbol-bootstrap を 動作させる環境は 出来上がりました
この後からは 別に teraterm又は コマンドプロンプト/端末 を開いて node の構築を行います
!!!!!注意!!!!!
※まだ root で ログイン している方の teraterm又は コマンドプロンプト/端末 は 閉じないで下さい
teraterm を 新しい sshd ポート/user/パスワードで ログインする
又は コマンドプロンプト/端末から
ssh -p 123 test8@212.24.106.178
ssh -p 設定したポート番号 設定したuser名@設定したuserのパスワード
パスワードを聞かれるので 新しく作成した user "test8"の パスワードを入力して ログイン
ログイン 出来たら こちらへ
【symbol-bootstrap を使って node の構築をする】
↓↓↓新しく作成した sshd ポート/user/パスワードで ログイン 出来ない時↓↓↓
※ sshd port の番号によっては ログイン出来なくなる場合があります
その場合は root で ログイン 中の サーバで 以下 "re" を実行すると sshd port の設定を変更出来ます
ディレクトリ は どこにいても 実行出来ます
sshd port 再設定 script "re"
vi re
"i" と打って 以下をコピペして下さい
ufw reset
#new sshd port
echo "going to set new sshd port setting"
echo "??? please input new sshd port ???"
read sshd
#----------
echo "now remakeing new sshd setting..."
#sshdset
sed -i -e s/".*Port .*"/"Port $sshd"/ /etc/ssh/sshd_config
systemctl restart sshd
#ufwset
ufw allow $sshd/tcp
ufw enable
echo "now reset sshd port to" $sshd
"ESC" を押して 編集モード終了
":wq" を入力 "ENTER" で保存終了
"re" を実行します
sh re
これで sshd port の変更が完了します user名 と パスワードの変更はありませんので
sshd port だけを変えて ログインを試して下さい
新しい user で ログイン 出来た時点で rootでログインしていた方は閉じて下さい
Symbol node の スタート("b" を使用した場合 ここから)
"b" symbol-bootstrap 動作環境構築 shellscript は こちら
☆おまけ☆node を スタートしてみた! 実況だぞ
symbol-bootstrap を使って node の構築をする
ここからは root で無く新しい sshd port/user/パスワードで ログインして作業します
symbol-bootstrap インストール
現在は以下の命令では旧バージョンの symbol-bootstrapが installされてしまいます
sudo npm install -g symbol-bootstrap
現在の symbol-bootstrapの install
cd
git clone https://github.com/symbol/symbol-bootstrap
cd symbol-bootstrap
npm install
npm run build
sudo npm install -g .
cd
上記 symbol-bootstrapの現在の install方法についての詳細は以下を参照
作業ディレクトリの作成
mkdir symbolNode
作業ディレクトリに入る
cd symbolNode
custom.yml の作成
vi custom.yml
"i" で入力開始
サーバ の IP に対応する ドメイン が 判らない時は ①
ドメイン が 判った時は ② を コピペ して保存して下さい
① custom.yml の内容(https 無し用)
こちらは https 無しの場合の コピペ 内容です
サーバ の IP に対応する ドメイン が どうしても判らない時は こちらを コピペして下さい
以下をコピペして保存 保存方法は ":wq"(enter) 保存せずに終了は ":q!"(enter)
nodes:
-
host: 212.24.106.178
friendlyName: test8
maxUnlockedAccounts: 100
transactionSelectionStrategy: oldest
minFeeMultiplier: 10
beneficiaryAddress:
maxChainBytesPerSyncAttempt: 50MB
messageSynchronizationMaxResponseSize: 5MB
blockDisruptorMaxMemorySize: 1000MB
※ hostの "212.24.106.178" の部分は 自分の vps の IP address を使用して下さい
※ friendlyName の "test8" の部分は 自分が付けたい名前にして下さい
② custom.yml の内容(https あり用)
こちらは https ありの場合の コピペ 内容です
サーバ の IP に対応する ドメイン が 判った場合は こちらを コピペ して下さい
以下をコピペして保存 保存方法は ":wq"(enter) 保存せずに終了は ":q!"(enter)
nodes:
-
host: ドメイン
friendlyName: test8
maxUnlockedAccounts: 100
transactionSelectionStrategy: oldest
minFeeMultiplier: 10
beneficiaryAddress:
maxChainBytesPerSyncAttempt: 50MB
messageSynchronizationMaxResponseSize: 5MB
blockDisruptorMaxMemorySize: 1000MB
httpsProxies:
-
excludeDockerService: false
サーバ のIP に対応する ドメイン が判らない時は下記の サイトで確認する事が出来ます
ドメイン/IPアドレス サーチ 【whois情報検索】
※上記の ファイル は 記述の 1例 です
ファイル の 中にある 行(項目)で
○ maxUnlockedAccounts: 100
○ transactionSelectionStrategy: oldest
○ minFeeMultiplier: 10
○ beneficiaryAddress:
↑ これらの項目は 御自分で任意の値に書き換える事が出来ます
他にも いろいろ記述出来る項目があります
探して見て下さい
target作成
ここは testnetは① mainnetは②を実行して下さい
① testnet の場合
symbol-bootstrap config -p testnet -a dual -c custom.yml
② mainnet の場合
symbol-bootstrap config -p mainnet -a dual -c custom.yml
※ここで パスワードの入力を求められますので
自分が考えた パスワードを入力して下さい
ここで入力した パスワードは 設定変更時等に毎回聞かれます 忘れない様にして下さい
compose 実行
symbol-bootstrap compose
bootstrap のスタート
symbol-bootstrap run -d
起動できたかを確認する
symbol-bootstrap healthCheck
node情報 の確認
curl localhost:3000/node/info|jq
height の確認
curl localhost:3000/chain/info|jq
node address の確認
symbol-bootstrap decrypt --source target/addresses.yml --destination d_addresses.yml
d_addresses.yml と言う名前の ファイルが作成されます
cat d_addresses.yml
内容が表示されます main の 項目は重要です
内容をコピー 外部に保存したら 削除して下さい
rm -f d_addresses.yml
ここまで出来たら もう Symbol Node は動作しています
https化や 他の設定方法は
検索で出てくると思いますので
順繰りにマスターして行けば良いでしょう
symbol-bootstrap に アップデートがあった時
Symbol-bootstrap の アップデートがあるかは
https://github.com/nemtech/symbol-bootstrap
をチェックして下さい
Symbol-bootstrap の アップデート方法
作業ディレクトリに入る(ここでは symbol-bootstrap)
cd symbol-bootstrap
symbol-bootstrap stop
target ディレクトリの バックアップを取る事をお薦めします
symbol-bootstrap stop
cp -r target target.bak
symbol-bootstrap run -d
symbol-bootstrapの更新と再起動(2024.08.21変更)
symbol-bootstrap の更新〜スタート(mainnet の場合)
以下の命令は現在使用すると 古い ver.が インストールされてしまいます
symbol-bootstrap stop
sudo npm install -g symbol-bootstrap
symbol-bootstrap start -p mainnet -a dual -c custom.yml --upgrade -d
symbol-bootstrapの更新 node再起動(mainnetの場合)
こちらの手順を使用して下さい
symbol-bootstrap stop
cd
rm -rf symbol-bootstrap
git clone https://github.com/symbol/symbol-bootstrap
cd symbol-bootstrap
npm install
npm run build
sudo npm install -g .
cd ~/symbolNode
symbol-bootstrap start -p mainnet -a dual -c custom.yml --upgrade -d
これで symbol node の アップデート 作業は終了です
※2024.04に symbol-bootstrapの更新及び インストール手順に変更があった為 修正しました