Как установить пароли в configmap - PullRequest
1 голос
/ 28 января 2020

Я хочу настроить пароли в карте конфигурации. YAML вместо deploy.yaml.able установить имя пользователя и другие переменные. При этом файл конфигурации карты. YAML, над которым я работал.

kind: ConfigMap
apiVersion: v1
metadata:
  name: poc-configmapconfiguration-configmap
data:
  Environment: [[.Environment]]
  dockerRegistryUrl: [[.Env.dockerRegistryUrl]]
  CassandraSettings__CassandraPassword:
          valueFrom:
             secretKeyRef:
                name: abcd-passwords
                key: "[[ .Environment ]]-abcd-cassandra-password

Ответы [ 2 ]

2 голосов
/ 28 января 2020

Как уже было предложено, рекомендуется использовать секреты для хранения паролей Секреты скрывают ваши данные с использованием кодировки Base64 , поэтому рекомендуется использовать секреты для конфиденциальных данных вместо использования ConfigMaps.

Если вы выполняете объяснение в поле ConfigMap, чтобы получить больше информации от CLI на ConfigMap.data, он принимает карту строк.

$ kubectl explain ConfigMap.data
KIND:     ConfigMap
VERSION:  v1

FIELD:    data <map[string]string>

DESCRIPTION:
     Data contains the configuration data. Each key must consist of alphanumeric
     characters, '-', '_' or '.'. Values with non-UTF-8 byte sequences must use
     the BinaryData field. The keys stored in Data must not overlap with the
     keys in the BinaryData field, this is enforced during validation process.

Итак, выше структура yaml используется должен выдавать ошибку при создании что-то вроде ниже ..

invalid type for io.k8s.api.core.v1.ConfigMap.data

Направить этот запрос git для такого запроса функции, который уже закрыт без поддержки.

https://github.com/kubernetes/kubernetes/issues/79224

1 голос
/ 28 января 2020

Было бы более распространенным использование Секрета, как вы можете видеть из secretKeyRef, однако эквивалентный configMapRef существует и будет использоваться таким же образом.

...