From b92a30910c681dc52833bc90384c19aaa229e914 Mon Sep 17 00:00:00 2001 From: Derek Su Date: Mon, 15 Aug 2022 23:47:14 +0800 Subject: [PATCH] chart: add and update manifests for recovery-backend Longhorn 2293 Signed-off-by: Derek Su --- .../deployment-recovery-backend.yaml | 73 ++++++++++++++++ chart/templates/services.yaml | 17 ++++ deploy/longhorn.yaml | 87 +++++++++++++++++++ 3 files changed, 177 insertions(+) create mode 100644 chart/templates/deployment-recovery-backend.yaml diff --git a/chart/templates/deployment-recovery-backend.yaml b/chart/templates/deployment-recovery-backend.yaml new file mode 100644 index 0000000..57720bd --- /dev/null +++ b/chart/templates/deployment-recovery-backend.yaml @@ -0,0 +1,73 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + labels: {{- include "longhorn.labels" . | nindent 4 }} + app: longhorn-recovery-backend + name: longhorn-recovery-backend + namespace: {{ include "release_namespace" . }} +spec: + replicas: 2 + selector: + matchLabels: + app: longhorn-recovery-backend + template: + metadata: + labels: {{- include "longhorn.labels" . | nindent 8 }} + app: longhorn-recovery-backend + spec: + affinity: + podAntiAffinity: + preferredDuringSchedulingIgnoredDuringExecution: + - weight: 1 + podAffinityTerm: + labelSelector: + matchExpressions: + - key: app + operator: In + values: + - longhorn-recovery-backend + topologyKey: kubernetes.io/hostname + containers: + - name: longhorn-recovery-backend + image: {{ template "registry_url" . }}{{ .Values.image.longhorn.manager.repository }}:{{ .Values.image.longhorn.manager.tag }} + imagePullPolicy: {{ .Values.image.pullPolicy }} + securityContext: + runAsUser: 2000 + command: + - longhorn-manager + - recovery-backend + - --service-account + - longhorn-service-account + ports: + - containerPort: 9600 + name: recov-backend + readinessProbe: + tcpSocket: + port: 9600 + initialDelaySeconds: 3 + periodSeconds: 5 + env: + - name: POD_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace + - name: NODE_NAME + valueFrom: + fieldRef: + fieldPath: spec.nodeName + {{- if .Values.privateRegistry.registrySecret }} + imagePullSecrets: + - name: {{ .Values.privateRegistry.registrySecret }} + {{- end }} + {{- if .Values.longhornDriver.priorityClass }} + priorityClassName: {{ .Values.longhornDriver.priorityClass | quote}} + {{- end }} + {{- if .Values.longhornDriver.tolerations }} + tolerations: +{{ toYaml .Values.longhornDriver.tolerations | indent 6 }} + {{- end }} + {{- if .Values.longhornDriver.nodeSelector }} + nodeSelector: +{{ toYaml .Values.longhornDriver.nodeSelector | indent 8 }} + {{- end }} + serviceAccountName: longhorn-service-account diff --git a/chart/templates/services.yaml b/chart/templates/services.yaml index 8032ff6..cd008db 100644 --- a/chart/templates/services.yaml +++ b/chart/templates/services.yaml @@ -34,6 +34,23 @@ spec: --- apiVersion: v1 kind: Service +metadata: + labels: {{- include "longhorn.labels" . | nindent 4 }} + app: longhorn-recovery-backend + name: longhorn-recovery-backend + namespace: {{ include "release_namespace" . }} +spec: + type: ClusterIP + sessionAffinity: ClientIP + selector: + app: longhorn-recovery-backend + ports: + - name: recovery-backend + port: 9600 + targetPort: recov-backend +--- +apiVersion: v1 +kind: Service metadata: labels: {{- include "longhorn.labels" . | nindent 4 }} name: longhorn-engine-manager diff --git a/deploy/longhorn.yaml b/deploy/longhorn.yaml index ce09bf4..01f3e4d 100644 --- a/deploy/longhorn.yaml +++ b/deploy/longhorn.yaml @@ -3404,6 +3404,27 @@ spec: # Source: longhorn/templates/services.yaml apiVersion: v1 kind: Service +metadata: + labels: + app.kubernetes.io/name: longhorn + app.kubernetes.io/instance: longhorn + app.kubernetes.io/version: v1.4.0-dev + app: longhorn-recovery-backend + name: longhorn-recovery-backend + namespace: longhorn-system +spec: + type: ClusterIP + sessionAffinity: ClientIP + selector: + app: longhorn-recovery-backend + ports: + - name: recovery-backend + port: 9600 + targetPort: recov-backend +--- +# Source: longhorn/templates/services.yaml +apiVersion: v1 +kind: Service metadata: labels: app.kubernetes.io/name: longhorn @@ -3596,6 +3617,72 @@ spec: securityContext: runAsUser: 0 --- +# Source: longhorn/templates/deployment-recovery-backend.yaml +apiVersion: apps/v1 +kind: Deployment +metadata: + labels: + app.kubernetes.io/name: longhorn + app.kubernetes.io/instance: longhorn + app.kubernetes.io/version: v1.4.0-dev + app: longhorn-recovery-backend + name: longhorn-recovery-backend + namespace: longhorn-system +spec: + replicas: 2 + selector: + matchLabels: + app: longhorn-recovery-backend + template: + metadata: + labels: + app.kubernetes.io/name: longhorn + app.kubernetes.io/instance: longhorn + app.kubernetes.io/version: v1.4.0-dev + app: longhorn-recovery-backend + spec: + affinity: + podAntiAffinity: + preferredDuringSchedulingIgnoredDuringExecution: + - weight: 1 + podAffinityTerm: + labelSelector: + matchExpressions: + - key: app + operator: In + values: + - longhorn-recovery-backend + topologyKey: kubernetes.io/hostname + containers: + - name: longhorn-recovery-backend + image: longhornio/longhorn-manager:master-head + imagePullPolicy: IfNotPresent + securityContext: + runAsUser: 2000 + command: + - longhorn-manager + - recovery-backend + - --service-account + - longhorn-service-account + ports: + - containerPort: 9600 + name: recov-backend + readinessProbe: + tcpSocket: + port: 9600 + initialDelaySeconds: 3 + periodSeconds: 5 + env: + - name: POD_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace + - name: NODE_NAME + valueFrom: + fieldRef: + fieldPath: spec.nodeName + serviceAccountName: longhorn-service-account +--- # Source: longhorn/templates/deployment-ui.yaml apiVersion: apps/v1 kind: Deployment