Feature/volume ingress (#8084)
This commit is contained in:
52
k8s/charts/seaweedfs/templates/volume/volume-ingress.yaml
Normal file
52
k8s/charts/seaweedfs/templates/volume/volume-ingress.yaml
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
{{- if and .Values.volume.enabled .Values.volume.ingress.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: ingress-{{ template "seaweedfs.name" . }}-volume
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
annotations:
|
||||||
|
{{- if and (not (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion)) .Values.volume.ingress.className }}
|
||||||
|
kubernetes.io/ingress.class: {{ .Values.volume.ingress.className }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.volume.ingress.annotations }}
|
||||||
|
{{- toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "seaweedfs.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/component: volume
|
||||||
|
spec:
|
||||||
|
{{- if and (semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion) .Values.volume.ingress.className }}
|
||||||
|
ingressClassName: {{ .Values.volume.ingress.className | quote }}
|
||||||
|
{{- end }}
|
||||||
|
tls:
|
||||||
|
{{ .Values.volume.ingress.tls | default list | toYaml | nindent 6}}
|
||||||
|
rules:
|
||||||
|
- {{- if .Values.volume.ingress.host }}
|
||||||
|
host: {{ .Values.volume.ingress.host | quote }}
|
||||||
|
{{- end }}
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: {{ .Values.volume.ingress.path | quote }}
|
||||||
|
{{- if semverCompare ">=1.18-0" .Capabilities.KubeVersion.GitVersion }}
|
||||||
|
pathType: {{ .Values.volume.ingress.pathType | quote }}
|
||||||
|
{{- end }}
|
||||||
|
backend:
|
||||||
|
{{- if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion }}
|
||||||
|
service:
|
||||||
|
name: {{ template "seaweedfs.name" . }}-volume
|
||||||
|
port:
|
||||||
|
number: {{ .Values.volume.port }}
|
||||||
|
{{- else }}
|
||||||
|
serviceName: {{ template "seaweedfs.name" . }}-volume
|
||||||
|
servicePort: {{ .Values.volume.port }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
@@ -544,6 +544,30 @@ volume:
|
|||||||
failureThreshold: 100
|
failureThreshold: 100
|
||||||
timeoutSeconds: 30
|
timeoutSeconds: 30
|
||||||
|
|
||||||
|
ingress:
|
||||||
|
enabled: false
|
||||||
|
className: ""
|
||||||
|
host: "volume.seaweedfs.local"
|
||||||
|
path: "/"
|
||||||
|
pathType: Prefix
|
||||||
|
annotations:
|
||||||
|
nginx.ingress.kubernetes.io/app-root: /ui/index.html
|
||||||
|
# nginx.ingress.kubernetes.io/use-regex: "true"
|
||||||
|
# nginx.ingress.kubernetes.io/rewrite-target: /$1
|
||||||
|
# nginx.ingress.kubernetes.io/auth-type: "basic"
|
||||||
|
# nginx.ingress.kubernetes.io/auth-secret: "default/ingress-basic-auth-secret"
|
||||||
|
# nginx.ingress.kubernetes.io/auth-realm: 'Authentication Required - SW-Volume'
|
||||||
|
# nginx.ingress.kubernetes.io/service-upstream: "true"
|
||||||
|
# nginx.ingress.kubernetes.io/enable-rewrite-log: "true"
|
||||||
|
# nginx.ingress.kubernetes.io/ssl-redirect: "false"
|
||||||
|
# nginx.ingress.kubernetes.io/force-ssl-redirect: "false"
|
||||||
|
# nginx.ingress.kubernetes.io/configuration-snippet: |
|
||||||
|
# sub_filter '<head>' '<head> <base href="/sw-volume/">'; #add base url
|
||||||
|
# sub_filter '="/' '="./'; #make absolute paths to relative
|
||||||
|
# sub_filter '=/' '=./';
|
||||||
|
# sub_filter '/seaweedfsstatic' './seaweedfsstatic';
|
||||||
|
# sub_filter_once off;
|
||||||
|
|
||||||
# Map of named volume groups for topology-aware deployments.
|
# Map of named volume groups for topology-aware deployments.
|
||||||
# Each key inherits all fields from the `volume` section but can override
|
# Each key inherits all fields from the `volume` section but can override
|
||||||
# them locally—for example, replicas, nodeSelector, dataCenter, etc.
|
# them locally—for example, replicas, nodeSelector, dataCenter, etc.
|
||||||
|
|||||||
Reference in New Issue
Block a user