Кубернетес: внутрикластерная изоляция приложений

Я экспериментировал с k8s/kops/aws люкс.

Пока что дела идут довольно хорошо (за исключением проблемы при обновлении кластера через kops)

Я хочу иметь возможность использовать мои существующие ресурсы / кластер и развернуть 2 варианта моего приложения (т.е. production а также testing) в том же кластере.

Я хотел бы быть на безопасной стороне и максимально увеличить изоляцию между k8s ресурсы этих двух развертываний.

Определенно там происходит в разных пространствах имен.

Из какого-то расследования я узнал, что мне нужно также подать заявку NetworkPolicy предотвращатьnamespace связь; однако применяя NetworkPolicy ресурсам требуется поддерживающее сетевое решение (в настоящее время используется kubenetпо умолчанию kops который не)

Какое решение / плагин выбрать?

Просто хочу (по крайней мере, на данный момент) уровень изоляции, описанный выше, который, я полагаю, может быть достигнут через NetworkPolicy даже если есть общее CIDR для всех модулей (просто хочу сказать, что нужно просто простейшее сетевое решение, которое бы достигло этого, ничего более сложного с несколькими CIDRs так далее).

В идеале я хотел бы иметь возможность просто использовать NetworkPolicy ресурс для некоторых namespace-основан (namespaceSelector) а также pod-основан (podSelector) правила входа и все тут (?)

1 ответ

В моих кластерах kops я использую сетевое соединение (также я предоставляю их как частную топологию, которая исключает kubenet тем не мение). Таким образом, мое первое предложение должно было бы пойти с другой сетью, переплетение и ситцевость, являющиеся первыми, которые приходят мне на ум.

Кроме того, вы можете захотеть взглянуть на решение для сервисной сетки, такое как Istio, которое также может использовать NetworkPolicies (некоторые чтения политики istio)

Другие вопросы по тегам