Один кластер / экземпляр Kubernetes / OpenShift в центрах обработки данных?

С учетом того, что Ubernetes полностью решает эту проблему, проблема, в настоящее время возможно (не обязательно рекомендуется) охватить один кластер K8 / OpenShift несколькими внутренними корпоративными центрами обработки данных?

Кроме того, предполагается, что задержка между центрами обработки данных относительно невелика и что инфраструктура корпоративных центров обработки данных относительно согласована.

Пример. Имея 3 корпоративных контроллера домена, разверните 1 .. * мастера в каждом центре обработки данных (как единый кластер) и установите 1 .. * узел на каждом контроллере домена с pods / rc's / services / ..., развернутыми по всем 3 контроллерам домена.

Реализовал ли кто-нибудь что-то подобное как временное решение до того, как Ubernetes упадет, и если да, то как это работает и какие соображения следует учитывать при такой работе?


person Donovan Muller    schedule 10.12.2015    source источник


Ответы (1)


возможно ли (не обязательно рекомендуется) охватить один кластер K8 / OpenShift несколькими внутренними корпоративными центрами обработки данных?

Да, в настоящее время это возможно. Узлам дается адрес apiserver и учетные данные клиента, а затем они регистрируются в кластере. Узлы не знают (или не заботятся) о том, что apiserver является локальным или удаленным, и apiserver позволяет любому узлу регистрироваться, если у него есть действительные учетные данные, независимо от того, где находится узел в сети.

Кроме того, предполагается, что задержка между центрами обработки данных относительно невелика и что инфраструктура корпоративных центров обработки данных относительно согласована.

Это важно, поскольку многие настройки Kubernetes предполагают (явно или неявно) наличие сети с высокой пропускной способностью и малой задержкой между apiserver и узлами.

Пример. Имея 3 корпоративных контроллера домена, разверните 1 .. * мастера в каждом центре обработки данных (как единый кластер) и установите 1 .. * узел на каждом контроллере домена с pods / rc's / services / ..., развернутыми по всем 3 контроллерам домена.

Обратной стороной этого подхода является то, что если у вас есть один глобальный кластер, у вас есть одна глобальная точка отказа. Даже если вы реплицировали главные компоненты высокой доступности, повреждение данных может привести к отключению всего кластера. А неверная конфигурация, распространенная на все модули в контроллере репликации, может привести к отключению всей вашей службы. Отправка плохого образа узла может привести к отключению всех ваших узлов. И так далее. Это одна из причин, по которой мы рекомендуем использовать кластер для каждого домена отказа, а не один глобальный кластер.

person Robert Bailey    schedule 10.12.2015
comment
Кроме того, как всегда, подготовьте план отказа для вашего кластера. Практикуйте свои сценарии восстановления master и etcd - поскольку ручное вмешательство в членство в etcd в случае сбоя может привести к разделению мозгов, убедитесь, что вы знакомы с процессом изменения членства в кластере и у вас есть хорошие процедуры резервного копирования и восстановления. - person Clayton; 11.12.2015