Кубернетес через интернет
У моего провайдера VPS нет возможности иметь частную сеть между VS. Таким образом, мастер и узлы связаны через Интернет. Это достаточно безопасная практика? Или лучше перейти на AWS?
1 ответ
Хотя другой ответ утверждает, что это небезопасно, я бы категорически не согласился с этим.
1: Совершенно нормально выставить мастера в общедоступном Интернете, как вы это сделали бы с любым другим сервером. Он защищен аутентификацией / шифром. Очевидно, что должно происходить регулярное усиление безопасности, но это относится к любой системе, обращенной к Интернету. Ваши мастера также будут запускать такие программы, как планировщик и контроллер-менеджер, все локально, так что на самом деле это не проблема.
2: трафик между модулями в обычной настройке kubernetes проходит через оверлейную сеть, например, т.е. фланель, бязь или плетение. Судя по опыту, некоторые из них, как, например, в моем случае Weave Net, явно поддерживают шифрование трафика, чтобы сделать оверлей более безопасным для связи по общедоступной сети.
3: Заявление, что any pods that open ports are by default public
в корне неверно. Каждый модуль имеет свое собственное сетевое пространство имен, поэтому, даже если он прослушивает 0.0.0.0 для захвата любого трафика, это происходит только внутри этого локального пространства имен, поэтому он никоим образом не отображается извне. Пока вы не сконфигурируете службу kubernetes типа NodePort или LoadBalancer для явного предоставления этой службы (и ее портов поддержки пакетов) Интернету. И вы можете контролировать это еще больше с помощью NetworkPolicies.
Так что да, вы можете запустить кластер kubernetes через общедоступную сеть безопасным способом.