Peer ノードに簡単な Api を設置

Peer ノードは Rest ゲートウェイを持っていないので、内部情報を HTTP 経由で取得出来ません。しかし、ノード間の通信に使われている SSL ソケット通信を使用することで、一部分ですが内部情報を取得出来ます。ここでは、SSL ソケット通信を最初から説明するのは大変なので、symbol-peertools を使用して簡易 Rest を設置します。

symbol-peertools のインストール

Node.js v18 以上が必要です。Symbol サーバの証明書を作成したときにインストールしていると思うので割愛します。

Symbol をビルドしたディレクトリに移動。

cd ~/symbol/client/catapult/build

symbol-peertools をインストール。

npm install -g symbol-peertools

symbol-peertools の設定

ウィザードで簡単に設定出来ます。

symbol-peertools wizard

デフォルトで良いです。途中、秘密鍵保存用のパスワードを聞かれるので、Symbol サーバの証明書を作成したときのパスワードを入力してください。

$ symbol-peertools wizard
                         _             _                                  _                 _      
  ___  _   _  _ __ ___  | |__    ___  | |        _ __    ___   ___  _ __ | |_  ___    ___  | | ___ 
 / __|| | | || '_ ` _ \ | '_ \  / _ \ | | _____ | '_ \  / _ \ / _ \| '__|| __|/ _ \  / _ \ | |/ __|
 \__ \| |_| || | | | | || |_) || (_) || ||_____|| |_) ||  __/|  __/| |   | |_| (_) || (_) || |\__ \
 |___/ \__, ||_| |_| |_||_.__/  \___/ |_|       | .__/  \___| \___||_|    \__|\___/  \___/ |_||___/
       |___/                                    |_|                                                
? Certificate output directory: ./cert
? Overwrite? yes
? Peer port: 7900
? REST port: 3000
? CA name: Simple Symbol CA
? CA certificate days: 7300
? Node name: Simple Symbol Node
? Node certificate days: 375
? Encrypted privatekeys file save path: ./privatekeys.yaml
? Privatekeys encryption password: *******************
? Do you monitor Symbol Peer nodes?: no

簡易 Rest 起動と停止

起動

symbol-peertools rest start

停止

symbol-peertools rest stop

動作確認

Symbol サーバを起動して、Restも同様に起動させて、ローカルのブラウザから http://localhost:3000/node/info へアクセスし、ノード情報が表示されるか確認します。

symbol-peertools の Rest は、以下を実装しています。

  • /chain/info
  • /node/info
  • /node/peers
  • /node/time
  • /node/unlockedaccount
  • /transactions

コメントを残す

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