KubeZero/charts/kubezero-istio-ingress/templates/ingress-gateway.yaml

115 lines
3.0 KiB
YAML
Raw Normal View History

{{- if and (index .Values "istio-ingress" "enabled") (index .Values "istio-ingress" "certificates") }}
# https://istio.io/latest/docs/tasks/traffic-management/ingress/secure-ingress/#configure-a-tls-ingress-gateway-for-multiple-hosts
apiVersion: networking.istio.io/v1beta1
2020-07-21 17:30:21 +00:00
kind: Gateway
metadata:
name: ingressgateway
2020-11-24 14:44:57 +00:00
namespace: {{ .Release.Namespace }}
2020-08-06 17:43:59 +00:00
labels:
{{ include "kubezero-lib.labels" . | indent 4 }}
2020-07-21 17:30:21 +00:00
spec:
selector:
istio: ingressgateway
servers:
- port:
number: 80
name: http
protocol: HTTP2
hosts:
{{- range $cert := (index .Values "istio-ingress" "certificates") }}
{{- toYaml $cert.dnsNames | nindent 4 }}
{{- end }}
2020-07-21 17:30:21 +00:00
tls:
httpsRedirect: true
{{- range $cert := (index .Values "istio-ingress" "certificates") }}
2020-07-21 17:30:21 +00:00
- port:
number: 443
name: https
protocol: HTTPS
hosts:
{{- toYaml $cert.dnsNames | nindent 4 }}
2020-07-21 17:30:21 +00:00
tls:
mode: SIMPLE
credentialName: {{ $cert.name }}
{{- end }}
{{- end }}
2020-11-24 14:44:57 +00:00
{{- if and (index .Values "istio-private-ingress" "enabled") (index .Values "istio-private-ingress" "certificates") }}
2020-07-21 17:30:21 +00:00
---
apiVersion: networking.istio.io/v1beta1
2020-07-21 17:30:21 +00:00
kind: Gateway
metadata:
name: private-ingressgateway
2020-11-24 14:44:57 +00:00
namespace: {{ .Release.Namespace }}
2020-08-06 17:43:59 +00:00
labels:
{{ include "kubezero-lib.labels" . | indent 4 }}
2020-07-21 17:30:21 +00:00
spec:
selector:
istio: private-ingressgateway
servers:
- port:
number: 80
name: http
protocol: HTTP2
hosts:
{{- range $certs := (index .Values "istio-private-ingress" "certificates") }}
{{- toYaml $certs.dnsNames | nindent 4 }}
{{- end }}
2020-07-21 17:30:21 +00:00
tls:
httpsRedirect: true
# All SSL hosts one entry per ingress-certificate
{{- range $cert := (index .Values "istio-private-ingress" "certificates") }}
2020-07-21 17:30:21 +00:00
- port:
number: 443
name: https
protocol: HTTPS
hosts:
{{- toYaml $cert.dnsNames | nindent 4 }}
2020-07-21 17:30:21 +00:00
tls:
mode: SIMPLE
credentialName: {{ $cert.name }}
- port:
number: 24224
name: fluentd-forward
protocol: TLS
hosts:
{{- toYaml $cert.dnsNames | nindent 4 }}
tls:
mode: SIMPLE
credentialName: {{ $cert.name }}
{{- end }}
2020-08-11 14:09:48 +00:00
- port:
number: 5672
name: amqp
protocol: TCP
hosts:
{{- range $certs := (index .Values "istio-private-ingress" "certificates") }}
{{- toYaml $certs.dnsNames | nindent 4 }}
{{- end }}
2020-08-11 14:09:48 +00:00
- port:
number: 5671
name: amqps
protocol: TCP
hosts:
{{- range $certs := (index .Values "istio-private-ingress" "certificates") }}
{{- toYaml $certs.dnsNames | nindent 4 }}
{{- end }}
- port:
number: 6379
name: redis
protocol: TCP
hosts:
{{- range $certs := (index .Values "istio-private-ingress" "certificates") }}
{{- toYaml $certs.dnsNames | nindent 4 }}
{{- end }}
- port:
number: 6380
name: redis-1
protocol: TCP
hosts:
{{- range $certs := (index .Values "istio-private-ingress" "certificates") }}
{{- toYaml $certs.dnsNames | nindent 4 }}
{{- end }}
{{- end }}