We changed the imagePullPolicy to IfNotPresent so that user can easily install Longhorn in air-gap instalation. Also add a bash script for the developer to quickly change all the imagePullPolicies back to Always so that k8s always pull the lastest images. This will be useful when dev use the tag such as master. Longhorn #1491 Signed-off-by: Phan Le <phan.le@rancher.com>
112 lines
3.0 KiB
YAML
112 lines
3.0 KiB
YAML
apiVersion: apps/v1
|
|
kind: DaemonSet
|
|
metadata:
|
|
labels:
|
|
app: longhorn-manager
|
|
name: longhorn-manager
|
|
namespace: {{ .Release.Namespace }}
|
|
spec:
|
|
selector:
|
|
matchLabels:
|
|
app: longhorn-manager
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: longhorn-manager
|
|
spec:
|
|
containers:
|
|
- name: longhorn-manager
|
|
image: "{{ .Values.image.longhorn.manager }}:{{ .Values.image.longhorn.managerTag }}"
|
|
imagePullPolicy: IfNotPresent
|
|
securityContext:
|
|
privileged: true
|
|
command:
|
|
- longhorn-manager
|
|
- -d
|
|
- daemon
|
|
- --engine-image
|
|
- "{{ .Values.image.longhorn.engine }}:{{ .Values.image.longhorn.engineTag }}"
|
|
- --instance-manager-image
|
|
- "{{ .Values.image.longhorn.instanceManager }}:{{ .Values.image.longhorn.instanceManagerTag }}"
|
|
- --manager-image
|
|
- "{{ .Values.image.longhorn.manager }}:{{ .Values.image.longhorn.managerTag }}"
|
|
- --service-account
|
|
- longhorn-service-account
|
|
ports:
|
|
- containerPort: 9500
|
|
name: manager
|
|
readinessProbe:
|
|
tcpSocket:
|
|
port: 9500
|
|
volumeMounts:
|
|
- name: dev
|
|
mountPath: /host/dev/
|
|
- name: proc
|
|
mountPath: /host/proc/
|
|
- name: varrun
|
|
mountPath: /var/run/
|
|
- name: longhorn
|
|
mountPath: /var/lib/longhorn/
|
|
mountPropagation: Bidirectional
|
|
- name: longhorn-default-setting
|
|
mountPath: /var/lib/longhorn-setting/
|
|
env:
|
|
- name: POD_NAMESPACE
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: metadata.namespace
|
|
- name: POD_IP
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: status.podIP
|
|
- name: NODE_NAME
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: spec.nodeName
|
|
- name: DEFAULT_SETTING_PATH
|
|
value: /var/lib/longhorn-setting/default-setting.yaml
|
|
volumes:
|
|
- name: dev
|
|
hostPath:
|
|
path: /dev/
|
|
- name: proc
|
|
hostPath:
|
|
path: /proc/
|
|
- name: varrun
|
|
hostPath:
|
|
path: /var/run/
|
|
- name: longhorn
|
|
hostPath:
|
|
path: /var/lib/longhorn/
|
|
- name: longhorn-default-setting
|
|
configMap:
|
|
name: longhorn-default-setting
|
|
{{- if .Values.defaultSettings.registrySecret }}
|
|
imagePullSecrets:
|
|
- name: {{ .Values.defaultSettings.registrySecret }}
|
|
{{- end }}
|
|
serviceAccountName: longhorn-service-account
|
|
updateStrategy:
|
|
rollingUpdate:
|
|
maxUnavailable: "100%"
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
labels:
|
|
app: longhorn-manager
|
|
name: longhorn-backend
|
|
namespace: {{ .Release.Namespace }}
|
|
spec:
|
|
type: {{ .Values.service.manager.type }}
|
|
sessionAffinity: ClientIP
|
|
selector:
|
|
app: longhorn-manager
|
|
ports:
|
|
- name: manager
|
|
port: 9500
|
|
targetPort: manager
|
|
{{- if .Values.service.manager.nodePort }}
|
|
nodePort: {{ .Values.service.manager.nodePort }}
|
|
{{- end }}
|