luxd serves /v1/*; /ext/* 404s. Third-party chains keep their own paths. Co-authored-by: Hanzo Dev <[email protected]>
166 lines
4.2 KiB
YAML
166 lines
4.2 KiB
YAML
# Zoo mainnet — 3 RPC tracking nodes joining Lux mainnet primary network (networkId 1)
|
|
# and tracking Zoo EVM chain (blockchainID 4HBM17czc7zFQMPrd9CVZ6YbABm1jecf99iwvFw8Gbo6gFaU3,
|
|
# chainID 200200, vmID mgj786NP7uDwBCcq6YwThhaN8FLyybkCa4zBWTQbNgmK6k9A6).
|
|
#
|
|
# Bootstrap IPs are public LBs of lux-mainnet luxd-0..4 in do-sfo3-lux-k8s.
|
|
# These are RPC/tracking nodes — they observe Zoo chain and serve RPC. They
|
|
# are not Zoo chain validators (Zoo chain is validated by the Lux mainnet
|
|
# validator set, as an L2/tracked-chain).
|
|
---
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: zoo-chain-config
|
|
namespace: zoo-mainnet
|
|
labels:
|
|
app: zoo-chain
|
|
data:
|
|
config.json: |
|
|
{
|
|
"api-admin-enabled": true,
|
|
"api-health-enabled": true,
|
|
"api-info-enabled": true,
|
|
"api-keystore-enabled": false,
|
|
"http-host": "0.0.0.0",
|
|
"http-port": 9630,
|
|
"staking-port": 9631,
|
|
"network-id": 1,
|
|
"log-display-level": "info",
|
|
"log-level": "info",
|
|
"sybil-protection-enabled": false,
|
|
"staking-ephemeral-signer-enabled": true,
|
|
"staking-ephemeral-cert-enabled": true,
|
|
"http-allowed-hosts": "*"
|
|
}
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: zoo-chain-headless
|
|
namespace: zoo-mainnet
|
|
labels:
|
|
app: zoo-chain
|
|
spec:
|
|
clusterIP: None
|
|
selector:
|
|
app: zoo-chain
|
|
ports:
|
|
- name: http
|
|
port: 9630
|
|
targetPort: 9630
|
|
- name: staking
|
|
port: 9631
|
|
targetPort: 9631
|
|
---
|
|
# Override existing zoo-rpc Service selector to point at zoo-chain pods.
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: zoo-rpc
|
|
namespace: zoo-mainnet
|
|
labels:
|
|
app: zoo-chain
|
|
spec:
|
|
type: ClusterIP
|
|
selector:
|
|
app: zoo-chain
|
|
ports:
|
|
- name: http
|
|
port: 9650
|
|
targetPort: 9630
|
|
- name: rpc
|
|
port: 9630
|
|
targetPort: 9630
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: StatefulSet
|
|
metadata:
|
|
name: zoo-chain
|
|
namespace: zoo-mainnet
|
|
labels:
|
|
app: zoo-chain
|
|
spec:
|
|
serviceName: zoo-chain-headless
|
|
replicas: 3
|
|
podManagementPolicy: Parallel
|
|
selector:
|
|
matchLabels:
|
|
app: zoo-chain
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: zoo-chain
|
|
spec:
|
|
imagePullSecrets:
|
|
- name: ghcr-secret
|
|
- name: hanzo
|
|
terminationGracePeriodSeconds: 30
|
|
securityContext:
|
|
fsGroup: 1000
|
|
runAsGroup: 1000
|
|
runAsUser: 1000
|
|
containers:
|
|
- name: luxd
|
|
image: ghcr.io/luxfi/node:v1.30.3
|
|
imagePullPolicy: IfNotPresent
|
|
command:
|
|
- /luxd/build/luxd
|
|
args:
|
|
- --config-file=/etc/luxd/config.json
|
|
- --bootstrap-ips=129.212.164.46:9631,137.184.246.133:9631,143.244.210.43:9631,143.244.210.71:9631,24.144.70.85:9631
|
|
- --bootstrap-ids=NodeID-Mf3JfSY91oDwfBqf7rCLmhg4NDtDghw1f,NodeID-2TwSZ2oyeBK2mv7JiseEQ8m74rotDj4QR,NodeID-Ld9VFBQ9zGbd79z2vzaAqkQ3jHuqbtRpo,NodeID-8mY2fhUehN27v3LCU84BnnKEoeRfd2weC,NodeID-DwsrqSkPoE3pXWrUt9nkJ5yBycwRQ246X
|
|
- --track-subnets=2JwuEvPyjdnHSsaYtTdjNNLkYhqfQqzAEUvPEhCJnor9J5oMuq
|
|
- --data-dir=/data
|
|
env:
|
|
- name: LUX_NETWORK_ID
|
|
value: "1"
|
|
- name: POD_NAME
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: metadata.name
|
|
ports:
|
|
- name: http
|
|
containerPort: 9630
|
|
- name: staking
|
|
containerPort: 9631
|
|
livenessProbe:
|
|
httpGet:
|
|
path: /v1/health/liveness
|
|
port: 9630
|
|
initialDelaySeconds: 300
|
|
periodSeconds: 30
|
|
timeoutSeconds: 10
|
|
failureThreshold: 10
|
|
startupProbe:
|
|
tcpSocket:
|
|
port: 9630
|
|
initialDelaySeconds: 10
|
|
periodSeconds: 10
|
|
failureThreshold: 60
|
|
resources:
|
|
requests:
|
|
cpu: "1"
|
|
memory: 4Gi
|
|
limits:
|
|
cpu: "4"
|
|
memory: 16Gi
|
|
volumeMounts:
|
|
- name: data
|
|
mountPath: /data
|
|
- name: config
|
|
mountPath: /etc/luxd
|
|
readOnly: true
|
|
volumes:
|
|
- name: config
|
|
configMap:
|
|
name: zoo-chain-config
|
|
volumeClaimTemplates:
|
|
- metadata:
|
|
name: data
|
|
spec:
|
|
accessModes: ["ReadWriteOnce"]
|
|
storageClassName: do-block-storage
|
|
resources:
|
|
requests:
|
|
storage: 200Gi
|