Kubernetes предоставляет два встроенных механизма — ConfigMap для обычных настроек и Secret для секретных данных. Они позволяют вынести конфигурацию из кода, менять её без пересборки образа и безопасно хранить пароли. Для малого бизнеса это означает меньше головной боли при переносе приложений и выше защиту от утечек. Разберём, как это работает и с чего начать.
Почему нельзя зашивать пароли и ключи в Docker-образ?
Любое приложение использует внешние адреса, пароли баз данных, API-ключи или токены. Если прописать их прямо в коде или в Dockerfile, то при смене, например, адреса сервера базы данных придётся пересобирать образ, заново выкладывать его в registry и обновлять все поды. Это долго, рискованно и легко допустить ошибку. Кроме того, если образ попадёт в публичный репозиторий (или к неавторизованному сотруднику), все секреты окажутся скомпрометированы.
Как ConfigMap и Secret решают задачу?
ConfigMap хранит несекретные параметры: адреса серверов, порты, имена баз данных, параметры логов. Secret — то же самое, но данные в нём зашифрованы (как минимум base64, а в кластере можно включить дополнительное шифрование). Оба ресурса подключаются к контейнерам двумя способами: как переменные окружения или как смонтированные файлы. При изменении ConfigMap или Secret можно обновить под без пересборки образа — достаточно перезапустить pod или воспользоваться механизмами live update.
Пример: ваше приложение читает строку подключения к PostgreSQL из переменной DATABASE_URL. Вы кладёте эту строку в Secret, а в манифесте пода указываете ссылку на него. Чтобы сменить базу, достаточно отредактировать Secret и перезапустить pod — код менять не нужно.
Что нужно малому бизнесу для внедрения?
Для работы с ConfigMap и Secret требуется минимальная инфраструктура Kubernetes: либо собственный кластер (серверы с установленным Kubernetes), либо управляемый кластер от облачного провайдера. Малому бизнесу в Беларуси часто проще и дешевле арендовать managed Kubernetes у локального хостинга — не нужно нанимать DevOps-инженера для поддержки инфраструктуры. При этом не обязательно покупать дорогие лицензии на Windows Server: Kubernetes отлично работает на Linux. Если же вы решите развернуть свой кластер на Windows, вам понадобятся лицензии, которые можно приобрести через поставщиков ПО. Например, подписки Microsoft 365 для бизнеса включают облачные инструменты управления, но для самого Kubernetes чаще используют Linux. В любом случае, для выбора оптимальной модели полезно сравнить VPS и IaaS для малого бизнеса.
Типичные ошибки при работе с ConfigMap и Secret
- Хранить Secret в системе контроля версий. Даже в зашифрованном виде — лучше использовать внешние хранилища секретов (HashiCorp Vault, внешние Secrets Store CSI).
- Использовать ConfigMap для паролей. ConfigMap не шифруется — только Secret. Путаница приводит к утечке.
- Не обновлять секреты при ротации. Пароль сменили, а Secret в кластере остался старым — приложение падает.
- Жёстко кодировать namespace в манифестах. При переносе между средами ConfigMap и Secret нужно пересоздавать заново.
- Не ограничивать доступ к Secret. Любой, у кого есть права на чтение Secret в namespace, видит пароли в открытом виде (base64 декодируется легко). Используйте RBAC.
Что делать сегодня?
Вот три простых шага для начала:
- Проверьте свой код. Найдите все жёстко прописанные пароли, строки подключения, токены. Выпишите их в отдельный список.
- Создайте тестовый ConfigMap и Secret. Возьмите одно микросервисное приложение и вынесите настройки в ресурсы Kubernetes. Подключите их через переменные окружения.
- Настройте ротацию. Запланируйте регулярную смену паролей (хотя бы раз в квартал) и продумайте процесс обновления Secret в кластере без простоя.
Если для вашего бизнеса Kubernetes пока избыточен, но нужно централизованно управлять лицензиями и облачными сервисами, обратите внимание на программы корпоративного лицензирования Microsoft, которые позволяют экономить на подписках и получать рассрочку. А если вы уже используете облачные приложения, но не уверены в оптимальном бюджете, прочитайте материал "Бюджет на IT для микробизнеса: как не переплачивать за лицензии в 2026".



