Merge pull request #13411 from Altair-Bueno/master
new(helm): websocket ingress (fixes #13309)
This commit is contained in:
commit
91fd01ed21
|
@ -105,18 +105,18 @@ spec:
|
||||||
{{- end }}
|
{{- end }}
|
||||||
ports:
|
ports:
|
||||||
- name: mqtt
|
- name: mqtt
|
||||||
containerPort: {{ .Values.emqxConfig.EMQX_LISTENERS__TCP__DEFAULT__BIND | default 1883 }}
|
containerPort: {{ splitList ":" ( .Values.emqxConfig.EMQX_LISTENERS__TCP__DEFAULT__BIND | default "1883" ) | last }}
|
||||||
- name: mqttssl
|
- name: mqttssl
|
||||||
containerPort: {{ .Values.emqxConfig.EMQX_LISTENERS__SSL__DEFAULT__BIND | default 8883 }}
|
containerPort: {{ splitList ":" ( .Values.emqxConfig.EMQX_LISTENERS__SSL__DEFAULT__BIND | default "8883" ) | last }}
|
||||||
- name: ws
|
- name: ws
|
||||||
containerPort: {{ .Values.emqxConfig.EMQX_LISTENERS__WS__DEFAULT__BIND | default 8083 }}
|
containerPort: {{ splitList ":" ( .Values.emqxConfig.EMQX_LISTENERS__WS__DEFAULT__BIND | default "8083" ) | last }}
|
||||||
- name: wss
|
- name: wss
|
||||||
containerPort: {{ .Values.emqxConfig.EMQX_LISTENERS__WSS__DEFAULT__BIND | default 8084 }}
|
containerPort: {{ splitList ":" ( .Values.emqxConfig.EMQX_LISTENERS__WSS__DEFAULT__BIND | default "8084" ) | last }}
|
||||||
- name: dashboard
|
- name: dashboard
|
||||||
containerPort: {{ .Values.emqxConfig.EMQX_DASHBOARD__LISTENERS__HTTP__BIND | default 18083 }}
|
containerPort: {{ splitList ":" ( .Values.emqxConfig.EMQX_DASHBOARD__LISTENERS__HTTP__BIND | default "18083" ) | last }}
|
||||||
{{- if not (empty .Values.emqxConfig.EMQX_DASHBOARD__LISTENERS__HTTPS__BIND) }}
|
{{- if not (empty .Values.emqxConfig.EMQX_DASHBOARD__LISTENERS__HTTPS__BIND) }}
|
||||||
- name: dashboardtls
|
- name: dashboardtls
|
||||||
containerPort: {{ .Values.emqxConfig.EMQX_DASHBOARD__LISTENERS__HTTPS__BIND }}
|
containerPort: {{ splitList ":" .Values.emqxConfig.EMQX_DASHBOARD__LISTENERS__HTTPS__BIND | last }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
- name: ekka
|
- name: ekka
|
||||||
containerPort: 4370
|
containerPort: 4370
|
||||||
|
@ -151,14 +151,14 @@ spec:
|
||||||
readinessProbe:
|
readinessProbe:
|
||||||
httpGet:
|
httpGet:
|
||||||
path: /status
|
path: /status
|
||||||
port: {{ .Values.emqxConfig.EMQX_DASHBOARD__LISTENERS__HTTP__BIND | default 18083 }}
|
port: {{ splitList ":" ( .Values.emqxConfig.EMQX_DASHBOARD__LISTENERS__HTTP__BIND | default "18083" ) | last }}
|
||||||
initialDelaySeconds: 10
|
initialDelaySeconds: 10
|
||||||
periodSeconds: 5
|
periodSeconds: 5
|
||||||
failureThreshold: 30
|
failureThreshold: 30
|
||||||
livenessProbe:
|
livenessProbe:
|
||||||
httpGet:
|
httpGet:
|
||||||
path: /status
|
path: /status
|
||||||
port: {{ .Values.emqxConfig.EMQX_DASHBOARD__LISTENERS__HTTP__BIND | default 18083 }}
|
port: {{ splitList ":" ( .Values.emqxConfig.EMQX_DASHBOARD__LISTENERS__HTTP__BIND | default "18083" ) | last }}
|
||||||
initialDelaySeconds: 60
|
initialDelaySeconds: 60
|
||||||
periodSeconds: 30
|
periodSeconds: 30
|
||||||
failureThreshold: 10
|
failureThreshold: 10
|
||||||
|
|
|
@ -98,3 +98,53 @@ spec:
|
||||||
{{- end }}
|
{{- end }}
|
||||||
---
|
---
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
{{- if .Values.ingress.ws.enabled -}}
|
||||||
|
{{- if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion -}}
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
{{- else if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}}
|
||||||
|
apiVersion: networking.k8s.io/v1beta1
|
||||||
|
{{- else -}}
|
||||||
|
apiVersion: extensions/v1beta1
|
||||||
|
{{- end }}
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: {{ printf "%s-%s" (include "emqx.fullname" .) "ws" }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ include "emqx.name" . }}
|
||||||
|
helm.sh/chart: {{ include "emqx.chart" . }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
{{- if .Values.ingress.ws.annotations }}
|
||||||
|
annotations:
|
||||||
|
{{- toYaml .Values.ingress.ws.annotations | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
spec:
|
||||||
|
{{- if and .Values.ingress.ws.ingressClassName (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion) }}
|
||||||
|
ingressClassName: {{ .Values.ingress.ws.ingressClassName }}
|
||||||
|
{{- end }}
|
||||||
|
rules:
|
||||||
|
{{- range $host := .Values.ingress.ws.hosts }}
|
||||||
|
- host: {{ $host }}
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: {{ $.Values.ingress.ws.path | default "/mqtt" }}
|
||||||
|
{{- if (semverCompare ">=1.18-0" $.Capabilities.KubeVersion.GitVersion) }}
|
||||||
|
pathType: {{ $.Values.ingress.ws.pathType | default "ImplementationSpecific" }}
|
||||||
|
{{- end }}
|
||||||
|
backend:
|
||||||
|
{{- if semverCompare ">=1.19-0" $.Capabilities.KubeVersion.GitVersion }}
|
||||||
|
service:
|
||||||
|
name: {{ include "emqx.fullname" $ }}
|
||||||
|
port:
|
||||||
|
number: {{ $.Values.service.ws }}
|
||||||
|
{{- else }}
|
||||||
|
serviceName: {{ include "emqx.fullname" $ }}
|
||||||
|
servicePort: {{ $.Values.service.ws }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end -}}
|
||||||
|
{{- if .Values.ingress.ws.tls }}
|
||||||
|
tls:
|
||||||
|
{{- toYaml .Values.ingress.ws.tls | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
---
|
||||||
|
{{- end }}
|
||||||
|
|
|
@ -230,6 +230,19 @@ ingress:
|
||||||
hosts:
|
hosts:
|
||||||
- mqtt.emqx.local
|
- mqtt.emqx.local
|
||||||
tls: []
|
tls: []
|
||||||
|
ws:
|
||||||
|
enabled: false
|
||||||
|
# ingressClassName: haproxy
|
||||||
|
annotations: {}
|
||||||
|
# kubernetes.io/ingress.class: haproxy
|
||||||
|
# kubernetes.io/tls-acme: "true"
|
||||||
|
# haproxy-ingress.github.io/tcp-service-port: "8883"
|
||||||
|
# haproxy-ingress.github.io/proxy-protocol: "v2"
|
||||||
|
path: /mqtt
|
||||||
|
pathType: ImplementationSpecific
|
||||||
|
hosts:
|
||||||
|
- mqtt.emqx.local
|
||||||
|
tls: []
|
||||||
|
|
||||||
podSecurityContext:
|
podSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|
|
@ -98,3 +98,53 @@ spec:
|
||||||
{{- end }}
|
{{- end }}
|
||||||
---
|
---
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
{{- if .Values.ingress.ws.enabled -}}
|
||||||
|
{{- if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion -}}
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
{{- else if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}}
|
||||||
|
apiVersion: networking.k8s.io/v1beta1
|
||||||
|
{{- else -}}
|
||||||
|
apiVersion: extensions/v1beta1
|
||||||
|
{{- end }}
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: {{ printf "%s-%s" (include "emqx.fullname" .) "ws" }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ include "emqx.name" . }}
|
||||||
|
helm.sh/chart: {{ include "emqx.chart" . }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
{{- if .Values.ingress.ws.annotations }}
|
||||||
|
annotations:
|
||||||
|
{{- toYaml .Values.ingress.ws.annotations | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
spec:
|
||||||
|
{{- if and .Values.ingress.ws.ingressClassName (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion) }}
|
||||||
|
ingressClassName: {{ .Values.ingress.ws.ingressClassName }}
|
||||||
|
{{- end }}
|
||||||
|
rules:
|
||||||
|
{{- range $host := .Values.ingress.ws.hosts }}
|
||||||
|
- host: {{ $host }}
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: {{ $.Values.ingress.ws.path | default "/mqtt" }}
|
||||||
|
{{- if (semverCompare ">=1.18-0" $.Capabilities.KubeVersion.GitVersion) }}
|
||||||
|
pathType: {{ $.Values.ingress.ws.pathType | default "ImplementationSpecific" }}
|
||||||
|
{{- end }}
|
||||||
|
backend:
|
||||||
|
{{- if semverCompare ">=1.19-0" $.Capabilities.KubeVersion.GitVersion }}
|
||||||
|
service:
|
||||||
|
name: {{ include "emqx.fullname" $ }}
|
||||||
|
port:
|
||||||
|
number: {{ $.Values.service.ws }}
|
||||||
|
{{- else }}
|
||||||
|
serviceName: {{ include "emqx.fullname" $ }}
|
||||||
|
servicePort: {{ $.Values.service.ws }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end -}}
|
||||||
|
{{- if .Values.ingress.ws.tls }}
|
||||||
|
tls:
|
||||||
|
{{- toYaml .Values.ingress.ws.tls | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
---
|
||||||
|
{{- end }}
|
||||||
|
|
|
@ -230,6 +230,19 @@ ingress:
|
||||||
hosts:
|
hosts:
|
||||||
- mqtt.emqx.local
|
- mqtt.emqx.local
|
||||||
tls: []
|
tls: []
|
||||||
|
ws:
|
||||||
|
enabled: false
|
||||||
|
# ingressClassName: haproxy
|
||||||
|
annotations: {}
|
||||||
|
# kubernetes.io/ingress.class: haproxy
|
||||||
|
# kubernetes.io/tls-acme: "true"
|
||||||
|
# haproxy-ingress.github.io/tcp-service-port: "8883"
|
||||||
|
# haproxy-ingress.github.io/proxy-protocol: "v2"
|
||||||
|
path: /mqtt
|
||||||
|
pathType: ImplementationSpecific
|
||||||
|
hosts:
|
||||||
|
- mqtt.emqx.local
|
||||||
|
tls: []
|
||||||
|
|
||||||
podSecurityContext:
|
podSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|
Loading…
Reference in New Issue