NEM(NIS1)ノードのセットアップ
このページでは、ビルド済みの NEM(NIS1)ノードを Ubuntu 24 にインストールする方法を説明します。
Java のインストール
sudo apt install openjdk-11-jre-headless
NEM(NIS1)クライアントのダウンロード
NIS1 クライアントの最新版は、下記のリンクから確認できます。
https://github.com/NemProject/nem/releases
2025 年 10 月 1 日時点の最新バージョンは v0.6.102
です。
curl -OL https://github.com/NemProject/nem/releases/download/v0.6.102/nis-0.6.102.tgz
展開します。
tar -xzvf nis-0.6.102.tgz
rm nis-0.6.102.tgz
展開された package
ディレクトリは、任意の場所に配置してください。
NIS1 の設定
配置場所
ここでは/opt
に配置する例を紹介します。
sudo mv package /opt/nis1
cd /opt/nis1
コンフィグファイルの作成と編集
config-user.properties
ファイルを新規作成し、必要な項目を設定します。
vi nis/config-user.properties
nem.folder
: ブロックデータの保存先(デフォルトは~/nem
)nem.host
: ドメインがない場合は IP アドレスを指定しますnis.bootName
: ノードの名前nis.unlockedLimit
: ハーベストを受け入れる人数の上限(デフォルトは 4、10 程度が一般的です)nis.ipDetectionMode
: ドメイン設定時に IP アドレスになるのを防止nis.bootKey
: NEM ウォレットの委任秘密鍵を指定
nis/config-user.properties
# ブロックデータ保存ディレクトリ
nem.folder = /opt/nis1
# ホスト名
nem.host = xxxx.xxxxxxxx.com
# ブート名(ノードの名前です)
nis.bootName = MyNode
# ハーベストを受け入れる人数の上限値
nis.unlockedLimit = 10
# HOSTがIPにならないようにする
nis.ipDetectionMode = Disabled
# 委任秘密鍵
nis.bootKey = <委任秘密鍵>
NIS1 ノードの起動確認
一度ノードを起動し、動作を確認します。
起動
sh nix.runNis.sh
ポート開放
sudo ufw allow 7890
sudo ufw allow 7778
確認
ノードの状態を確認します。
curl -s http://127.0.0.1:7890/heartbeat | jq
ノードの基本情報を確認します。
curl -s http://127.0.0.1:7890/node/info | jq
ブロック高を確認します。
curl -s http://127.0.0.1:7890/chain/height | jq
停止
curl -s http://127.0.0.1:7890/shutdown
サービス化(デーモン化)
sudo vi /etc/systemd/system/nis1.service
/etc/systemd/system/nis1.service
[Unit]
Description=NIS1 Client
After=network.target
[Service]
ExecStart=/usr/bin/java -Xms4G -Xmx8G -XX:+UseG1GC -cp ".:./*:../libs/*" org.nem.deploy.CommonStarter
ExecStop=/usr/bin/curl -s http://127.0.0.1:7890/shutdown
Restart=on-failure
RestartSec=2
User=<実行ユーザー名>
Group=<実行ユーザー名>
StandardOutput=journal
StandardError=journal
WorkingDirectory=/opt/nis1/nis
SuccessExitStatus=143
LimitNOFILE=65536
[Install]
WantedBy=multi-user.target
-Xms4G
と -Xmx8G
はマシンスペックに合わせて変更してください。マシンメモリ容量の 1/3 ~ 1/2 くらいが良いかなと思います。
サービスをリロード
ユニットファイルを編集した後、systemd に変更をリロードする必要があります。
sudo systemctl daemon-reload
サービスを有効化
サービスを有効化して、システム起動時に自動的に起動するように設定します。
sudo systemctl enable nis1
サービスを開始
サービスを開始します。
sudo systemctl start nis1
サービスを停止
サービスを停止します。
sudo systemctl stop nis1
ログの確認
nis1 サービスのログを確認します。最新から見るには -r
オプションを使います。
sudo journalctl -u nis1 -r
リアルタイムで確認したい場合は -f
オプションを使います。
sudo journalctl -u nis1 -f
色付きで表示したい場合は、-o cat
オプションを追加します。
sudo journalctl -u nis1 -f -o cat