Перемещение ресурсов / томов в разных контекстах в кластерах Kubernetes - PullRequest
1 голос
/ 22 марта 2020

У меня есть кластер kubernetss, который я запустил с контекстом «dev1.k8s.local», и он имеет набор состояний с EBS -PV (постоянные тома), теперь мы планируем запустить другой контекст »dev2.k8s.local "Есть ли способ, которым я могу переместить тома EBS контекста dev1 в контекст" dev2.k8s.local "

i am using K8S 1.10 & KOPS 1.10 Version

1 Ответ

0 голосов
/ 28 марта 2020

Контекст - это просто представление конфигурации Kubernetes, обычно ~/.kube/config. Этот файл может содержать несколько конфигураций , которые управляются вручную или с помощью kubectl context.

При подготовке второго кластера Kubernetes на AWS с использованием Kops воссоздаются совершенно новые ресурсы, которые не имеют системы отсчета для другого кластера. Тома EBS, созданные для PV в исходном кластере, нельзя просто перенести между кластерами с помощью контекстной записи в файле конфигурации. Это не то, как он предназначен для работы.

Помимо проблемы дизайна, есть и серьезное техническое препятствие. Тома EBS ReadWriteOnce . Это означает, что они могут быть присоединены только к одному модулю одновременно. Причина, по которой существует это ограничение, заключается в том, что соединение EBS является блочным хранилищем, которое рассматривается как физическое блочное устройство, подключенное к базовому рабочему узлу, на котором запущен ваш модуль. Это физическое блочное устройство не существует на рабочих узлах в другом кластере. Таким образом, невозможно просто переместить указатель.

Лучший способ выполнить sh - это создать резервную копию и скопировать диск. Как вы справляетесь с этим, зависит от вашей команды. Один из способов сделать это - подключить тома EBS и скопировать данные вручную. Вы также можете сделать снимок и восстановить данные на другой том.

...