2024-05-15 19:42:58 -04:00
|
|
|
apiVersion: v1
|
|
|
|
kind: PersistentVolumeClaim
|
|
|
|
metadata:
|
|
|
|
name: dsm-pvc
|
|
|
|
spec:
|
|
|
|
accessModes:
|
|
|
|
- ReadWriteOnce
|
|
|
|
resources:
|
|
|
|
requests:
|
|
|
|
storage: 16Gi
|
|
|
|
---
|
|
|
|
apiVersion: v1
|
|
|
|
kind: Pod
|
|
|
|
metadata:
|
|
|
|
name: dsm
|
|
|
|
labels:
|
|
|
|
name: dsm
|
|
|
|
spec:
|
|
|
|
terminationGracePeriodSeconds: 120 # the Kubernetes default is 30 seconds and it may be not enough
|
|
|
|
containers:
|
|
|
|
- name: dsm
|
|
|
|
image: vdsm/virtual-dsm
|
|
|
|
ports:
|
|
|
|
- containerPort: 5000
|
|
|
|
protocol: TCP
|
|
|
|
securityContext:
|
|
|
|
privileged: true
|
|
|
|
env:
|
|
|
|
- name: RAM_SIZE
|
|
|
|
value: 1G
|
|
|
|
- name: CPU_CORES
|
|
|
|
value: "1"
|
|
|
|
- name: DISK_SIZE
|
|
|
|
value: "16G" # Kubernetes uses Gi, but DSM uses GB
|
|
|
|
volumeMounts:
|
|
|
|
- mountPath: /storage
|
|
|
|
name: storage
|
2024-06-13 19:31:00 +02:00
|
|
|
- mountPath: /dev/kvm
|
|
|
|
name: dev-kvm
|
2024-05-15 19:42:58 -04:00
|
|
|
volumes:
|
|
|
|
- name: storage
|
|
|
|
persistentVolumeClaim:
|
|
|
|
claimName: dsm-pvc
|
2024-06-13 19:31:00 +02:00
|
|
|
- name: dev-kvm
|
|
|
|
hostPath:
|
|
|
|
path: /dev/kvm
|
2024-05-15 19:42:58 -04:00
|
|
|
---
|
|
|
|
apiVersion: v1
|
|
|
|
kind: Service
|
|
|
|
metadata:
|
|
|
|
name: dsm
|
|
|
|
spec:
|
|
|
|
type: NodePort
|
|
|
|
selector:
|
|
|
|
name: dsm
|
|
|
|
ports:
|
|
|
|
- name: tcp-5000
|
|
|
|
port: 5000
|
|
|
|
targetPort: 5000
|