prysm-pulse/k8s/geth/faucet.deploy.yaml
Preston Van Loon 7078382b82
k8s goerli config (#1517)
* Added goerli node config

* add validator configuration

* working better with istio

* cleanup

* Update bootnodes and genesis

* prepare goerli

* cleaning up geth stuff

* Working on istio

* Update somethings for istio

* Add back bootnode for internal discovery, add some labels for istio

* support ws

* ssl via lets encrypt

* Remove ingress

* Expose grafana

* allow insecure

* Add consistent loadbalancing

* use pod antiaffinity so that the public nodes are highly available

* Change app name to goerli

* Add unstable graphql

* remove redis

* lint

* gazelle and fix weights

* better affinity
2019-02-08 15:30:38 -05:00

104 lines
2.9 KiB
YAML

kind: Deployment
apiVersion: apps/v1beta1
metadata:
name: faucet
namespace: pow
labels:
component: faucet
app: goerli
version: v1
spec:
replicas: 1
selector:
matchLabels:
universe: geth
component: faucet
app: goerli
version: v1
template:
metadata:
labels:
universe: geth
component: faucet
app: goerli
version: v1
spec:
priorityClassName: batch-priority
containers:
- name: faucet
image: ethereum/client-go:alltools-stable
ports:
- containerPort: 8080
name: api
- containerPort: 30303
name: discovery-tcp
protocol: TCP
- containerPort: 30303
name: discovery-udp
protocol: UDP
# Use /bin/sh -c to execute geth so that we have access to HOSTNAME in
# the command arguments.
# https://github.com/kubernetes/kubernetes/issues/57726
command:
- "/bin/sh"
- "-c"
- >
touch /tmp/pwd; # empty password file
faucet
-account.json=/data/accounts/account.json
-account.pass=/tmp/pwd
-apiport=8080
-bootnodes=enode://$(BOOTNODE_PUBKEY)@$(GETH_BOOTNODE_V5_SERVICE_HOST):$(GETH_BOOTNODE_V5_SERVICE_PORT_BOOTNODE_UDP)
-ethport=30303
-ethstats=$HOSTNAME:$(ETHSTATS_WS_SECRET)@$(GETH_ETHSTATS_SERVICE_HOST):$(GETH_ETHSTATS_SERVICE_PORT)
-faucet.amount=350
-faucet.minutes=1440
-faucet.name=validator-faucet
-faucet.tiers=3
-genesis=/data/genesis.json
-loglevel=3
-network=1337
-noauth
env:
- name: ETHSTATS_WS_SECRET
valueFrom:
secretKeyRef:
name: ethstats-secrets
key: ws
- name: BOOTNODE_PUBKEY
valueFrom:
secretKeyRef:
name: geth-bootnode-secret
key: public_key
volumeMounts:
- name: genesis
mountPath: "/data"
readOnly: true
- name: accounts
mountPath: "/data/accounts"
readOnly: true
- name: faucet-data
mountPath: "/root/.faucet/keys"
resources:
requests:
memory: "500Mi"
cpu: "50m"
limits:
memory: "750Mi"
cpu: "100m"
volumes:
- name: genesis
configMap:
name: genesis
items:
- key: json
path: genesis.json
- name: accounts
secret:
secretName: geth-faucet-accounts-secret
items:
- key: json
path: account.json
- name: faucet-data
emptyDir: {}