Перейти к содержимому

Миграции и архивы контейнеров

Миграция перемещает подходящую рабочую нагрузку между нодами Docker, сохраняя её идентичность Opfield и допустимые права ресурса. Архив GWCA упаковывает подходящую рабочую нагрузку для контролируемого экспорта и импорта. Оба сценария изменяют эксплуатационное состояние, но не заменяют резервное копирование: для данных в томах нужен отдельный план копирования и восстановления.

Используйте миграцию, если ту же управляемую рабочую нагрузку нужно перенести на другую ноду Docker, сохранив её владельца и связи в Opfield. Используйте Opfield Container Archive (GWCA), если конфигурацию нагрузки нужно экспортировать для контролируемого переноса или последующего импорта. Используйте резервную копию приложения, если задача — защитить или восстановить данные. Эти результаты связаны, но не взаимозаменяемы.

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

Сначала подтвердите возможность миграции

Заголовок раздела «Сначала подтвердите возможность миграции»

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

Рабочие нагрузки с GPU, защищённой средой выполнения, привязками каталогов хоста (bind mounts) и Compose Project в текущем сценарии не переносятся. Считайте это жёсткой границей и не пытайтесь обойти её изменением конфигурации среды выполнения, принадлежащей Opfield. Чтобы передать существующее приложение Compose под управление Opfield на его текущей ноде, примите проект Compose под управление.

Миграция копирует данные локальных именованных томов нагрузки и создаёт на целевой ноде тома с теми же именами. Предварительная проверка останавливает миграцию, если на целевой ноде уже есть том с таким именем или если том используется другой нагрузкой, не является локальным или хранится в образе диска. Container или Deployment с привязкой к базе данных или хранилищу перенести нельзя (MIGRATION_MANAGED_LINK_UNSUPPORTED): удалите привязку, выполните миграцию и снова создайте привязку на целевой ноде. Версии Docker с суффиксом дистрибутива, например 26.1.5+dfsg1 в Debian, сравниваются по номеру выпуска.

  1. Зафиксируйте Routes, привязки баз данных, разрешения, зависимости от томов и запланированное окно обслуживания.
  2. Создайте резервную копию томов с состоянием и убедитесь, что на целевой ноде достаточно ёмкости и поддерживается нужный профиль среды выполнения.
  3. Запустите миграцию со страницы рабочей нагрузки и следите за операцией на этапах переноса и проверки цели.
  4. Дождитесь переключения, затем проверьте на целевой ноде состояние среды выполнения, Routes, журналы и приватные зависимости приложения.
  5. Сохраняйте исходную копию, пока Opfield не сообщит о завершении очистки и не закончится окно проверки.

Если перенос, запуск на цели или переключение завершились ошибкой, откройте Task и определите остановившийся этап. Используйте предоставленные действия отмены или восстановления очистки. Не удаляйте промежуточные объекты вручную: это может помешать Opfield безопасно завершить или продолжить очистку.

Нагрузки с Docker Engine от 20.10 до 28 переносятся на ноды с более новыми версиями. Настройки, которые новая версия не может сохранить, например фиксированный MAC-адрес или ограничение памяти ядра, предварительная проверка показывает заранее с тем же сообщением, с которым остановилась бы миграция; если на исходной ноде более старый Docker-демон, вместо этого показывается предупреждение. Миграция, которая ждала переподключения ноды и затем завершилась, показывается как завершённая, а отменённая после такого ожидания — как отменённая.

Архивы GWCA могут быть самодостаточными или использовать реестр. Они включают поддерживаемую конфигурацию контейнера и при необходимости значения переменных среды, секреты и изменения записываемого слоя. Содержимое томов в архивы не входит. При импорте каждый том из архива создаётся пустым под новым именем, либо вы сопоставляете его с существующим томом под управлением Opfield.

Экспорт поддерживает переносимое подмножество параметров контейнера. Контейнеры с привязками каталогов хоста, анонимными томами, привилегированным режимом или изменёнными возможностями ядра (cap_add, cap_drop), устройствами или GPU, пространствами имён хоста, проверками состояния, нестандартным журналированием (ограничение журналов Opfield по умолчанию к нему не относится) и другими параметрами, зависящими от хоста, отклоняются, а сообщение об ошибке перечисляет неподдерживаемые параметры. Контейнеры, принадлежащие проекту Compose, — любые контейнеры с меткой com.docker.compose.project — экспортировать нельзя: REST API и MCP отклоняют их с кодом DOCKER_ARCHIVE_COMPOSE_CONTAINER (HTTP 409), а Console скрывает Export archive. Управляйте ими через их Compose Project. Слоты сине-зелёных Deployment также отклоняются.

Архив никогда не содержит учётных данных привязок контейнера к базам данных и хранилищам. Импорт не может подключить контейнер к сети хоста, к сетевому пространству имён другого контейнера или к внутренним сетям Opfield и отбрасывает метки Compose и Opfield. Клиенты MCP экспортируют и импортируют архивы через одноразовые ссылки с готовой командой curl — операцию link инструментов download_docker_archive и upload_docker_container_archive, — а не частями в base64 в вызовах инструментов.

Перед экспортом решите, нужно ли включать секреты; если да, считайте архив чувствительным материалом. Перед импортом проверьте целевую ноду, доступность образа, совместимость среды выполнения, сопоставление сетей и занятые порты. Восстановите тома отдельно и проверьте импортированную рабочую нагрузку до направления на неё трафика.

Откат миграции меняет размещение рабочей нагрузки и конфигурацию среды выполнения, но не отменяет записи приложения, сделанные во время переключения. Сохраняйте исходную резервную копию томов и данные об источнике, пока целевой ресурс не признан работоспособным. Удаление архива не удаляет рабочую нагрузку, а исходный ресурс после миграции должен удаляться только в рамках завершённого жизненного цикла миграции.

После миграции проверьте идентичность целевой ноды, среду выполнения и её состояние, подключённые тома, Routes, привязки баз данных, разрешения, журналы и одну реальную клиентскую транзакцию. До подтверждения очистки убедитесь, что исходный ресурс больше не обслуживает запросы и не принимает записи. Сохраняйте данные об источнике и резервные копии до конца согласованного периода наблюдения.

После импорта архива сравните дайджест образа, command, переменные среды, обработку секретов, тома, сети, порты, среду выполнения и ограничения ресурсов с намерением экспорта. Не направляйте трафик рабочей среды, пока не готовы зависимости приложения и не восстановлены данные.

Операторские детали: восстановление после сбоя

Заголовок раздела «Операторские детали: восстановление после сбоя»

Миграция выполняется по этапам, поэтому при сбое до переключения исходный ресурс должен продолжать обслуживать рабочую нагрузку. Сохраните запись операции и используйте поддерживаемую отмену или восстановление очистки. Если целевой ресурс запустился, но приёмка не прошла, до ручных действий проверьте на странице операции, считает ли Opfield источник авторитетным. Не позволяйте обеим копиям принимать записи, если приложение не рассчитано на такое состояние.

Файлы GWCA с секретами или изменениями записываемого слоя являются чувствительными артефактами. Храните их с контролем доступа, защитой целостности, ограниченным сроком хранения и назначенным владельцем. Если импорт завершился ошибкой, исправьте совместимость или сопоставления на целевой ноде и повторите действие с тем же проверенным архивом. Не редактируйте архив вне аудируемого процесса ради обхода политики.