Статьи

Управление настраиваемыми данными в Kubernetes

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

Kubernetes предоставляет, ConfigMapчтобы помочь настроить данные извне. Это следует парадигме дизайна — «отделение конфига от кода». API ConfigMap делает приложение переносимым. Конфигурация может быть изменена без повторного развертывания приложения.

ConfigMap

Ресурс Kuignetes ConfigMap содержит данные в виде пары ключ-значение. Это позволяет нам указывать данные конфигурации вне контейнера. Это разъединяет изображение и его конфигурацию. Любые изменения в configMap во время выполнения также отражаются в работающем контейнере. Следовательно, configMap является очень полезным инструментом в нескольких случаях использования, таких как:

  • Установка переменных среды
  • Установка аргументов командной строки в модуле
  • Чтение файлов конфигурации с тома

Каждый из этих вариантов использования объясняется далее в этом посте. 

Во-первых, давайте посмотрим на образец ConfigMap.


YAML