mirror of
https://github.com/gravitl/netmaker.git
synced 2025-02-25 00:24:37 +08:00
adding kube yaml
This commit is contained in:
parent
230a4fb2f3
commit
2f8646cb3c
7 changed files with 300 additions and 0 deletions
59
kube/mongo-statefulset.yaml
Normal file
59
kube/mongo-statefulset.yaml
Normal file
|
@ -0,0 +1,59 @@
|
|||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: mongo
|
||||
labels:
|
||||
name: mongo
|
||||
spec:
|
||||
ports:
|
||||
- port: 27017
|
||||
targetPort: 27017
|
||||
clusterIP: None
|
||||
selector:
|
||||
role: mongo
|
||||
---
|
||||
apiVersion: apps/v1
|
||||
kind: StatefulSet
|
||||
metadata:
|
||||
name: mongo
|
||||
spec:
|
||||
serviceName: "mongo"
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
role: mongo
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: mongo
|
||||
role: mongo
|
||||
spec:
|
||||
containers:
|
||||
- name: mongo
|
||||
image: mongo
|
||||
env:
|
||||
- name: MONGO_INITDB_ROOT_USERNAME
|
||||
value: mongoadmin
|
||||
- name: MONGO_INITDB_ROOT_PASSWORD
|
||||
value: mongopass
|
||||
securityContext:
|
||||
privileged: true
|
||||
volumeMounts:
|
||||
- name: mongovol
|
||||
mountPath: /data/db
|
||||
volumes:
|
||||
- name: mongovol
|
||||
persistentVolumeClaim:
|
||||
claimName: mongo-pvc
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: mongo-pvc
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 7Gi
|
||||
storageClassName: longhorn
|
66
kube/netmaker-api.yaml
Normal file
66
kube/netmaker-api.yaml
Normal file
|
@ -0,0 +1,66 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: netmaker
|
||||
labels:
|
||||
app: netmaker
|
||||
spec:
|
||||
selector:
|
||||
matchLabels:
|
||||
app: netmaker
|
||||
replicas: 1
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: netmaker
|
||||
spec:
|
||||
containers:
|
||||
- name: netmaker
|
||||
image: gravitl/netmaker:v0.5
|
||||
ports:
|
||||
- containerPort: 8081
|
||||
env:
|
||||
- name: SERVER_HOST
|
||||
value: "api.test.netmaker.org"
|
||||
- name: API_PORT
|
||||
value: "8081"
|
||||
- name: AGENT_BACKEND
|
||||
value: "off"
|
||||
- name: CLIENT_MODE
|
||||
value: "off"
|
||||
- name: DNS_MODE
|
||||
value: "off"
|
||||
- name: MASTER_KEY
|
||||
value: "Unkn0wn!"
|
||||
- name: SERVER_GRPC_WIREGUARD
|
||||
value: "off"
|
||||
- name: MASTER_KEY
|
||||
value: "secretkey"
|
||||
- name: CORS_ALLOWED_ORIGIN
|
||||
value: "*"
|
||||
- name: DISABLE_REMOTE_IP_CHECK
|
||||
value: "on"
|
||||
- name: MONGO_ADMIN
|
||||
value: "mongoadmin"
|
||||
- name: MONGO_PASS
|
||||
value: "mongopass"
|
||||
- name: MONGO_HOST
|
||||
value: "mongo-0.mongo"
|
||||
- name: MONGO_OPTS
|
||||
value: "/?authSource=admin"
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
labels:
|
||||
app: netmaker
|
||||
name: netmaker
|
||||
spec:
|
||||
ports:
|
||||
- port: 8081
|
||||
protocol: TCP
|
||||
targetPort: 8081
|
||||
selector:
|
||||
app: netmaker
|
||||
sessionAffinity: None
|
||||
type: ClusterIP
|
68
kube/netmaker-grpc.yaml
Normal file
68
kube/netmaker-grpc.yaml
Normal file
|
@ -0,0 +1,68 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: netmaker-grpc
|
||||
labels:
|
||||
app: netmaker-grpc
|
||||
spec:
|
||||
selector:
|
||||
matchLabels:
|
||||
app: netmaker-grpc
|
||||
replicas: 1
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: netmaker-grpc
|
||||
spec:
|
||||
containers:
|
||||
- name: netmaker-grpc
|
||||
image: gravitl/netmaker:v0.5
|
||||
ports:
|
||||
- containerPort: 50051
|
||||
env:
|
||||
- name: SERVER_HOST
|
||||
value: "grpc.test.netmaker.org"
|
||||
- name: CLIENT_MODE
|
||||
value: "off"
|
||||
- name: DNS_MODE
|
||||
value: "off"
|
||||
- name: MASTER_KEY
|
||||
value: "Unkn0wn!"
|
||||
- name: SERVER_GRPC_WIREGUARD
|
||||
value: "off"
|
||||
- name: MASTER_KEY
|
||||
value: "secretkey"
|
||||
- name: CORS_ALLOWED_ORIGIN
|
||||
value: "*"
|
||||
- name: DISABLE_REMOTE_IP_CHECK
|
||||
value: "on"
|
||||
- name: MONGO_ADMIN
|
||||
value: "mongoadmin"
|
||||
- name: MONGO_PASS
|
||||
value: "mongopass"
|
||||
- name: MONGO_HOST
|
||||
value: "mongo-0.mongo"
|
||||
- name: MONGO_OPTS
|
||||
value: "/?authSource=admin"
|
||||
- name: SERVER_GRPC_HOST
|
||||
value: "0.0.0.0"
|
||||
- name: GRPC_PORT
|
||||
value: "50051"
|
||||
- name: REST_BACKEND
|
||||
value: "off"
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
labels:
|
||||
app: netmaker-grpc
|
||||
name: netmaker-grpc
|
||||
spec:
|
||||
ports:
|
||||
- port: 50051
|
||||
protocol: TCP
|
||||
targetPort: 50051
|
||||
selector:
|
||||
app: netmaker-grpc
|
||||
sessionAffinity: None
|
||||
type: ClusterIP
|
25
kube/netmaker-ingress-api.yaml
Normal file
25
kube/netmaker-ingress-api.yaml
Normal file
|
@ -0,0 +1,25 @@
|
|||
apiVersion: extensions/v1beta1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
annotations:
|
||||
kubernetes.io/ingress.class: "traefik"
|
||||
kubernetes.io/ingress.allow-http: "false"
|
||||
traefik.ingress.kubernetes.io/redirect-entry-point: https
|
||||
traefik.ingress.kubernetes.io/redirect-permanent: "true"
|
||||
traefik.ingress.kubernetes.io/rule-type: "PathPrefixStrip"
|
||||
cert-manager.io/cluster-issuer: wildcard-issuer
|
||||
name: nm-api-ingress
|
||||
namespace: netmaker
|
||||
spec:
|
||||
rules:
|
||||
- host: api.test.netmaker.org
|
||||
http:
|
||||
paths:
|
||||
- path: /
|
||||
backend:
|
||||
serviceName: netmaker
|
||||
servicePort: 8081
|
||||
tls:
|
||||
- hosts:
|
||||
- api.test.netmaker.org
|
||||
secretName: cert-nm-api
|
25
kube/netmaker-ingress-frontend.yaml
Normal file
25
kube/netmaker-ingress-frontend.yaml
Normal file
|
@ -0,0 +1,25 @@
|
|||
apiVersion: extensions/v1beta1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
annotations:
|
||||
kubernetes.io/ingress.class: "traefik"
|
||||
kubernetes.io/ingress.allow-http: "false"
|
||||
traefik.ingress.kubernetes.io/redirect-entry-point: https
|
||||
traefik.ingress.kubernetes.io/redirect-permanent: "true"
|
||||
traefik.ingress.kubernetes.io/rule-type: "PathPrefixStrip"
|
||||
cert-manager.io/cluster-issuer: wildcard-issuer
|
||||
name: nm-ui-ingress
|
||||
namespace: netmaker
|
||||
spec:
|
||||
rules:
|
||||
- host: nm.test.netmaker.org
|
||||
http:
|
||||
paths:
|
||||
- path: /
|
||||
backend:
|
||||
serviceName: netmaker-ui
|
||||
servicePort: 80
|
||||
tls:
|
||||
- hosts:
|
||||
- nm.test.netmaker.org
|
||||
secretName: cert-nm-ui
|
17
kube/netmaker-ingress-grpc.yaml
Normal file
17
kube/netmaker-ingress-grpc.yaml
Normal file
|
@ -0,0 +1,17 @@
|
|||
apiVersion: extensions/v1beta1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
annotations:
|
||||
kubernetes.io/ingress.class: "traefik"
|
||||
ingress.kubernetes.io/protocol: "h2c"
|
||||
name: nm-grpc-ingress
|
||||
namespace: netmaker
|
||||
spec:
|
||||
rules:
|
||||
- host: grpc.test.netmaker.org
|
||||
http:
|
||||
paths:
|
||||
- path: /
|
||||
backend:
|
||||
serviceName: netmaker-grpc
|
||||
servicePort: 50051
|
40
kube/netmaker-ui.yaml
Normal file
40
kube/netmaker-ui.yaml
Normal file
|
@ -0,0 +1,40 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: netmaker-ui
|
||||
labels:
|
||||
app: netmaker-ui
|
||||
spec:
|
||||
selector:
|
||||
matchLabels:
|
||||
app: netmaker-ui
|
||||
replicas: 1
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: netmaker-ui
|
||||
spec:
|
||||
containers:
|
||||
- name: netmaker-ui
|
||||
image: gravitl/netmaker-ui:v0.5
|
||||
ports:
|
||||
- containerPort: 80
|
||||
env:
|
||||
- name: BACKEND_URL
|
||||
value: "https://api.test.netmaker.org"
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
labels:
|
||||
app: netmaker-ui
|
||||
name: netmaker-ui
|
||||
spec:
|
||||
ports:
|
||||
- port: 80
|
||||
protocol: TCP
|
||||
targetPort: 80
|
||||
selector:
|
||||
app: netmaker-ui
|
||||
sessionAffinity: None
|
||||
type: ClusterIP
|
Loading…
Reference in a new issue