Kubernetes объемное крепление - PullRequest
0 голосов
/ 23 апреля 2020

Я пытаюсь подключить каталог к ​​моим модулям, но всегда он показывает ошибку "файл или каталог не найдены"

Это мой файл yaml, используемый для развертывания:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: myapp1-deployment
  labels:
    app: myapp
spec:
  replicas: 3
  selector:
    matchLabels:
      app: myapp
  template:
    metadata:
      labels:
        app: myapp
    spec:
      volumes:
       - name: test-mount-1
         persistentVolumeClaim:
           claimName: task-pv-claim-1
      containers:
      - name: myapp
        image: 192.168.11.168:5002/dev:0.0.1-SNAPSHOT-6f4b1db
        command: ["java -jar /jar/myapp1-0.0.1-SNAPSHOT.jar --spring.config.location=file:/etc/application.properties"]
        ports:
        - containerPort: 8080
        volumeMounts:
            - mountPath: "/etc/application.properties"
              #subPath: application.properties
              name: test-mount-1
       # hostNetwork: true

      imagePullSecrets:
        - name: regcred
      #volumes:
       # - name: test-mount

и это конфигурация тома персистентности:

kind: PersistentVolume
apiVersion: v1
metadata:
  name: test-mount-1
  labels:
    type: local
    app: myapp
spec:
  storageClassName: manual
  capacity:
    storage: 5Gi
  accessModes:
    - ReadWriteMany
  hostPath:
    path: "/mnt/share"



и это конфигурация тома заявки:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: task-pv-claim-1
spec:
  storageClassName: manual
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 5Gi



и это для конфигурации сервиса, используемой для развертывания:



apiVersion: v1
kind: Service
metadata:
  name: myapp-service
spec:
  selector:
    app: myapp
  externalIPs:
   - 192.168.11.145
  ports:
    - protocol: TCP
      port: 8080
      nodePort: 31000
  type: LoadBalancer
status:
  loadBalancer:
    ingress:


Если кто-нибудь может помочь, я буду благодарен и благодарю.

1 Ответ

0 голосов
/ 24 апреля 2020

Вы не включили свой класс хранения в свой вопрос, но я предполагаю, что вы пытаетесь выполнить локальное хранение на узле. Может быть, это просто проверить, но существует ли каталог на узле, где работает ваш модуль? И это доступно для записи? В зависимости от того, сколько у вас рабочих узлов, похоже, что ваш модуль может работать на любом узле, а pv не настроен на какой-либо конкретный узел. Вы можете использовать сходство узлов, чтобы гарантировать, что ваш модуль работает на том же узле, который содержит каталог, на который ссылается ваш pv, если это проблема.

Изменить, если это NFS, вам нужно изменить свой PV, чтобы включить:

nfs: 
  path: /mnt/share 
  server: <nfs server node ip/fqdn>

Пример здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...