Kubernetes: как управлять несколькими отдельными развертываниями одного и того же приложения - PullRequest
0 голосов
/ 01 апреля 2020

Мы переносим развертывания нашего приложения с виртуальных машин на Kubernetes, и поскольку мои знания о Kubernetes очень ограничены, я потерял, как настроить развертывание для нескольких клиентов. В настоящее время у нас есть отдельная виртуальная машина для каждого клиента, но как разделить клиентов в Kubernetes таким образом, чтобы они были экономически эффективными и ресурсоэффективными и простыми в управлении?

Мне удалось создать среду разработки и поэтапного развертывания с использованием пространств имен и это работает отлично. Для обновления dev и поэтапного развертывания я просто использую kubectl apply -f <file> --namespace staging.

Теперь мне нужно развернуть приложение в рабочей среде для нескольких клиентов (50+). Они должны быть полностью отделены друг от друга (используя отдельные переменные и секреты среды), а код должен быть одинаковым. И я не знаю, каков наилучший способ добиться этого.

Не могли бы вы намекнуть мне, как правильно это сделать в Куберне?

Ответы [ 2 ]

1 голос
/ 01 апреля 2020

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

https://github.com/kubernetes-sigs/kustomize/tree/master/examples

0 голосов
/ 01 апреля 2020
  • один (или набор пространств имен) клиента
  • kustomize имеет очень хорошую систему шаблонов для обработки общей конфигурации c и нескольких адаптаций клиентами
  • используйте NetworkPolicy для изоляции сети между клиентами
...