3.5. mijin Catapult(v.2) 環境構築オプション表

通常mijin環境の構築はAnsibleを使用しており、Playbookのansibleオプションをここで示します。

作成日:

2022/8/1

更新日:

2025/2/6

No

項目名

Default値

入力値

說明

1

service

peer

peer,api

ansibleで構築するモードを指定します。
[peer] peerモードで構築します
[api] apiモードで構築します

2

share_mode

dir

dir,ssm,s3

Nemesisブロック作成時に使用した初期アドレスを配置します。
[dir] share_directoryのみに保存されます。
[ssm] AWS SSM パラメータストアに保存します。
[s3] AWS S3に保存します。

3

aws_region

ap-northeast-1

String

AWSのリージョンを指定します。リージョンを指定することで、S3及びSSMへの取得に使われます。

4

ssm_ps_name

share_mode: ssmの場合、SSMパラメータストアに保存するパスを指定します。

5

s3_bucket_name

share_mode: s3の場合、S3バケット名を指定します。

6

api_dual_mode

FALSE

trure,false

service: apiの場合、dualモードで起動するかを指定します。
[Yes] dualモードで起動します。(Harvestの有効化)
[No] 通常モードで起動します。

7

api_hosts

[192.168.96.131]

Array[String, String]

APIノードのホスト名又はIPアドレスを配列で指定します。

8

peer_hosts

[192.168.96.132, 192.168.96.133]

Array[String, String]

PEERノードのホスト名又はIPアドレスを配列で指定します。

9

unix_user

catapult

String

mijinを立ち上げるユーザーを指定します。

10

repo_name

mijin-catapult-package

String

mijinのアプリケーションを配置するディレクトリを指定します。
/home/[unix_user]/[repo_name]

11

catapult_version

v10037

v10037,v10036,v10035,v10034,v10000

catapultのバージョンを指定します。
v10037

12

network_identifier

mijin

mijin,mijin-test,public,public-test

mijinで構築するネットワークタイプを指定します。

13

mongo_docker_version

4.2.5

String

APIノードが使用するmongoのコンテナイメージのバージョンを指定します。

14

mongo_host

db

String

APIノードのmongoコンテナ名を指定します。

15

mongo_max_connection

7

Int

APIノードのmongoへの接続制限を指定します。

16

mongo_base_retry_delay

750

Int

APIノードのmongoへの接続リトライ時間を指定します。

17

python_docker_version

3.9.0

String

pythonのdocker versionを指定します。

18

enable_pip_install

FALSE

trure,false

pip installを実行するかを指定します。

19

share_directory

/opt/mijin/shares

String

各ノードのNemsisブロック作成時にアドレスデータを保管するディレクトリを指定します。
このディレクトリは「share_mode」関係なく、保存に使用されます。(s3及びssmの場合は一時保管置き場として)
また、このディレクトリにデータが存在すれば、Nemesisブロックの再生成が可能になります。

20

block_directory

/opt/mijin/blocks

String

各ノードのブロックデータの保存ディレクトリを指定します。

21

mongo_directory

/opt/mijin/mongo

String

APIノードのmongoデータの保存ディレクトリを指定します。

22

docker_network_range

172.20.0.0/24

String

dockerが使用するネットワークレンジを指定します。
同一ネットワークが環境にある場合は、変更する必要があります。

23

rest_ip_address

172.20.0.9

String

dockerが使用するネットワークでreat-gatewayコンテナのIPアドレスを指定します。
[docker_network_range]のIPレンジを変更した場合、合わせて変更してください。

24

domain

mijin.internal

String

各ノード間の通信で使用するSSL証明書のcommon nameを指定します。
発行時に使用するだけのため、とくに変更必要はありません。

25

node_port

7900

Int

各ノード間通信で使用するTCPポート番号を指定します。

26

enable_cache_database_storage

TRUE

trure,false

キャッシュデータ保存を有効化するかを指定します。
この設定は、トランザクション処理数を高めたい場合、無効にすることで効果があります。

27

enable_auto_sync_cleanup

TRUE

trure,false

一時同期ファイルを自動的にクリーンアップするかを指定します。APIノード又はDualモードではブローカーが実施するため、PEERノードのみの指定になります。

28

base_namespace

cat

String

基軸通貨で使用するルートネームスペースを指定します。

29

base_currency_name

currency

String

基軸通貨で使用するサブネームスペースを指定します。

30

base_harvest_name

harvest

String

基軸通貨のモザイクで使用するサブネームスペースを指定します。

31

currency_supply

8'998'999'998'000'000

String

基軸通貨(base_namespace.base_currency_name)の発行数を指定します。カンマ区切りではなく、シングルクォーテーションで区切る必要があります。

32

harvest_supply

15'000'000

String

基軸通貨(base_namespace.base_harvest_name)のモザイクの発行数を指定します

33

block_generation_target_time

15s

String

ブロック生成時間を指定します。Intではなく、「15s」とする必要があります。

34

rest_gateway_private_key_num

1

Int

rest_gatewayが使用するアドレスの作成数を指定します。
0.9.5.1以降はcert_modeがあるため、cert_modeが有効の場合は使用されることはありません。

35

nemesis_generation_hash_num

1

Int

Nemsisブロック生成時に使用するGenerationHash用のアドレス作成数を指定します。変更不要です。

36

nemesis_addresses_harvesting_num

4

Int

Nemsisブロック生成時に使用するHarvest用のアドレス作成数を指定します。この設定はPEERノード又はDualノードのHarvest設定に使用されるため、Harvestを行うノード数と同じ数必要です。

37

nemesis_signer_private_key_num

1

Int

Nemsisブロック生成時に使用する署名用アドレスの作成数です。変更不要です

38

nemesis_addresses_num

10

Int

空のアドレス作成数を指定します。使用していないアドレスのため、初期時に使用することが可能です。(常にランダムで作成されるため、ユニークなアドレスです)

39

transaction_selections_trategy

oldest

String

ノードが優先するトランザクションの選択方法を指定します。
最も古いものから(oldest)
手数料最大化(maximize-fee)
手数料最小化(minimize-fee

max_time_behind_pull_transaction_start

5m

String

41

min_fee_multiplier

100

Int

トランザクションを伝播させてブロックへ含めるための最小手数料乗数を指定します。この値を0にすることでトランザクション手数料の無効化が可能です。

42

default_dynamic_fee_multiplier

1'000

String

ネットワーク変動による実効レンタル手数料に計算に使われる値を指定します。

43

root_namespace_rental_fee_per_block

1

Int

ネットワーク変動による実効レンタル手数料に計算に使われる値を指定します。

44

child_namespace_rental_fee

100

Int

子ネームスペースレンタル手数料を指定します。

45

mosaic_rental_fee

500

Int

モザイクレンタル手数料を指定します。

46

rest_throttling_burst

100

Int

APIのエンドポイント接続への一時的な最大接続数を指定します。

47

rest_throttling_rate

30

Int

APIのエンドポイント接続への処理可能な接続数を指定します。

48

unconfirmd_cache_max_response_size

20MB

String

ノードにおける未承認トランザクションの受信サイズの最大値を指定します。

49

unconfirmd_cache_max_size

5MB

String

ノードにおける未承認トランザクションの最大値を指定します。

50

cache_max_response_size

20MB
# old_settings ~ 0.10.0.4

String

ノードにおける未承認トランザクションの受信サイズの最大値を指定します。
(0.10.0.4までのバージョンで使用)

51

cache_max_size

50'000
# old_settings ~ 0.10.0.4

String

ノードにおける未承認トランザクションの最大値を指定します。
(0.10.0.4までのバージョンで使用)

52

block_disruptor_slot_count

4096

Int

53

block_element_trace_interval

1

Int

54

block_disruptor_max_memory_size

300MB

String

55

transaction_disruptor_slot_count

8192

Int

56

transaction_element_trace_interval

10

Int

57

max_transaction_per_block

6'000

String

1ブロック内の最大トランザクション数を指定します。これはブロック生成時間の値によっては、TPSが変化することに注意してください。

58

min_transaction_failures_count_for_ban

8

Int

59

min_transaction_failures_percent_for_ban

10

Int

60

partial_cache_max_response_size

5MB

String

ノードが受信できる部分トランザクションキャッシュの総量を指定します。

61

partial_cache_max_size

20MB

String

ノードが保存できる部分トランザクションキャッシュの総量を指定します。

62

enable_finalization

TRUE

trure,false

ファイナライゼーションプラグインを有効するかを指定します。

63

max_rollback_blocks

0

Int

ブロックがロールバックできる数を指定します。0であれば、確定的ファイナライゼーションとなり、1以上であれば、確率的ファイナライゼーションとなります。確率的ファイナライゼーションの値は、impotance_groupの1/2の値でなければなりません。

64

enable_voting

TRUE

trure,false

Votingを有効にするか指定します。

65

voting_set_grouping

160

Int

Votingのラウンドとなるブロック数を指定します。この値はimportance_groupingの乗数である必要があります。

66

votingkey_start_epoch

1

Int

VotingKeyの有効期間の最小値を指定します。

67

votingkey_end_epoch

26280

Int

VotingKeyの有効期間の最大値を指定します。

計算方法
(VotingSetGroup * maxVotingKeyLifetime) / ( 60 / blockGenerationTargetTime * 60 * 24)

180 * 26280 / (60 /15 60 24) = 821日

68

voting_key_dilution

128

Int

69

enable_revote_on_boot

FALSE

trure,false

70

importance_grouping

40

Int

Impotanceのラウンドとなるブロック数を指定します。Impostanceスコアはラウンドごとに再計算されます。

71

max_transaction_lifetime

24h

String

トランザクションがキャッシュできる最大期間を指定します。

72

max_block_future_time

500ms

String

受け付け可能なブロックの最大未来時間を指定します。

73

max_transactions_per_aggregate

1'000

String

アグリゲートトランザクションのインナートランザクションの最大数を指定します。symbolでは100ですが、mijinでは1000にしています。

74

max_cosignatures_per_aggregate

25

Int

アグリゲートボンデッドトランザクションで署名できる最大数を指定します。

75

max_bonded_transaction_lifetime

48h

String

アグリゲートトランザクションがキャッシュできる最大期間を指定します。

76

locked_funds_per_aggregate

10'000'000

String

ロック保証金を指定します。

77

max_hash_lock_duration

2d

String

発行したハッシュロックトランザクションの署名できる最大期間を指定します。

78

max_secret_lock_duration

30d

String

発行したシークレットロックトランザクションに署名できる最大期間を指定します。

79

min_proof_size

1

Int

シークレットプルーフの最低byte数を指定します。

80

max_proof_size

1000

Int

シークレットプルーフの最大byte数を指定します。

81

max_meta_value_size

1024

Int

mosaicやaccountのメタデータのValueの最大値を指定します。

82

max_cosignatories_per_account

25

Int

アカウントの最大連署者数を指定します。

83

max_cosigned_accounts_per_account

25

Int

アカウント辺りの連署できる最大アカウント数を指定します。

84

max_multisig_depth

3

Int

マルチシグの深度を指定します。

85

max_mosaics_per_account

1'000

String

アカウント辺りが持てる最大モザイク数を指定します。

86

max_mosaic_duration

3650d

String

Mosaic発行時の最大有効期間を指定します。

87

max_mosaic_divisibility

6

Int

モザイクの可分性の最大数を指定します。

88

max_name_size

64

Int

Namespaceの最大文字数を指定します。

89

max_child_namespaces

256

Int

親Namespaceで作成できる最大SubNamespace数を指定します。

90

max_namespace_depth

3

Int

Namespaceの深度を指定します。

91

min_namespace_duration

1m

String

Namespaseの最小期間を指定します。

92

max_namespace_duration

3650d

String

Namespaceの最大期間を指定します。

93

namespace_grace_period_duration

30d

String

Namespaceの有効期間後の猶予期間を指定します。

94

max_account_restriction_values

512

Int

アカウント辺りのアカウント制限の最大数を指定します。

95

max_mosaic_restriction_values

20

Int

Mosaic辺りのMosaic制限の最大数を指定します。

96

max_message_size

1024

Int

トランザクションメッセージの最大数を指定します。