diff --git a/helm/i40-aas/Chart.lock b/helm/i40-aas/Chart.lock index ba4734f6..2776314c 100644 --- a/helm/i40-aas/Chart.lock +++ b/helm/i40-aas/Chart.lock @@ -8,5 +8,8 @@ dependencies: - name: mongodb repository: https://charts.bitnami.com/bitnami version: 7.13.0 -digest: sha256:f2d95d0f034749fd1efc407b609882a4d43161de4c6aa1398d4867718a602f7b -generated: "2020-04-23T12:42:05.84050605+02:00" +- name: kubernetes-ingress + repository: https://haproxytech.github.io/helm-charts + version: 1.4.1 +digest: sha256:8181df5ce61074093da953f0639887ec06bfb8e76e5b461bcb9d323ef2a94e93 +generated: "2020-07-03T13:43:00.11969124+02:00" diff --git a/helm/i40-aas/Chart.yaml b/helm/i40-aas/Chart.yaml index a663c7fd..866ad991 100644 --- a/helm/i40-aas/Chart.yaml +++ b/helm/i40-aas/Chart.yaml @@ -14,7 +14,7 @@ type: application # This is the chart version. This version number should be incremented each time you make changes # to the chart and its templates, including the app version. -version: 0.2.0 +version: 0.3.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. @@ -32,3 +32,6 @@ dependencies: name: mongodb version: 7.13.0 repository: https://charts.bitnami.com/bitnami + - name: kubernetes-ingress + version: 1.4.1 + repository: https://haproxytech.github.io/helm-charts \ No newline at end of file diff --git a/helm/i40-aas/charts/kubernetes-ingress-1.4.1.tgz b/helm/i40-aas/charts/kubernetes-ingress-1.4.1.tgz new file mode 100644 index 00000000..085f3803 Binary files /dev/null and b/helm/i40-aas/charts/kubernetes-ingress-1.4.1.tgz differ diff --git a/helm/i40-aas/charts/mongodb-7.13.0.tgz b/helm/i40-aas/charts/mongodb-7.13.0.tgz index df9c824f..25e33fa7 100644 Binary files a/helm/i40-aas/charts/mongodb-7.13.0.tgz and b/helm/i40-aas/charts/mongodb-7.13.0.tgz differ diff --git a/helm/i40-aas/templates/adapter-registry.yaml b/helm/i40-aas/templates/adapter-registry.yaml index e62cc548..b4e1475e 100644 --- a/helm/i40-aas/templates/adapter-registry.yaml +++ b/helm/i40-aas/templates/adapter-registry.yaml @@ -6,6 +6,8 @@ metadata: labels: service: adapter-registry {{- include "i40-aas.labels" . | nindent 4 }} + annotations: + ingress.kubernetes.io/path-rewrite: "/([^/]*)(/?.*) \\2" spec: clusterIP: None ports: @@ -16,22 +18,6 @@ spec: service: adapter-registry {{- include "i40-aas.selectorLabels" . | nindent 4 }} --- -apiVersion: v1 -kind: Service -metadata: - name: {{ .Release.Name }}-adapter-registry-api - labels: - service: adapter-registry - {{- include "i40-aas.labels" . | nindent 4 }} -spec: - ports: - - targetPort: endpoint - port: {{ .Values.core.registries.adapters.port }} - protocol: TCP - selector: - service: adapter-registry - {{- include "i40-aas.selectorLabels" . | nindent 4 }} ---- apiVersion: apps/v1 kind: StatefulSet metadata: diff --git a/helm/i40-aas/templates/data-manager.yaml b/helm/i40-aas/templates/data-manager.yaml index d53fcc3e..a525fba8 100644 --- a/helm/i40-aas/templates/data-manager.yaml +++ b/helm/i40-aas/templates/data-manager.yaml @@ -6,6 +6,8 @@ metadata: labels: service: data-manager {{- include "i40-aas.labels" . | nindent 4 }} + annotations: + ingress.kubernetes.io/path-rewrite: "/([^/]*)(/?.*) \\2" spec: ports: - targetPort: endpoint diff --git a/helm/i40-aas/templates/endpoint-registry.yaml b/helm/i40-aas/templates/endpoint-registry.yaml index c4988b9e..7ae29d26 100644 --- a/helm/i40-aas/templates/endpoint-registry.yaml +++ b/helm/i40-aas/templates/endpoint-registry.yaml @@ -6,6 +6,8 @@ metadata: labels: service: endpoint-registry {{- include "i40-aas.labels" . | nindent 4 }} + annotations: + ingress.kubernetes.io/path-rewrite: "/([^/]*)(/?.*) \\2" spec: ports: - targetPort: endpoint diff --git a/helm/i40-aas/templates/https-endpoint-ingress.yaml b/helm/i40-aas/templates/https-endpoint-ingress.yaml index f225ff5d..fff0c487 100644 --- a/helm/i40-aas/templates/https-endpoint-ingress.yaml +++ b/helm/i40-aas/templates/https-endpoint-ingress.yaml @@ -6,6 +6,8 @@ metadata: labels: service: https-endpoint-ingress {{- include "i40-aas.labels" . | nindent 4 }} + annotations: + ingress.kubernetes.io/path-rewrite: "/([^/]*)(/?.*) \\2" spec: ports: - targetPort: endpoint diff --git a/helm/i40-aas/templates/ingress.yaml b/helm/i40-aas/templates/ingress.yaml index 14438b61..f2f450aa 100644 --- a/helm/i40-aas/templates/ingress.yaml +++ b/helm/i40-aas/templates/ingress.yaml @@ -6,11 +6,9 @@ metadata: service: ingress {{- include "i40-aas.labels" . | nindent 4 }} annotations: - kubernetes.io/ingress.class: nginx - nginx.ingress.kubernetes.io/rewrite-target: /$1 - nginx.ingress.kubernetes.io/ssl-redirect: "false" + ingress.kubernetes.io/ingress.class: "haproxy" {{- if .Values.security.tls.enabled }} - nginx.ingress.kubernetes.io/backend-protocol: "HTTPS" + ingress.kubernetes.io/server-ssl: "true" {{- end }} {{- if .Values.ingress.certManager }} cert-manager.io/cluster-issuer: {{ required "A valid .Values.ingress.certManager.clusterIssuer entry required!" .Values.ingress.certManager.clusterIssuer }} @@ -29,37 +27,27 @@ spec: {{- end }} http: paths: - - backend: - serviceName: {{ .Release.Name }}-https-endpoint-ingress - servicePort: {{ .Values.core.ingress.http.port }} - path: /https-endpoint/(interaction(.*)) - backend: serviceName: {{ .Release.Name }}-grpc-endpoint-ingress servicePort: {{ .Values.core.ingress.grpc.port }} - path: /grpc-endpoint/(.*) - - backend: - serviceName: {{ .Release.Name }}-adapter-registry-api + - path: /https-endpoint + backend: + serviceName: {{ .Release.Name }}-https-endpoint-ingress + servicePort: {{ .Values.core.ingress.http.port }} + - path: /adapter-registry + backend: + serviceName: {{ .Release.Name }}-adapter-registry servicePort: {{ .Values.core.registries.adapters.port }} - path: /adapter-registry/(.*) - - backend: + - path: /endpoint-registry + backend: serviceName: {{ .Release.Name }}-endpoint-registry - servicePort: {{ .Values.core.registries.endpoints.port }} - path: /endpoint-registry/(.*) - - backend: + servicePort: {{ .Values.core.registries.endpoints.port }} + - path: /data-manager + backend: + serviceName: {{ .Release.Name }}-data-manager + servicePort: {{ .Values.core.dataManager.port }} + - path: /storage-adapter-mongodb + backend: serviceName: {{ .Release.Name }}-storage-adapter-mongodb servicePort: {{ .Values.applicationAdapters.mongoDb.port }} - path: /storage-adapter-mongodb/(.*) -{{- /* - - backend: - serviceName: {{ .Release.Name }}-rabbitmq - servicePort: {{ .Values.rabbitmq.service.managerPort }} - path: /rabbitmq/(.*) -*/ -}} -{{- /* - - backend: - serviceName: {{ .Release.Name }}-onboardingskillmongodb - servicePort: {{ .Values.onboardingskillmongodb.service.port }} - path: /mongodb/(.*) -*/ -}} - - +--- diff --git a/helm/i40-aas/templates/storage-adapter-mongodb.yaml b/helm/i40-aas/templates/storage-adapter-mongodb.yaml index 2cef5888..a235e377 100644 --- a/helm/i40-aas/templates/storage-adapter-mongodb.yaml +++ b/helm/i40-aas/templates/storage-adapter-mongodb.yaml @@ -6,6 +6,8 @@ metadata: labels: service: storage-adapter-mongodb {{- include "i40-aas.labels" . | nindent 4 }} + annotations: + ingress.kubernetes.io/path-rewrite: "/([^/]*)(/?.*) \\2" spec: ports: - targetPort: endpoint diff --git a/helm/i40-aas/values.yaml b/helm/i40-aas/values.yaml index e3f9b57c..d8350881 100644 --- a/helm/i40-aas/values.yaml +++ b/helm/i40-aas/values.yaml @@ -198,4 +198,15 @@ onboardingskillmongodb: secondary: 0 arbiter: 0 readinessProbe: - enabled: false \ No newline at end of file + enabled: false + +kubernetes-ingress: + controller: + ingressClass: haproxy + service: + type: LoadBalancer + extraArgs: + - --namespace-whitelist=$(POD_NAMESPACE) + replicaCount: 1 + defaultBackend: + replicaCount: 1 \ No newline at end of file