Saya memiliki referensi ke Rahasia dan ConfigMaps di file YAML Deployment saya. Volume Rahasia meningkat seperti yang diharapkan, tetapi bukan ConfigMap.

Saya membuat ConfigMap dengan banyak file dan ketika saya melakukan kubectl get configmap ... itu menunjukkan semua nilai yang diharapkan. Juga, ketika saya membuat hanya ConfigMaps itu memasang volume dengan baik, tetapi tidak bersama dengan Rahasia.

Saya telah mencoba skenario berbeda untuk memiliki keduanya di direktori yang sama untuk memisahkannya tetapi sepertinya tidak berhasil.

Ini YAML saya. Apakah saya mereferensikan ConfigMap dengan benar?

apiVersion: apps/v1
kind: Deployment
metadata:
  name: hello-deployment
spec:
  selector:
    matchLabels:
      app: hello
  replicas: 1 # tells deployment to run 1 pod
  template:
    metadata:
      labels:
        app: hello
    spec:
      containers:
      - name: hello
        image: XXX/yyy/image-50
        ports:
        - containerPort: 9009
          protocol: TCP      
        volumeMounts:
        - mountPath: /shared
          name: configs-volume
          readOnly: true
        volumeMounts:
        - mountPath: data/secrets
          name: atp-secret
          readOnly: true
      volumes:
      - name: configs-volume
        configMap:
          name: prompts-config
          key: application.properties
      volumes:
      - name: atp-secret
        secret:
          defaultMode: 420
          secretName: dev-secret
      restartPolicy: Always
      imagePullSecrets:
      - name: ocirsecrets
0
mamidala86 12 Mei 2021, 03:16

1 menjawab

Jawaban Terbaik

Anda memiliki dua daftar volumes: yang terpisah dan juga dua daftar volumeMounts: yang terpisah. Saat Kubernetes mencoba menemukan daftar volumes: dalam spesifikasi Pod, Kubernetes menemukan daftar terakhir yang cocok di setiap set.

volumes:
- name: configs-volume
volumes: # this completely replaces the list of volumes
- name: atp-secret

Dalam kedua kasus tersebut, Anda memerlukan satu kunci volumes: atau volumeMounts:, dan kemudian beberapa item daftar di bawah kunci tersebut.

volumes:
- name: configs-volume
  configMap: { ... }
- name: atp-secret                 # do not repeat volumes: key
  secret: { ... }
containers:
  - name: hello
    volumeMounts:
      - name: configs-volume
        mountPath: /shared
      - name: atp-secret           # do not repeat volumeMounts: key
        mounthPath: /data/secrets
3
David Maze 12 Mei 2021, 00:35