Создание конфигурационных карт из файлов рекурсивно - PullRequest
0 голосов
/ 22 апреля 2019

У меня есть несколько файлов конфигурации в двух каталогах. Например,

  • conf.d / parentconf1.conf
  • con.d / node1 / child1.conf
  • conf.d / node2 / child2.conf

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

Пробовал с помощью

kubectl create configmap --from-file=./conf.d --from-file=./conf.d/node1/child1.conf --from-file=./conf.d/node2/child2.conf. 

Созданная карта конфигурации, как и ожидалось, не может выразить вложенную структуру каталогов.

Можно ли рекурсивно создавать ConfigMap из папок и при этом сохранять структуру папок в имени ключевой записи для ConfigMap - поскольку намерение состоит в том, чтобы монтировать эти ConfigMaps в модули?

1 Ответ

1 голос
/ 22 апреля 2019

К сожалению, отображение структуры каталогов в configmap в настоящее время не поддерживается.Обходной путь должен выразить иерархию каталога как это:

apiVersion: v1
kind: ConfigMap
metadata:
   name: testconfig
data:
  file1: |
    This is file1
  file2: |
    This is file2 in subdir directory
---
apiVersion: v1
kind: Pod
metadata:
  name: testpod
spec:
  restartPolicy: Never
  containers:
    - name: test-container
      image: gcr.io/google_containers/busybox
      command: [ "/bin/sh","-c", "sleep 1000" ]
      volumeMounts:
      - name: config-volume
        mountPath: /etc/config
  volumes:
    - name: config-volume
      configMap:
        name: testconfig
        items:
        - key: file2
          path: subdir/file2
        - key: file1
          path: file1
...