GPU-Live/template/stg-server/ddn/ddn-install-running/exa-csi-driver-2.3.5/examples/nginx-combined-volumes.yaml

120 lines
3.2 KiB
YAML

# --------------------------------------
# Exascaler CSI Driver - Storage Class
# --------------------------------------
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: exascaler-csi-file-driver-sc-dynamic
provisioner: exa.csi.ddn.com
allowVolumeExpansion: true
parameters:
exaMountUid: "1001" # Uid which will be used to access the volume in pod.
---
# ------------------------------------------------
# Exaxscaler CSI Driver - Persistent Volume Claim
# ------------------------------------------------
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: exascaler-csi-file-driver-pvc-dynamic
spec:
storageClassName: exascaler-csi-file-driver-sc-dynamic
accessModes:
- ReadWriteMany
resources:
requests:
storage: 1Gi
---
# --------------------------------------
# Exascaler CSI Driver - Storage Class
# --------------------------------------
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: exascaler-csi-file-driver-sc-nginx-persistent
provisioner: exa.csi.ddn.com
allowVolumeExpansion: true
---
# ------------------------------------------
# Exascaler CSI Driver - Persistent Volume
# ------------------------------------------
apiVersion: v1
kind: PersistentVolume
metadata:
name: exascaler-csi-file-driver-pv-nginx-persistent
labels:
name: exascaler-csi-file-driver-pv-nginx-persistent
spec:
storageClassName: exascaler-csi-file-driver-sc-nginx-persistent
accessModes:
- ReadWriteMany
capacity:
storage: 1Gi
csi:
driver: exa.csi.ddn.com
volumeHandle: exa1:10.3.3.200@tcp;/exaFS:/mountPoint-csi:/nginx-persistent
volumeAttributes: # volumeAttributes are the alternative of storageClass params for static (precreated) volumes.
exaMountUid: "1001" # Uid which will be used to access the volume from the pod.
---
# ------------------------------------------------
# Exascaler CSI Driver - Persistent Volume Claim
# ------------------------------------------------
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: exascaler-csi-file-driver-pvc-nginx-persistent
spec:
storageClassName: exascaler-csi-file-driver-sc-nginx-persistent
accessModes:
- ReadWriteMany
resources:
requests:
storage: 1Gi
selector:
matchLabels:
# to create 1-1 relationship for pod - persistent volume use unique labels
name: exascaler-csi-file-driver-pv-nginx-persistent
---
# ---------
# Nginx pod
# ---------
apiVersion: v1
kind: Pod
metadata:
name: nginx-dynamic-volume-combined
spec:
securityContext:
runAsUser: 1001
containers:
- image: nginxinc/nginx-unprivileged
imagePullPolicy: IfNotPresent
name: nginx
ports:
- containerPort: 80
protocol: TCP
volumeMounts:
- mountPath: /usr/share/nginx/html
name: exascaler-persistent-volume
- mountPath: /data
name: exascaler-dynamic-volume
volumes:
- name: exascaler-persistent-volume
persistentVolumeClaim:
claimName: exascaler-csi-file-driver-pvc-nginx-persistent
readOnly: false
- name: exascaler-dynamic-volume
persistentVolumeClaim:
claimName: exascaler-csi-file-driver-pvc-dynamic
readOnly: false