2.2.2. 新規VPCを作成し、mijinをデプロイする

本章では、新規ネットワーク(VPC)に mijin Catapult(v.2) をデプロイする方法を示します。
製品版では、パラメーターを変更することで環境にあったネットワークを柔軟に構築することが可能です。
作成日:

2022/8/1

更新日:

2025/6/10

2.2.2.1. デプロイによってAWS上に構築するサービス一覧

  • Amazon EC2 (APIノード x 2 PEERノード x 3~)

  • Amazon EBS

  • Elastic Load Balancing

  • Amazon Route53

  • Amazon VPC(Nat Gateway)

  • パラメータストア

注釈

Elastic Load Balancingは、デプロイ時に指定するパラメーターの設定により、作成しないケースがあります。

2.2.2.2. View Network

製品版では、パラメーターを変更することで環境にあったネットワークを構築することが可能です。 以下にパターン例を示します。

No

ロードバランサー

APIノード配置

PEERノード配置

1

あり
公開NW

UseLoadBalancer: Yes
LoadBalancerType: external
公開NW

UseLoadBalancer: Yes
ApiPlacementNetwork: Public

非公開NW

../../_images/view_network_1_1.png

2

あり
非公開NW

UseLoadBalancer: Yes
LoadBalancerType: internal
非公開NW

ApiPlacementNetwork: Private

非公開NW

../../_images/view_network_1_2.png

3

なし

UseLoadBalancer: No
LoadBalancerTypeは設定効果なし
公開NW

ApiPlacementNetwork: Public

非公開NW

../../_images/view_network_1_3.png

4

なし

UseLoadBalancer: No
LoadBalancerTypeは設定効果なし
非公開NW

ApiPlacementNetwork: Private

非公開NW

../../_images/view_network_1_4.png

注釈

製品版では、高可用性を実現するため、シングルAZで構成はできず、マルチAZのみの構成となっています。
必ずパブリックネットワーク2つ、プライベートネットワーク2つが必要になることに留意してください。
配置はシングルリージョンとなりますが、世界20リージョン毎にデプロイすることが可能です。

2.2.2.3. Step.1

../../_images/step1_1.png

mijin Catapult EnterpriseのAMIを使用するためにサブスクライブする必要があります。赤枠のボタンを押してください。

2.2.2.4. Step.2

../../_images/step2_1.png

mijin Catapult Enterprise AMIを使用するため、使用の承認をしてください。

2.2.2.5. Step.3

../../_images/step3_1.png

日: Configから起動するために、赤枠の文字をクリックしてください。

2.2.2.6. Step.4

../../_images/step4_1_new.png

①の赤枠にて使用するテンプレートを選択します。ここでは新規ネットワークを作成するため「mijin Catapult Enterprise on New VPC CFT」を指定します。

②の赤枠ににて mijinのバージョンを指定します。

③ mijinを展開するリージョンを指定します。

④の赤枠の「 Continue to Launch」を押します。

2.2.2.7. Step.5

../../_images/step5_1_new.png

日: ①の赤枠にて、mijinの構築するサービスを指定します。ここでは「Launch CloudFormation」を指定します。 日: ②の赤枠の、「Launch」を押します

2.2.2.8. Step.6

../../_images/step6_1.png

日: とくに編集せず、赤枠の「Next」を押します。

2.2.2.9. Step.7

../../_images/step7_1_new.png

日: パラメータを入力します。

No

Parameter

Describe

推奨値

Stack Name

このスタックにおける名前を記載してください。

Service Name

スタックによって作成されるサービス名を記載してください。
全リソースの冠名として使用されます。

Availability Zone1

お使いのリージョンのアベイラビリティゾーンを選択してください。(Multi-AZ構成のため)

Availability Zone2

お使いのリージョンのアベイラビリティゾーンを選択してください。(Multi-AZ構成のため)
Availability Zone1と同じAZを指定しないでください。

Public Location IP

mijin CatapultのAPIへの接続許可IPアドレスを指定してください。
IPアドレスはレンジでも可能です(/24など)

XX.XX.XX.XX/32など

Default UnixUser

作成するEC2インスタンスの標準のUnixユーザーを記載してください。

ubuntu

KeyName

作成するEC2インスタンスのリモート接続用のSSH鍵を選択してください。
表示されてない場合、事前に鍵を作成する必要があります。
鍵の作成方法は こちら をご確認ください。

ApiPlacementNetwork

APIノードであるEC2インスタンスを配置するネットワークを選択してください。

Public

ApiInstanceType

APIノードのEC2インスタンスのスペックを選択してください。
スペックについては、 アーキテクチャとスペック要件 を参考に選択してください。

c5n.2xlarge以上

ApiRootVolumeSize

APIノードのルートパーティションのディスクサイズ(GB)を選択してください。
ディスクはgp3のため、各リージョンのアベイラビリティゾーンで使用可能か確認してください。
主に、Dockerコンテナイメージ、DockerログやSystem logに使われるため、推奨値以上の容量を設定してください。

30GB以上

ApiBlockVolumeSize

APIノードのmijinブロックデータを置くディスクサイズ(GB)を選択してください。
ディスクはgp3のため、各リージョンのアベイラビリティゾーンで使用可能か確認してください。
mijin Catapult(v.2) のブロックチェーンデータを保存する領域のため、推奨値以上の容量を設定してください。

500GB以上

ApiBlockVolumeIops

APIノードのmijinブロックデータを置くディスクのディスク読み書き回数/秒を選択してください。

3000IOPS以上

ApiMongoVolumeSize

APIノードのmijin mongoデータを置くディスクサイズ(GB)を選択してください。
ディスクはgp3のため、各リージョンのアベイラビリティゾーンで使用可能か確認してください。
mijin Catapult(v.2) のブロックチェーンデータを容易に呼び出すためのmongoデータの領域となるため、推奨値以上の容量を設定してください。

300GB以上

ApiMongoVolumeIops

APIノードのmijin mongoデータを置くディスクのディスク読み書き回数/秒を選択してください。

3000IOPS以上

PeerNumberOfUnits

PEERノード台数を指定してください。

3

PeerInstanceType

PEERノードのEC2インスタンスのスペックを選択してください。(全PEERノード共通)
スペックについては、 アーキテクチャとスペック要件 を参考に選択してください。

c5n.xlarge以上

PeerRootVolumeSize

PEERノードのルートパーティションのディスクサイズ(GB)を選択してください。(全PEERノード共通)
ディスクはgp3のため、各リージョンのアベイラビリティゾーンで使用可能か確認してください。
主に、Dockerコンテナイメージ、DockerログやSystem logに使われるため、推奨値以上の容量を設定してください。

30GB以上

PeerBlockVolumeSize

PEERノードのmijinブロックデータを置くディスクサイズ(GB)を選択してください。(全PEERノード共通)
ディスクはgp3のため、各リージョンのアベイラビリティゾーンで使用可能か確認してください。
mijin Catapult(v.2) のブロックチェーンデータを保存する領域のため、推奨値以上の容量を設定してください。

500GB以上

PeerBlockVolumeIops

PEERノードのmijinブロックデータを置くディスクのディスク読み書き回数/秒を選択してください。(全PEERノード共通) 。

3000IOPS以上

CatapultVersion

mijinのバージョンを選択してください。

v10038

CatapultShareMode

ブロック生成に必要な情報(アドレスやノードのSSL公開鍵など)の保存先を選択してください。
現在保存先は AWS AWS Systems Managerのパラメータストアのみとなります。

ssm

CatapultNetwork

mijinのネットワークを選択してください。

mijin

Catapult BlockGenerationTargetTime

mijinのブロック生成時間を選択してください。

15s

CatapultEffectiveFee

トランザクション、レンタル手数料のあり/なしを選択してください。

No

MaxCosignedAccount

1アカウントが署名できる最大数を選択してください。

25

FinalizationType

ファイナライゼーションの種類を選択してください。

Deterministic

MaxTransactionperBlock

1ブロック辺りの最大トランザクション数を選択してください。

6000

RestThrottring

API Rest接続数上限を選択してください。

30tps

UnconfirmCacheSize

未承認トランザクションを保存できるサイズを選択してください。

UseLoadBalancer

ロードバランサー(NLB)による負荷分散を使用するかを選択してください。

Yes

LoadBalancerType

-ロードバランサーが内部/外部に設置するか選択してください。

External

ImageId

AWS側が管理するAMI IDパスです。この値を修正することはできません。

変更不可

MPS3BucketName

AWS側が管理するS3バケット名です。この値を修正することはできません。

変更不可

MPS3BucketRegion

AWS側が管理するS3バケットのリージョンです。この値を修正することはできません。

変更不可

MPS3KeyPrefix

AWS側が管理するS3バケットのプレフィックスです。この値を修正することはできません。

変更不可

mijinStackAlreadyExist

mijinスタックが他に存在するかを選択してください。
先にmijinスタックが存在する場合、2回目以降のスタック作成に失敗するため2回目以降のmijinスタック作成の際は「Yes」を選択してください。

No

日: パラメータの入力完了後、「Next」を押します。

2.2.2.10. Step.8

../../_images/step8_1.png

日: とくに編集せず、赤枠の「Next」を押します。

2.2.2.11. Step.9

../../_images/step9_1.png

日: ①の赤枠にて2つの項目にチェックを入れます。

日: ②の赤枠の「Create Stack」を押します。エラーがなければ作成が始まります。

2.2.2.12. Step.10

../../_images/step10_1.png

日: Stackが始まり「CREATE_IN_PROGRESS」になっていることを確認してください。この状態はおよそ20~30分程度かかります。

2.2.2.13. Step.11

../../_images/step11_1.png

日: 「CREATE_COMPLATE」の状態であれば、mijinの作成が完了しました。

2.2.2.14. Step.12

../../_images/step12_1.png

日: 作成したStackの「Outputs」を押すと、作成されたmijinの設定情報を確認できます。

Key

Description

View

mijinLBEndpoint

ロードバランサーを通したmijinのAPIエンドポイントです。APIノードを負荷分散しますが、セッション維持設定がされておりソースIPにて判定されます。スティッキーセッションについては、以下を参考にしてください。

mijinEndpoint

APIノードであるEC2インスタンスのmijinのAPIエンドポイントです。ロードバランサー経由ではなく直接APIへアクセスすることができます。

chainInfo

mijinの現在のブロック数の確認ができます。
ここでブロック数が2以上になっていることを確認してください。
../../_images/chaininfo.png

harvestAddress

URLはAWS Systems Managerサービスのパラメータストアへのリンクとなっており、基軸通貨を分配したアドレスにリンクされています。

../../_images/harvest_address.png

emptyAddress

URLはAWS Systems Managerサービスのパラメータストアへのリンクとなっており、未使用のアドレスを生成しています。

../../_images/empty_address.png

nodePeers

APIからノードの接続状態を確認することができます。api1台、設定したpeer台数が表示されていれば問題ありません。

../../_images/node_peers.png

日: これでmijin Catapultを使用する準備が整いました。それでは次の項で操作を始めてみましょう!