Skip to content

Commit 5f18ee5

Browse files
authored
Merge pull request #7 from zama-ai/piizama/update-example-config-testnet-mainnet
feat(mpc-operator-check): create dedicated testnet/mainnet example co…
2 parents 9e8cd7b + 9344754 commit 5f18ee5

8 files changed

Lines changed: 415 additions & 24 deletions

File tree

Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
image:
2+
repository: offchainlabs/nitro-node
3+
tag: v3.7.6-c0fe95e
4+
5+
# https://docs.arbitrum.io/run-arbitrum-node/run-full-node
6+
customArgs:
7+
- "http.addr=0.0.0.0"
8+
- "http.corsdomain=*"
9+
- "http.vhosts=*"
10+
- "http.rpcprefix=/"
11+
- "ws.addr=0.0.0.0"
12+
- "ws.origins=*"
13+
- "ws.rpcprefix=/"
14+
- "http.api=net,web3,eth,debug,txpool"
15+
16+
persistence:
17+
enabled: true
18+
size: 250Gi
19+
storageClassName: gp3
20+
21+
extraEnv:
22+
# Required to verify the rollup data availability on parent chain
23+
# A paid arbitrum RPC provider such as Quicknode or Alchemy is suggested
24+
# Should be stored in a secret
25+
- name: NITRO_PARENT-CHAIN_CONNECTION_URL
26+
valueFrom:
27+
secretKeyRef:
28+
name: arbitrum
29+
key: arbitrum-rpc-url
30+
# # Required to forward transactions to the sequencer (get it from zama)
31+
- name: NITRO_EXECUTION_FORWARDING-TARGET
32+
valueFrom:
33+
secretKeyRef:
34+
name: conduit
35+
key: conduit-rpc-http-url
36+
37+
# https://docs.arbitrum.io/run-arbitrum-node/run-full-node#minimum-hardware-configuration
38+
resources:
39+
requests:
40+
cpu: 2
41+
memory: 8Gi
42+
limits:
43+
cpu: 4
44+
memory: 16Gi
45+
46+
# It's recommended to run the full-node on a dedicated node
47+
# by specifying a nodeSelector and tolerations
48+
#nodeSelector:
49+
# karpenter.sh/nodepool: custom-node-pool
50+
51+
#tolerations:
52+
# - key: karpenter.sh/nodepool
53+
# effect: NoSchedule
54+
# operator: Equal
55+
# value: custom-node-pool
56+
57+
configmap:
58+
enabled: true
59+
data:
60+
http:
61+
rpcprefix: ""
62+
parent-chain:
63+
id: 42161
64+
connection:
65+
# Overridden by env var for authenticated RPC, see extraEnv section
66+
# Public RPCs: https://chainlist.org/?chain=42161&search=arbitrum
67+
# However, they will usually return 429 Too Many Requests
68+
#url: "https://arb1.arbitrum.io/rpc"
69+
chain:
70+
id: 261131
71+
name: conduit-orbit-deployer
72+
# Note: {"parent-chain-is-arbitrum": true} added to JSON
73+
info-json: '[{"parent-chain-is-arbitrum": true, "chain-id":261131,"parent-chain-id":42161,"chain-name":"conduit-orbit-deployer","chain-config":{"chainId":261131,"homesteadBlock":0,"daoForkBlock":null,"daoForkSupport":true,"eip150Block":0,"eip150Hash":"0x0000000000000000000000000000000000000000000000000000000000000000","eip155Block":0,"eip158Block":0,"byzantiumBlock":0,"constantinopleBlock":0,"petersburgBlock":0,"istanbulBlock":0,"muirGlacierBlock":0,"berlinBlock":0,"londonBlock":0,"clique":{"period":0,"epoch":0},"arbitrum":{"EnableArbOS":true,"AllowDebugPrecompiles":false,"DataAvailabilityCommittee":true,"InitialArbOSVersion":40,"InitialChainOwner":"0xe27Bf67F0D2169B757267Ae5a1A27f91FD6660b8","GenesisBlockNum":0}},"rollup":{"bridge":"0xB95b70f48C9F45293d1EE6670d0C5D8D4F045e46","inbox":"0x893a8A0d0FC49cEA7d27dac7E5Ab760639A041C7","sequencer-inbox":"0xAe7B43ec6f8d0EccebB7879Ddc42dab57b75654D","rollup":"0xdC10dD8E1Ff27563c1721f0B0aBc55d3e8e100d4","validator-utils":"0x08Ca9925b88c54100568c8d41eFAF8Fecc695d3a","validator-wallet-creator":"0x27a722f5Ba1E7119a48A990eE5C262413249eB2B","deployed-at":391581390}}]'
74+
execution:
75+
# Overridden by env var for authenticated RPC
76+
#forwarding-target: "https://rpc-zama-gateway-mainnet.t.conduit.xyz"
77+
parent-chain-reader:
78+
poll-timeout: 10s
79+
poll-interval: 15s
80+
forwarder:
81+
update-interval: 100ms
82+
node:
83+
data-availability:
84+
enable: true
85+
sequencer-inbox-address: "0xAe7B43ec6f8d0EccebB7879Ddc42dab57b75654D"
86+
rest-aggregator:
87+
enable: true
88+
urls:
89+
- "https://das-zama-gateway-mainnet.t.conduit.xyz"
90+
# Required to pull unfinalized blocks from the sequencer
91+
feed:
92+
input:
93+
url: "wss://relay-zama-gateway-mainnet.t.conduit.xyz"
94+
staker:
95+
log-query-batch-size: 5000
96+
metrics: true
97+
98+
readinessProbe:
99+
enabled: true
100+
tcpSocket:
101+
port: http-rpc
102+
103+
startupProbe:
104+
enabled: false
Lines changed: 129 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,129 @@
1+
commonConfig:
2+
databaseUrl: "postgresql://$(DATABASE_ENDPOINT)/kmsconnector"
3+
# Cannot be used for tx-sender until full node supports eth_sendRawTransactionSync
4+
# gatewayUrl: "http://gateway-node:8547"
5+
gatewayUrl: "$(CONDUIT_RPC_HTTP_URL)"
6+
chainId: "261131"
7+
gatewayContractAddresses:
8+
decryption: "TODO_MAINNET"
9+
gatewayConfig: "TODO_MAINNET"
10+
kmsGeneration: "TODO_MAINNET"
11+
env:
12+
- name: CONDUIT_RPC_HTTP_URL
13+
valueFrom:
14+
secretKeyRef:
15+
name: conduit
16+
key: conduit-rpc-http-url
17+
- name: DATABASE_ENDPOINT
18+
valueFrom:
19+
secretKeyRef:
20+
name: connector-database
21+
key: endpoint
22+
- name: PGUSER
23+
valueFrom:
24+
secretKeyRef:
25+
name: connector-database
26+
key: username
27+
- name: PGPASSWORD
28+
valueFrom:
29+
secretKeyRef:
30+
name: connector-database
31+
key: password
32+
33+
kmsConnectorDbMigration:
34+
enabled: true
35+
image:
36+
name: hub.zama.org/zama-protocol/zama-ai/fhevm/kms-connector/db-migration
37+
tag: v0.9.11
38+
env: []
39+
affinity:
40+
nodeAffinity:
41+
requiredDuringSchedulingIgnoredDuringExecution:
42+
nodeSelectorTerms:
43+
- matchExpressions:
44+
- key: "node.kubernetes.io/enclave-enabled"
45+
operator: In
46+
values:
47+
- "true"
48+
tolerations:
49+
- key: "node.kubernetes.io/enclave-enabled"
50+
effect: NoSchedule
51+
operator: Equal
52+
value: "true"
53+
54+
kmsConnectorGwListener:
55+
enabled: true
56+
nameOverride: kms-connector-gw-listener
57+
image:
58+
name: hub.zama.org/zama-protocol/zama-ai/fhevm/kms-connector/gw-listener
59+
tag: v0.9.11
60+
# Set 2 replicas for more resiliency and proper rolling upgrades
61+
replicas: 2
62+
affinity:
63+
nodeAffinity:
64+
requiredDuringSchedulingIgnoredDuringExecution:
65+
nodeSelectorTerms:
66+
- matchExpressions:
67+
- key: "node.kubernetes.io/enclave-enabled"
68+
operator: In
69+
values:
70+
- "true"
71+
tolerations:
72+
- key: "node.kubernetes.io/enclave-enabled"
73+
effect: NoSchedule
74+
operator: Equal
75+
value: "true"
76+
77+
kmsConnectorKmsWorker:
78+
enabled: true
79+
nameOverride: kms-connector-kms-worker
80+
image:
81+
name: hub.zama.org/zama-protocol/zama-ai/fhevm/kms-connector/kms-worker
82+
tag: v0.9.11
83+
replicas: 1
84+
config:
85+
kmsCoreEndpoints: "http://kms-core:50100"
86+
affinity:
87+
nodeAffinity:
88+
requiredDuringSchedulingIgnoredDuringExecution:
89+
nodeSelectorTerms:
90+
- matchExpressions:
91+
- key: "node.kubernetes.io/enclave-enabled"
92+
operator: In
93+
values:
94+
- "true"
95+
tolerations:
96+
- key: "node.kubernetes.io/enclave-enabled"
97+
effect: NoSchedule
98+
operator: Equal
99+
value: "true"
100+
101+
kmsConnectorTxSender:
102+
enabled: true
103+
nameOverride: kms-connector-tx-sender
104+
image:
105+
name: hub.zama.org/zama-protocol/zama-ai/fhevm/kms-connector/tx-sender
106+
tag: v0.9.11
107+
replicas: 1
108+
serviceAccountName: mpc-party-connector
109+
wallet:
110+
# Use the kms-connector tx-sender KMS key as ethereum wallet
111+
awsKms:
112+
enabled: true
113+
configmap:
114+
name: mpc-party
115+
key: KMS_CONNECTOR__TX_SENDER_AWS_KMS_KEY_ID
116+
affinity:
117+
nodeAffinity:
118+
requiredDuringSchedulingIgnoredDuringExecution:
119+
nodeSelectorTerms:
120+
- matchExpressions:
121+
- key: "node.kubernetes.io/enclave-enabled"
122+
operator: In
123+
values:
124+
- "true"
125+
tolerations:
126+
- key: "node.kubernetes.io/enclave-enabled"
127+
effect: NoSchedule
128+
operator: Equal
129+
value: "true"
Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
kmsPeers:
2+
id: 1
3+
14
kmsGenCertAndKeys:
25
nameOverride: kms-gen-cert-and-keys
36
enabled: true
@@ -7,7 +10,7 @@ kmsCore:
710
nameOverride: kms-core
811
image:
912
name: hub.zama.org/zama-protocol/zama-ai/kms/core-service-enclave
10-
tag: v0.12.1
13+
tag: v0.12.4
1114
serviceAccountName: mpc-party
1215
envFrom:
1316
configmap:
@@ -58,10 +61,6 @@ kmsCore:
5861
port: 50001
5962
nitroEnclave:
6063
enabled: true
61-
# Enclave CPU count, must be a multiple of 2 since whole cores (not hyperthreads) are sliced off and dedicated to the enclave
62-
cpuCount: 72
63-
# Enclave Memory in GiB
64-
memoryGiB: 120
6564
aws:
6665
region: eu-west-1
6766
affinity:
@@ -102,7 +101,7 @@ kmsCoreClient:
102101
nameOverride: kms-client
103102
image:
104103
name: hub.zama.org/zama-protocol/zama-ai/kms/core-client
105-
tag: v0.12.1
104+
tag: v0.12.4
106105
envFrom:
107106
configmap:
108107
name: mpc-party

helmfile.yaml renamed to mainnet/helmfile.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ releases:
1919
- name: kms-core
2020
namespace: kms-decentralized
2121
chart: zama-kms/kms-core
22-
version: 1.4.4
22+
version: 1.4.10
2323
values:
2424
- helm-values/kms-core.yaml
2525
- name: gateway-node
@@ -31,6 +31,6 @@ releases:
3131
- name: kms-connector
3232
namespace: kms-decentralized
3333
chart: zama-fhevm/kms-connector
34-
version: 1.1.0
34+
version: 1.2.0
3535
values:
3636
- helm-values/kms-connector.yaml
Lines changed: 25 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
commonConfig:
22
databaseUrl: "postgresql://$(DATABASE_ENDPOINT)/kmsconnector"
3-
gatewayUrl: "http://gateway-node:8547"
3+
gatewayUrl: "$(CONDUIT_RPC_HTTP_URL)"
4+
# Cannot be used for tx-sender until full node supports eth_sendRawTransactionSync
5+
#gatewayUrl: "http://gateway-node:8547"
46
chainId: "10901"
57
gatewayContractAddresses:
68
decryption: "0x5D8BD78e2ea6bbE41f26dFe9fdaEAa349e077478"
@@ -22,16 +24,17 @@ commonConfig:
2224
secretKeyRef:
2325
name: connector-database
2426
key: password
25-
- name: KMS_CONNECTOR_DECRYPTION_POLLING_MS
26-
value: "500"
27-
- name: KMS_CONNECTOR_GAS_MULTIPLIER_PERCENT
28-
value: "300"
27+
- name: CONDUIT_RPC_HTTP_URL
28+
valueFrom:
29+
secretKeyRef:
30+
name: conduit
31+
key: conduit-rpc-http-url
2932

3033
kmsConnectorDbMigration:
3134
enabled: true
3235
image:
3336
name: hub.zama.org/zama-protocol/zama-ai/fhevm/kms-connector/db-migration
34-
tag: v0.9.3
37+
tag: v0.9.11
3538
env: []
3639
affinity:
3740
nodeAffinity:
@@ -53,8 +56,11 @@ kmsConnectorGwListener:
5356
nameOverride: kms-connector-gw-listener
5457
image:
5558
name: hub.zama.org/zama-protocol/zama-ai/fhevm/kms-connector/gw-listener
56-
tag: v0.9.3
57-
replicas: 1
59+
tag: v0.9.11
60+
replicas: 2
61+
config:
62+
# Use full node
63+
gatewayUrl: "http://gateway-node:8547"
5864
affinity:
5965
nodeAffinity:
6066
requiredDuringSchedulingIgnoredDuringExecution:
@@ -75,7 +81,7 @@ kmsConnectorKmsWorker:
7581
nameOverride: kms-connector-kms-worker
7682
image:
7783
name: hub.zama.org/zama-protocol/zama-ai/fhevm/kms-connector/kms-worker
78-
tag: v0.9.3
84+
tag: v0.9.11
7985
replicas: 1
8086
config:
8187
kmsCoreEndpoints: "http://kms-core:50100"
@@ -98,13 +104,19 @@ kmsConnectorTxSender:
98104
enabled: true
99105
nameOverride: kms-connector-tx-sender
100106
image:
101-
name: hub.zama.org/zama-protocol/zama-ai/fhevm/kms-connector/tx-sender
107+
name: hub.zama.ai/zama-protocol/zama-ai/fhevm/kms-connector/tx-sender
102108
tag: v0.9.3
103109
replicas: 1
104110
wallet:
105-
secret:
106-
name: connector-wallet-keys
107-
key: kms_txsender.private_key
111+
awsKms:
112+
enabled: true
113+
configmap:
114+
name: mpc-party
115+
key: KMS_CONNECTOR__TX_SENDER_AWS_KMS_KEY_ID
116+
# The secret can be removed after migrating to AWS KMS
117+
#secret:
118+
# name: connector-wallet-keys
119+
# key: kms_txsender_1.private_key
108120
affinity:
109121
nodeAffinity:
110122
requiredDuringSchedulingIgnoredDuringExecution:
@@ -119,6 +131,3 @@ kmsConnectorTxSender:
119131
effect: NoSchedule
120132
operator: Equal
121133
value: "true"
122-
123-
#tracing:
124-
# endpoint: "http://observability-alloy.observability.svc.cluster.local:4317"

0 commit comments

Comments
 (0)