Skip to content
Snippets Groups Projects
Commit 56559539 authored by Sergey Yakubov's avatar Sergey Yakubov
Browse files

add influxdb to chart, refactor

parent 042482c5
Branches
Tags
No related merge requests found
Showing
with 164 additions and 50 deletions
......@@ -141,3 +141,8 @@ common/go/src/asapo_common/version/version_lib.go
.terraform
terraform.tfstate*
#helm chart
deploy/asapo_helm_chart/asapo/Chart.lock
deploy/asapo_helm_chart/asapo/charts/
\ No newline at end of file
......@@ -19,3 +19,11 @@ version: 0.1.0
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application.
appVersion: 1.16.0
dependencies:
- name: influxdb
version: "~0.4.3"
repository: "https://charts.bitnami.com/bitnami"
{
"Port": 5007,
"Port": {{ .Values.ownServices.authorizer.port }},
"LogLevel":"debug",
"AlwaysAllowedBeamtimes":[{"beamtimeId":"asapo_test","beamline":"test","core-path":"{{ .Values.common.offlineDir }}/test_facility/gpfs/test/2019/data/asapo_test"},
{"beamtimeId":"asapo_test1","beamline":"test1","core-path":"{{ .Values.common.offlineDir }}/test_facility/gpfs/test1/2019/data/asapo_test1"},
......@@ -9,4 +9,3 @@
"SecretFile":"/etc/authorizer/auth_secret.key",
"TokenDurationMin":600
}
{
"DatabaseServer":"auto",
"DiscoveryServer": "discovery:{{ .Values.ownServices.discovery.port }}",
"PerformanceDbServer":"{{ .Chart.Name }}-influxdb:{{ .Values.influxdb.influxdb.service.port }}",
"PerformanceDbName": "asapo_brokers",
"Port": {{ .Values.ownServices.broker.port }},
"LogLevel":"debug",
"SecretFile":"/etc/broker/auth_secret.key"
}
{{/* Generate configmaps */}}
{{- define "asapo.configmap-fromfile" }}
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ .service.serviceName }}-config
data:
{{ .service.serviceName }}.json: {{ tpl (.Files.Get (printf "configs/%s.json" .service.serviceName)) . | quote }}
{{- end }}
{{/* Generate ingres */}}
{{- define "asapo.ingress" }}
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: ingress-{{ .service.serviceName }}
annotations:
kubernetes.io/ingress.class: "nginx"
nginx.ingress.kubernetes.io/rewrite-target: /$2
nginx.ingress.kubernetes.io/whitelist-source-range: 131.169.0.0/16
spec:
rules:
- host: "*.desy.de"
http:
paths:
- path: /{{ .Release.Namespace }}/{{ .service.serviceName }}(/|$)(.*)
backend:
serviceName: {{ .service.serviceName }}
servicePort: {{ .service.port }}
{{- end }}
{{/* Generate service */}}
{{- define "asapo.service" }}
apiVersion: v1
kind: Service
metadata:
name: {{ .service.serviceName }}
spec:
type: {{ if .service._exposeServiceExtrernally }}NodePort{{ else }}ClusterIP{{ end }}
ports:
- protocol: TCP
port: {{ .service.port }}
selector:
app: {{ .service.serviceName }}
{{- end }}
apiVersion: v1
kind: ConfigMap
metadata:
name: authorizer-config
data:
authorizer.json: {{ tpl (.Files.Get "configs/authorizer.json") . | quote }}
apiVersion: apps/v1
kind: Deployment
metadata:
name: authorizer-deployment
name: asapo-authorizer
labels:
app: authorizer
app: asapo-authorizer
spec:
replicas: {{ .Values.authorizer.replicaCount }}
replicas: {{ .Values.ownServices.authorizer.replicaCount }}
selector:
matchLabels:
app: authorizer
app: asapo-authorizer
template:
metadata:
labels:
app: authorizer
app: asapo-authorizer
annotations:
checksum/config: {{ include (print $.Template.BasePath "/authorizer-config.yaml") . | sha256sum }}
checksum/config: {{ .Files.Get "configs/asapo-authorizer.json" | sha256sum }}
checksum/secret: {{ include (print $.Template.BasePath "/auth-secret.yaml") . | sha256sum }}
spec:
volumes:
......@@ -22,7 +22,7 @@ spec:
projected:
sources:
- configMap:
name: authorizer-config
name: asapo-authorizer-config
- secret:
name: auth-secret
- name: shared-volume-offline
......@@ -35,9 +35,9 @@ spec:
- name: authorizer
image: "yakser/asapo-authorizer-dev:{{ .Values.common.asapoVersionTag }}"
command: ["/asapo-authorizer"]
args: ["-config", "/etc/authorizer/authorizer.json"]
args: ["-config", "/etc/authorizer/asapo-authorizer.json"]
ports:
- containerPort: 5007
- containerPort: {{ .Values.ownServices.authorizer.port }}
volumeMounts:
- mountPath: "/etc/authorizer"
name: all-in-one
......
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: ingress-authorizer
annotations:
kubernetes.io/ingress.class: "nginx"
nginx.ingress.kubernetes.io/rewrite-target: /$2
nginx.ingress.kubernetes.io/whitelist-source-range: 131.169.0.0/16
spec:
rules:
- host: "*.desy.de"
http:
paths:
- path: /{{ .Release.Namespace }}/authorizer(/|$)(.*)
backend:
serviceName: authorizer
servicePort: 5007
{{ $data := dict "Release" .Release "Values" .Values "service" .Values.ownServices.authorizer }}
{{- template "asapo.ingress" $data }}
apiVersion: v1
kind: Service
metadata:
name: authorizer
spec:
type: ClusterIP
ports:
- protocol: TCP
port: 5007
selector:
app: authorizer
apiVersion: apps/v1
kind: Deployment
metadata:
name: asapo-broker
labels:
app: asapo-broker
spec:
replicas: {{ .Values.ownServices.broker.replicaCount }}
selector:
matchLabels:
app: broker
template:
metadata:
labels:
app: broker
annotations:
checksum/config: {{ .Files.Get "configs/asapo-broker.json" | sha256sum }}
checksum/secret: {{ include (print $.Template.BasePath "/auth-secret.yaml") . | sha256sum }}
spec:
volumes:
- name: all-in-one
projected:
sources:
- configMap:
name: asapo-broker-config
- secret:
name: auth-secret
initContainers:
- name: wait-databases
image: busybox:1.28
command: ['sh', '-c', "until wget asapo-influxdb:8086/ping; do echo waiting for influxdb; sleep 2; done"]
containers:
- name: broker
image: "yakser/asapo-broker-dev:{{ .Values.common.asapoVersionTag }}"
command: ["/asapo-broker"]
args: ["-config", "/etc/broker/asapo-broker.json"]
ports:
- containerPort: {{ .Values.ownServices.broker.port }}
volumeMounts:
- mountPath: "/etc/broker"
name: all-in-one
{{ $servicesToConfig := list .Values.ownServices.authorizer.serviceName .Values.ownServices.broker.serviceName }}
{{- range .Values.ownServices }}
{{ $data := dict "Chart" $.Chart "Template" $.Template "Values" $.Values "Files" $.Files "service" . }}
{{- if has .serviceName $servicesToConfig }}
{{- template "asapo.configmap-fromfile" $data }}
---
{{- end }}
{{- end }}
{{ $servicesToConfig := list .Values.ownServices.authorizer.serviceName .Values.ownServices.broker.serviceName }}
{{- range .Values.ownServices }}
{{ $data := dict "Values" $.Values "service" . }}
{{- if has .serviceName $servicesToConfig }}
{{- template "asapo.service" $data }}
---
{{- end }}
{{- end }}
......@@ -8,7 +8,7 @@ spec:
- ReadWriteMany
resources:
requests:
storage: 5Gi
storage: 3Gi
---
apiVersion: v1
kind: PersistentVolumeClaim
......@@ -20,4 +20,4 @@ spec:
- ReadWriteMany
resources:
requests:
storage: 5Gi
\ No newline at end of file
storage: 1Gi
\ No newline at end of file
authorizer:
replicaCount: 1
ownServices:
authorizer:
serviceName: asapo-authorizer
replicaCount: 1
port: 5006
_exposeServiceExtrernally: false
broker:
serviceName: asapo-broker
replicaCount: 1
port: 5007
_exposeServiceExtrernally: true
discovery:
serviceName: asapo-discovery
replicaCount: 1
port: 5008
_exposeServiceExtrernally: false
common:
authSecret: "12ljzgneasfd"
offlineDir: "/test_offline"
onlineDir: "/test_online"
asapoVersionTag: "develop.20.03-10-g06dc0be"
\ No newline at end of file
asapoVersionTag: "develop.20.03-10-g06dc0be"
influxdb:
authEnabled: false
influxdb:
updateStrategy: Recreate
service:
port: 8086
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment