このガイドでは Symbol の パブリックネットワーク へ参加するために、ノードをセットアップする方法を説明します。
メインパブリックネットワーク (mainnet) ではなく、テストネットワーク (testnet) に接続することで Symbol ネットワークへの接続を安全に試すことができます。ただしテストネットはテスト目的で広く使用されるため 予告なしに停止されたり、置き換えられる可能性があります 。プライベート環境のネットワークで作業する場合は 学習および開発目的のローカルネットワーク をインストールしてください。
ネットワークを実行するため、 Symbol Bootstrap パッケージを使用します。このパッケージの動作をより理解するために Symbol Bootstrap の使用 ガイドを読むことを推奨します。
ブロックチェーンノードの実行は、ディスクスペース、メモリ、および CPU 要件の点で 非常に要求が厳しい です。 以下の最小要件 を満たさない場合、ネットワークの残りの部分に追いつくのに苦労するノードが生成されます。グローバルブロックチェーンは影響を受けませんが、ノードがノード報酬を収集する資格があることはめったにありません。
注釈
専用のCPUとRAM を使用することを 強く推奨 します。共有 (一部の仮想サーバプロバイダのように) の場合、パフォーマンスに大きな影響があります。
要求事項 |
Peer ノード |
API ノード |
デュアル&投票ノード |
---|---|---|---|
CPU |
2 コア |
4 コア |
4 コア |
RAM |
8GB |
16GB |
16GB |
ディスクサイズ |
500 GB |
750 GB |
750 GB |
ディスク速度 |
次の表に 推奨要件 を示します。これらを使用すると、よりスムーズなエクスペリエンスが提供され、ある程度の将来的な保証が提供されます。
要求事項 |
Peer ノード |
API ノード |
デュアル&投票ノード |
---|---|---|---|
CPU |
4 コア |
8 コア |
8 コア |
RAM |
16GB |
32GB |
32GB |
ディスクサイズ |
500 GB |
750 GB |
750 GB |
ディスク速度 |
testnet
と mainnet
プリセットSymbol Bootstrap は適切なパブリックネットワークに接続するノードをインスタンス化する testnet
および mainnet
のプリセットがあります。このノードの特定の機能は assembly
オプションによって選択されます。
このガイドでは、例として testnet
を使用しています。これは mainnet
に変更することができます。
Peer ノード は harvester ノードとも呼ばれ、ネットワークの大黒柱です。主にトランザクションを検証して、ブロックチェーンに新しいブロックを追加し、その過程で手数料を徴収します。
symbol-bootstrap start -p testnet -a peer
API ノード は REST API を介して、外部からのアクセスを提供します。
symbol-bootstrap start -p testnet -a api
ノードが立ち上がっていて、実行されていることを確認するために、新しいブラウザタブを開いて localhost:3000/chain/info
にアクセスしてください。API ノードからのレスポンスを得ることができるはずです。
API ノードは Peer ノードよりも多くのメモリとストレージを必要とします。もしメモリやストレージに制約がある場合は、Peer ノードを変わりに起動することを推奨します。
デュアルノードは Peer と API ノードの両方の機能を提供します。
symbol-bootstrap start -p testnet -a dual
symbol-bootstrap start
を実行するだけです。上記のコマンドのいずれかを使用して Symbol ノードをインスタンス化して起動します。 シャットダウンは Ctrl+C
で行います。
または、デタッチモード (--detached
) で開始して、バックグラウンドで実行することもできます。
注釈
ノードは初回起動時に、ネットワークの一部と 同期 して 完全なブロックチェーン をダウンロードします。これには数時間かかる場合があり、その間、ノード (APIノードの場合) への REST リクエストが遅延し、誤ったチェーン高が返却される場合があります。
今あなたが作成したノードには、ノードと疎通するための Symbol アカウントが関連付けられています。たとえば、ノードがトランザクションを発行できるように、ノードに資金を提供するにはこのアカウントが必要です。
アカウントの鍵とアドレスは target
フォルダ内の target/addresses.yml
と命名されたテキストファイルから取得できます:
このファイルは YAML 形式でこのようになっています:
networkType: 152
nemesisGenerationHashSeed: 1082491EFE93AA7DAC6D0282634953DB8B5FDDAE669237B030695A9F308883D5
nodes:
-
name: peer-node-0
friendlyName: peer-node-0
roles: 'Peer,Voting'
main:
# Use these to access the node's account
privateKey: ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
publicKey: E8A918BD78C0D9CFA8D0B53BB721E62925ACB4BF92068533A3D94210D01E1D39
address: TBMXGFREJRVWJY756BVHLJAHZCOP3BW53ALFYOY
transport:
# Use these in Delegated Harvesting requests
privateKey: ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
publicKey: 7C63AF4CECE2690944FAFE3D9D52EB400447F30CCAC185BC9BE5D54CF536DDE3
address: TBTRVMCJ7TEZNCV74IX3INJHGAOLMQOU2JQEX7Y
remote:
privateKey: ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
publicKey: 6B1936560F85096E398AAF4647EADB6C748100E6D248D98B2916F003B806E725
address: TDN3G4REJA7BWDQ2TLB3M522RAYKV5AB55EEPGQ
voting:
privateKey: ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
publicKey: E97B99E7EDE0738CBE2C3BB13F3B0EEB8A361FAAD51271887D12389F1AEEF4EC
address: TBBK644JF2XMW35A7BUG6SADTLHAQ2M2KO7O2FQ
vrf:
privateKey: ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
publicKey: B304E6F9650CFFA52C6DC51CED29397F6C50F1E2F9AC34993549E0E3E4461027
address: TABWAGQNSI4AWPE3IVGS53CQWAN5BYRM5BHMNFA
main
セクションの情報でノードのアカウントにアクセスします。 delegated harvesting をアクティブ化するときは transport
セクションの情報をノードの 公開 TLS キー として使用します。
ノードがハーベスティングまたは投票 (以下を参照) を開始する前に 最小資産 が必要です。 testnet
テスト環境では Symbol の Faucet を使用して資産を調達できます。
faucet に移動して、ノードのアカウントの アドレス
と必要な量 symbol.xym
を入力し、CLAIM をクリックします。
リクエストは最初に 未確認
(保留中) になり、数秒後に 承認済み
になるでしょう。これでノードに資産が提供され、操作する準備が整いました。
Harvesting と Voting ノードを使用するには追加の構成手順が必要です:
Symbol Bootstrap はデフォルトで リモートハーベスティング を有効にした Peer ノードを作成しますが、 AccountKeyLinkTransaction と VrfKeyLinkTransaction をネットワークにアナウンスして登録する必要があります。
これは Symbol Bootstrap によって実行できます。しかしトランザクションのアナウンスには資産が必要なので symbol-bootstrap start
とは別のステップで行います。
symbol-bootstrap start
を実行して、ノードが起動したら、アカウントに資産を提供し、別のターミナルから (ただし同じフォルダで) 入力してください:
symbol-bootstrap link
これは必要な VrfKeyLinkTransaction トランザクションを作成し、ネットワークへアナウンスする必要がります。数秒経って成功したら (トランザクションが承認される必要があるため、数秒かかる場合があります) 新しいノードはハーベストする準備が整います。
ブロックファイナライゼーション プロセスは、ブロックチェーンへ確実に追加する前に、いくらかのネットワークノードがブロックの正確性についての投票を要求します。新しいノードが参加 (して 投票報酬 を獲得) するには VotingKeyLinkTransaction をネットワークにアナウンスして、投票者として登録する必要があります。これも Symbol Bootstrap で処理します。
注釈
新しく投票ノードを作成します。非投票ノードをすでに作成している場合は target
フォルダを削除するか、 symbol-bootstrap
を実行する時に --reset
スイッチを使用してください。
最初に、投票ノードとして構成する必要ために、希望するプリセットと目的のアセンブリを選択する以外に、次の内容を含むカスタムプリセットファイルを提供します。
nodes:
- voting: true
したがって、上記のファイル enable-voting-preset.yml
を呼び出すと、コマンド全体は次のようになります:
symbol-bootstrap start -p testnet -a <assembly> -c enable-voting-preset.yml
ノードが起動したら、別のターミナルから (同じフォルダで) 入力します:
symbol-bootstrap link
ハーベスティングの場合と同様に、これにより必要な VotingKeyLinkTransaction が作成され、ネットワークに送信されます。正常に完了すると、新しいノードは投票する準備が整います。
インターネットに接続されたコンピュータに、秘密鍵がプレーンテキストで保存されないように ノードを設定することができます。それについては セキュアなノードの立ち上げ を参照してください。
ノードプロパティの設定 ガイドに従って、ノードのパブリック名などのパラメータを変更します。
次のツールを使用して、ノードの機能をテストします:
Blockchain Explorer (MAINNET and TESTNET): ネットワーク内のトランザクション、アカウント、資産、ブロックの検索。
デスクトップウォレット: Mac, Linux, Windows 向け Symbol 用 クロスプラットフォームクライアント。
コマンドラインインターフェイス: よく使用されるアクションをターミナルで実行すます。
Symbol faucet : Symbol サービスをテストするための symbol.xym
を受け取れます。
これでノードが稼働したので、次のガイドを見ていきます: