Files
fn-serverless/docs/operating/kubernetes/fn-service.yaml
Denis Makogon 5c68a88599 Fn-prefix everything (#545)
* Fn-prefix everything

Closes: #492

* Global replacement

* missed one fn_
2017-11-29 17:50:24 -08:00

194 lines
3.3 KiB
YAML

apiVersion: v1
kind: Namespace
metadata:
name: fn
---
apiVersion: v1
kind: ConfigMap
metadata:
name: fn-service-config
namespace: fn
data:
FN_MQ_URL: redis://fn-redis-master.fn
FN_DB_URL: mysql://root:fnsecretpassword@tcp(fn-mysql-master.fn:3306)/fn
FN_API_URL: http://fn-service.fn:8080
---
apiVersion: v1
kind: Service
metadata:
name: fn-service
namespace: fn
labels:
app: fn
role: fn-service
spec:
type: LoadBalancer
ports:
- name: fn-service
port: 8080
targetPort: 8080
selector:
app: fn
role: fn-service
---
apiVersion: extensions/v1beta1
kind: DaemonSet
metadata:
name: fn-service
namespace: fn
spec:
updateStrategy:
type: RollingUpdate
rollingUpdate:
maxUnavailable: 1
minReadySeconds: 30
template:
metadata:
labels:
app: fn
role: fn-service
spec:
containers:
- name: fn-service
image: fnproject/fnserver:latest
securityContext:
privileged: true
ports:
- containerPort: 8080
env:
- name: FN_MQ_URL
valueFrom:
configMapKeyRef:
name: fn-service-config
key: FN_MQ_URL
- name: FN_DB_URL
valueFrom:
configMapKeyRef:
name: fn-service-config
key: FN_DB_URL
---
apiVersion: v1
kind: Service
metadata:
name: fn-ui
namespace: fn
labels:
app: fn
role: fn-ui
spec:
type: LoadBalancer
ports:
- port: 80
targetPort: 80
selector:
app: fn
role: fn-ui
---
apiVersion: apps/v1beta1
kind: Deployment
metadata:
name: fn-ui
namespace: fn
labels:
app: fn
role: fn-ui
spec:
replicas: 1
template:
metadata:
labels:
app: fn
role: fn-ui
spec:
containers:
- name: fn-ui
image: fnproject/ui:latest
ports:
- containerPort: 80
env:
- name: PORT
value: "80"
- name: FN_API_URL
valueFrom:
configMapKeyRef:
name: fn-service-config
key: FN_API_URL
---
apiVersion: v1
kind: Service
metadata:
name: fn-mysql-master
namespace: fn
labels:
app: mysql
role: datastore
spec:
ports:
- port: 3306
targetPort: 3306
selector:
app: mysql
role: datastore
---
apiVersion: apps/v1beta1
kind: Deployment
metadata:
name: fn-mysql-master
namespace: fn
spec:
replicas: 1
template:
metadata:
labels:
app: mysql
role: datastore
spec:
containers:
- name: fn-mysql
image: mysql:5.7
args:
- "--max-connections=500"
- "--wait-timeout=300"
ports:
- containerPort: 3306
env:
- name: MYSQL_ROOT_PASSWORD
value: fnsecretpassword
- name: MYSQL_DATABASE
value: fn
---
apiVersion: v1
kind: Service
metadata:
name: fn-redis-master
namespace: fn
labels:
app: redis
role: mq
spec:
ports:
- port: 6379
targetPort: 6379
selector:
app: redis
role: mq
---
apiVersion: apps/v1beta1
kind: Deployment
metadata:
name: fn-redis-master
namespace: fn
spec:
replicas: 1
template:
metadata:
labels:
app: redis
role: mq
spec:
containers:
- name: fn-redis
image: redis:4.0
ports:
- containerPort: 6379