node.yaml 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161
  1. ---
  2. apiVersion: v1
  3. kind: Service
  4. metadata:
  5. name: guardian
  6. labels:
  7. app: guardian
  8. spec:
  9. ports:
  10. - port: 8999
  11. name: p2p
  12. protocol: UDP
  13. - port: 7070
  14. name: public-grpc
  15. protocol: TCP
  16. - port: 7071
  17. name: public-rest
  18. protocol: TCP
  19. clusterIP: None
  20. selector:
  21. app: guardian
  22. ---
  23. apiVersion: apps/v1
  24. kind: StatefulSet
  25. metadata:
  26. name: guardian
  27. spec:
  28. selector:
  29. matchLabels:
  30. app: guardian
  31. serviceName: guardian
  32. replicas: 5
  33. updateStrategy:
  34. # The StatefulSet rolling update strategy is rather dumb, and updates one pod after another.
  35. # If we want blue-green deployments, we should use a Deployment instead.
  36. type: RollingUpdate
  37. template:
  38. metadata:
  39. labels:
  40. app: guardian
  41. spec:
  42. terminationGracePeriodSeconds: 0
  43. volumes:
  44. # mount shared between containers for runtime state
  45. - name: node-rundir
  46. emptyDir: {}
  47. - name: node-keysdir
  48. secret:
  49. secretName: node-bigtable-key
  50. optional: true
  51. items:
  52. - key: bigtable-key.json
  53. path: bigtable-key.json
  54. containers:
  55. - name: guardiand
  56. image: ghcr.io/certusone/guardiand:v2.8.9
  57. volumeMounts:
  58. - mountPath: /run/node
  59. name: node-rundir
  60. - mountPath: /tmp/mounted-keys
  61. name: node-keysdir
  62. env:
  63. - name: BIGTABLE_EMULATOR_HOST
  64. value: bigtable-emulator:8086
  65. - name: PUBSUB_EMULATOR_HOST
  66. value: pubsub-emulator:8085
  67. command:
  68. - /guardiand
  69. - node
  70. - --ethRPC
  71. - ws://eth-devnet:8545
  72. - --bscRPC
  73. - ws://eth-devnet2:8545
  74. - --polygonRPC
  75. - ws://eth-devnet:8545
  76. - --avalancheRPC
  77. - ws://eth-devnet:8545
  78. - --auroraRPC
  79. - ws://eth-devnet:8545
  80. - --fantomRPC
  81. - ws://eth-devnet:8545
  82. - --oasisRPC
  83. - ws://eth-devnet:8545
  84. - --karuraRPC
  85. - ws://eth-devnet:8545
  86. - --acalaRPC
  87. - ws://eth-devnet:8545
  88. - --klaytnRPC
  89. - ws://eth-devnet:8545
  90. - --celoRPC
  91. - ws://eth-devnet:8545
  92. - --moonbeamRPC
  93. - ws://eth-devnet:8545
  94. - --neonRPC
  95. - ws://eth-devnet:8545
  96. - --terraWS
  97. - ws://terra-terrad:26657/websocket
  98. - --terraLCD
  99. - http://terra-terrad:1317
  100. - --terraContract
  101. - terra14hj2tavq8fpesdwxxcu44rty3hh90vhujrvcmstl4zr3txmfvw9ssrc8au
  102. # - --terra2WS
  103. # - ws://terra2-terrad:26657/websocket
  104. # - --terra2LCD
  105. # - http://terra2-terrad:1317
  106. # - --terra2Contract
  107. # - terra14hj2tavq8fpesdwxxcu44rty3hh90vhujrvcmstl4zr3txmfvw9ssrc8au
  108. # - --algorandAppID
  109. # - "4"
  110. # - --algorandIndexerRPC
  111. # - http://algorand:8980
  112. # - --algorandIndexerToken
  113. # - "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
  114. # - --algorandAlgodRPC
  115. # - http://algorand:4001
  116. # - --algorandAlgodToken
  117. # - "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
  118. - --solanaContract
  119. - Bridge1p5gheXUvJ6jGWGeCsgPKgnE3YgdGKRVCMY9o
  120. - --solanaWS
  121. - ws://solana-devnet:8900
  122. - --solanaRPC
  123. - http://solana-devnet:8899
  124. - --unsafeDevMode
  125. - --guardianKey
  126. - /tmp/bridge.key
  127. - --publicRPC
  128. - "[::]:7070"
  129. - --publicWeb
  130. - "[::]:7071"
  131. - --adminSocket
  132. - /tmp/admin.sock
  133. - --dataDir
  134. - /tmp/data
  135. # - --chainGovernorEnabled=true
  136. # - --logLevel=debug
  137. securityContext:
  138. capabilities:
  139. add:
  140. # required for syscall.Mlockall
  141. - IPC_LOCK
  142. readinessProbe:
  143. httpGet:
  144. port: 6060
  145. path: /readyz
  146. ports:
  147. - containerPort: 8999
  148. name: p2p
  149. protocol: UDP
  150. - containerPort: 6060
  151. name: pprof
  152. protocol: TCP
  153. - containerPort: 7070
  154. name: public-grpc
  155. protocol: TCP
  156. - containerPort: 7071
  157. name: public-grpcweb
  158. protocol: TCP
  159. - containerPort: 2345
  160. name: debugger
  161. protocol: TCP