2017-01-28 15 views
0

У меня есть кластер cassandra поверх кубернетов, развернутых как Stateful Sets. Я искал для внедрения междоузельной безопасности между контейнерами. Я не уверен, как реализовать, поскольку я ищу масштабирование, и я не хочу перезапускать кластер с новыми сертификатами после масштабирования. У меня есть сценарий ввода докеров для настройки cassandra.yaml при запуске контейнера в контейнерах.Datastax Cassandra interode security kubernetes

Может кто-нибудь может предложить, какой был бы лучший подход в таком случае?

+0

Есть ли стандартный подход для решения проблемы? –

+0

Я думаю, вы должны немного уточнить свой вопрос и поделиться некоторыми подробностями. Как масштабируется кластер, связанный с [конфигурацией контекста безопасности] (https://kubernetes.io/docs/user-guide/security-context/) одного приложения/StatefulSet? – pagid

ответ

0

Инженер DataStax здесь, я помог разработать функцию управления сертификатом между узлами в OpsCenter Lifecycle Manager. Нет фундаментального требования для перезапуска всех узлов после добавления нового узла/сертификата, но легко спроектировать управление сертификатами, чтобы вы случайно оказались в этом требовании.

Вы должны создать самозаверяющий сертификат для каждого узла, добавив каждый из этих сертификатов в доверительный магазин и скопировав этот доверенный магазин каждому узлу. Когда вы добавляете новый узел/cert, вы должны добавить новый сертификат в этот доверенный магазин, перепрограммировать его на каждый узел, что затем требует перезапуска Cassandra. Вот как документация DataStax предлагает сделать что-то, и это самый простой способ начать работу, но это не самый масштабируемый способ перехода в производство.

Вместо этого вы должны создать Центр сертификации. Он не должен быть публично доверенным CA, как Verisign, он может быть частным, созданным с помощью инструмента командной строки openssl. Добавьте CA-сертификат CA в доверительный магазин и скопируйте его на каждый узел. На этом этапе вы можете создавать сертификаты для каждого узла, подписанного этим ЦС. Поскольку каждый узел уже доверяет ЦС, вы можете добавлять новые узлы/сертификаты в любое время, если их сертификаты от узла к узлу подписаны этим ЦС (поэтому держитесь за частные и общедоступные части ЦС), и каждый узел будет доверять подписанный сертификат.

К сожалению, это довольно запутанно реализовать, если у вас нет достаточного фона с сертификатами в целом и openssl (или другим средством генерации сертификата). Для его объяснения потребуется много больше, чтобы шаг за шагом объяснить это. Но вы можете легко обучать Google по настройке CA, и вы уже знаете, как сделать материал JKS для создания магазина доверия ... так что вы, по крайней мере, хороший кусок пути туда.

Также ... Я работаю над различными материалами, связанными с развертыванием для DataStax. Если бы вы были заинтересованы, я бы хотел пообщаться в течение получаса о том, как вы сделали настройку Kubernetes и что сработало хорошо для вас и что вызывает боль. У переполнения стека есть функция прямого обмена сообщениями? Если я смогу выяснить, как я буду снимать вам свою контактную информацию.

+0

Нет прямого сообщения о переполнении стека. Я думаю, комментарий здесь, если вы хотите общаться, и я просто публично опубликую свою контактную информацию. rip inbox. –

+1

Mike Lococo - возможно, OP может направить вас на слабину команды Datastax Academy? – LHWizard

+0

О да, это потрясающая идея. Я нахожусь в #opscenter в datastaxacademy.slack.com. –