Каталог Pod / Container, который использовался для монтирования пути nfs, становится пустым после развертывания - PullRequest
3 голосов
/ 18 июня 2020

Ниже приведено мое развертывание kubernetes / openshift, pv и pv c -yaml template:

apiVersion: v1
kind: DeploymentConfig
metadata:
  name: pythonApp
  creationTimestamp: null
  annotations:
    openshift.io/image.insecureRepository: "true"
spec:
  replicas: 1
  strategy:
    type: Recreate
  revisionHistoryLimit: 2
  template:
    metadata:
      labels:
        app: pythonApp
      creationTimestamp: null
    spec:
      hostAliases:
        - ip: "127.0.0.1"
          hostnames:
            - "backend"
      containers:
        - name: backend
          imagePullPolicy: IfNotPresent
          image: <img-name>
          command: ["sh", "-c"]
          args: ['python manage.py runserver']
          resources: {}
          volumeMounts:
          - mountPath: /pythonApp/configs
            name: configs
      restartPolicy: Always
      volumes:
      - name: configs
        persistentVolumeClaim:
          claimName: "configs-volume"
status: {}

---------------------------------------------------------------

apiVersion: v1
kind: PersistentVolume
metadata:
  name: "configs-volume"
  storageClassName: manual
  capacity:
    storage: 1Gi
  persistentVolumeReclaimPolicy: Retain
  accessModes:
  - ReadWriteMany
  nfs:
    path: /mnt/k8sMount/configs
    server: <server-ip>

---------------------------------------------------------------

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: "configs-volume-claim"
  creationTimestamp: null
spec:
  storageClassName: manual
  accessModes:
  - ReadWriteMany
  resources:
    requests:
      storage: 1Gi
  volumeName: "configs-volume"

Здесь после развертывания, когда я exec внутри контейнера (используя oc exec или kubectl exec command) и проверьте папку /pythonApp/configs, она пуста. На самом деле предполагается, что у него есть некоторые файлы конфигурации из используемого образа.

Эта проблема связана с тем, что /pythonApp/configs монтируется на постоянный путь монтирования тома nfs /mnt/k8sMount/configs, который изначально будет пустым ?. Как это можно решить?

Версия Kubernetes: 1.11 Версия Openshift: 3.11

...