| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- {{- if .Values.allInOne.enabled }}
- apiVersion: v1
- kind: Service
- metadata:
- name: {{ template "seaweedfs.name" . }}-all-in-one
- namespace: {{ .Release.Namespace }}
- 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: seaweedfs-all-in-one
- {{- if .Values.allInOne.service.annotations }}
- annotations:
- {{- toYaml .Values.allInOne.service.annotations | nindent 4 }}
- {{- end }}
- spec:
- internalTrafficPolicy: {{ .Values.allInOne.service.internalTrafficPolicy | default "Cluster" }}
- ports:
- # Master ports
- - name: "swfs-master"
- port: {{ .Values.master.port }}
- targetPort: {{ .Values.master.port }}
- protocol: TCP
- - name: "swfs-master-grpc"
- port: {{ .Values.master.grpcPort }}
- targetPort: {{ .Values.master.grpcPort }}
- protocol: TCP
-
- # Volume ports
- - name: "swfs-volume"
- port: {{ .Values.volume.port }}
- targetPort: {{ .Values.volume.port }}
- protocol: TCP
- - name: "swfs-volume-grpc"
- port: {{ .Values.volume.grpcPort }}
- targetPort: {{ .Values.volume.grpcPort }}
- protocol: TCP
-
- # Filer ports
- - name: "swfs-filer"
- port: {{ .Values.filer.port }}
- targetPort: {{ .Values.filer.port }}
- protocol: TCP
- - name: "swfs-filer-grpc"
- port: {{ .Values.filer.grpcPort }}
- targetPort: {{ .Values.filer.grpcPort }}
- protocol: TCP
-
- # S3 ports (if enabled)
- {{- if .Values.allInOne.s3.enabled }}
- - name: "swfs-s3"
- port: {{ if .Values.allInOne.s3.enabled }}{{ .Values.s3.port }}{{ else }}{{ .Values.filer.s3.port }}{{ end }}
- targetPort: {{ if .Values.allInOne.s3.enabled }}{{ .Values.s3.port }}{{ else }}{{ .Values.filer.s3.port }}{{ end }}
- protocol: TCP
- {{- if and .Values.allInOne.s3.enabled .Values.s3.httpsPort }}
- - name: "swfs-s3-tls"
- port: {{ .Values.s3.httpsPort }}
- targetPort: {{ .Values.s3.httpsPort }}
- protocol: TCP
- {{- end }}
- {{- end }}
-
- # SFTP ports (if enabled)
- {{- if .Values.allInOne.sftp.enabled }}
- - name: "swfs-sftp"
- port: {{ .Values.sftp.port }}
- targetPort: {{ .Values.sftp.port }}
- protocol: TCP
- {{- end }}
-
- # Server metrics port (single metrics endpoint for all services)
- {{- if .Values.allInOne.metricsPort }}
- - name: "server-metrics"
- port: {{ .Values.allInOne.metricsPort }}
- targetPort: {{ .Values.allInOne.metricsPort }}
- protocol: TCP
- {{- end }}
-
- selector:
- app.kubernetes.io/name: {{ template "seaweedfs.name" . }}
- app.kubernetes.io/component: seaweedfs-all-in-one
- {{- end }}
|