blob: 80091d34f78ef82608e4a13b10bbcd2802b93c8f [file] [log] [blame]
##
## Heron API server deployment
##
apiVersion: apps/v1beta1
kind: Deployment
metadata:
name: heron-apiserver
spec:
replicas: 1
template:
metadata:
labels:
app: heron-apiserver
spec:
volumes:
- name: google-cloud-key
secret:
secretName: heron-gcs-key
containers:
- name: heron-apiserver
image: heron/heron:latest
command: ["sh", "-c"]
args:
- >-
heron-apiserver
--base-template kubernetes
--cluster kubernetes
-D heron.statemgr.connection.string=zookeeper:2181
-D heron.kubernetes.scheduler.uri=http://localhost:8001
-D heron.executor.docker.image=heron/heron:latest
-D heron.class.uploader=com.twitter.heron.uploader.gcs.GcsUploader
-D heron.uploader.gcs.bucket=$GCS_BUCKET
volumeMounts:
- name: google-cloud-key
mountPath: /heron/secret
env:
- name: GOOGLE_APPLICATION_CREDENTIALS
value: /heron/secret/key.json
- name: GCS_BUCKET
valueFrom:
configMapKeyRef:
name: heron-apiserver-config
key: gcs.bucket
- name: kubectl-proxy
image: heron/kubectl:latest
command: ["sh", "-c"]
args:
- >
kubectl proxy -p 8001
---
##
## Service to expose the heron api server
##
apiVersion: v1
kind: Service
metadata:
name: heron-apiserver
spec:
selector:
app: heron-apiserver
ports:
- protocol: TCP
port: 9000
targetPort: 9000