NEM スーパーノード構築

OSはRocky Linux release 9.1を使用、4コアCPUの16Gメモリがあればいいでしょう。ノード実行ユーザは分かりやすくnemとする。

# cat /etc/redhat-release
Rocky Linux release 9.1 (Blue Onyx)

java-11-openjdkをインストール

# dnf -y install java-11-openjdk
# java -version

nisインストール

# su - nem
$ curl -o nis1.tgz https://bob.nem.ninja/nis-0.6.101.tgz
$ tar -xzvf nis1.tgz

サーバスペックによりメモリの最小値、最大値を変更

$ vi ~/package/nix.runNis.sh

#!/bin/bash

cd nis
java -Xms4G -Xmx8G -cp ".:./*:../libs/*" org.nem.deploy.CommonStarter
cd -
↓
#!/bin/bash

cd nis
java -Xms4G -Xmx12G -cp ".:./*:../libs/*" org.nem.deploy.CommonStarter
cd -

コンフィグ修正

$ vi ~/package/nis/config-user.properties

FQDNまたはIPアドレスを指定
nem.host = 127.0.0.1
↓
nem.host = FQDNまたはIPアドレス

スーパーノードリストの「Name名」の表示箇所
nis.bootName = 好きな英数字

NEMウォレットにて表示した委任秘密鍵
nis.bootKey = 委任秘密鍵

ハーベストの上限値
nis.unlockedLimit = 4

スーパーノードリストの「Host」の表示箇所(ドメイン取得した場合のみ)
nis.ipDetectionMode = AutoRequired
↓
nis.ipDetectionMode = Disabled

実行権付与

$ chmod +x ~/package/nix.runNis.sh

servantインストール

$ wget https://bob.nem.ninja/servant_0_0_4.zip
$ tar -xzvf servant_0_0_4.zip

コンフィグ修正

$ vi ~/servant/config.properties

nisのnem.hostと同じ文字列を入れる
nem.host = <put vps ip address here>
↓
nem.host = FQDNまたはIPアドレス

NEMウォレットにて表示した委任秘密鍵
servant.key = <put your NIS boot key here>
↓
servant.key = 委任秘密鍵

実行権付与

$ chmod +x ~/servant/startservant.sh

rootユーザにスイッチ。

su -

nis自動起動設定。パスは各自の環境に設定する。

# vi /etc/systemd/system/nem-nis.service

[Unit]
Description = NEM NIS Server
After = network.target

[Service]
WorkingDirectory = /home/nem/package
ExecStart = /home/nem/package/nix.runNis.sh
Restart = always
Type = simple
User = nem
Group = nem
LimitNOFILE = 100000
StandardOutput = null
StandardError = null

[Install]
WantedBy = multi-user.target

rootユーザで、servant自動起動設定。パスは各自の環境に設定する。

# vi /etc/systemd/system/nem-servant.service

[Unit]
Description = NEM Servant program
After = network.target nem-nis.target

[Service]
WorkingDirectory = /home/nem/servant
ExecStart = /home/nem/servant/startservant.sh
Restart = always
Type = simple
User = nem
Group = nem
LimitNOFILE = 100000
StandardOutput = null
StandardError = null

[Install]
WantedBy = multi-user.target

サービス起動

# systemctl start nem-nis.service
# systemctl start nem-servant.service
# systemctl is-active nem-nis.service
active
# systemctl is-active nem-servant.service
active

自動起動有効化

# systemctl enable nem-nis.service
# systemctl enable nem-servant.service
# systemctl is-enabled nem-nis.service
enabled
# systemctl is-enabled nem-servant.service
enabled

あとはNEM Walletからスーパーノード登録すると、定期的にノード報酬がもらえる。

https://nem.io/supernode/


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です