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

Модель жизненного цикла и безопасности

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

Ответ API может означать только то, что команда проверена и записана. Чтобы убедиться в результате, откройте ресурс и связанную Task, проверьте события, фактическое состояние и журналы владеющего компонента.

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

Желаемое состояние сохраняется после перезапуска Gateway, временного сбоя Relay, переподключения демона или перезагрузки хоста. Последний известный снимок может оставаться в интерфейсе для диагностики, но он не подтверждает, что ресурс существует прямо сейчас и что его безопасно изменять.

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

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

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

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

Реконсиляция — это сверка желаемого состояния с тем, что сообщил владеющий компонент. После временного разрыва Gateway может повторить безопасную идемпотентную работу, но не объявляет успех по устаревшему инвентарю и не присваивает посторонний объект с тем же именем.

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

Не удаляйте напрямую на хосте принадлежащие Gateway Containers, сети, службы приёма соединений, роли движка, коннекторы или метки ревизий. Так можно уничтожить данные, необходимые для завершения или отката. Используйте поддерживаемые действия повтора, исправления, отмены или очистки.

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

Читайте текст подтверждения для конкретного ресурса. Удаление Container снимает права ресурса, но не обязано удалять отдельный том. Удаление Route выводит из эксплуатации принадлежащий ему Secure Link, но сохраняет переиспользуемые сертификаты и Access Lists. Отключение источника прекращает будущие сборки, но не удаляет опубликованные артефакты. Перед удалением базы обработайте привязки и срок хранения резервных копий.

После операции проверьте и ожидаемое отсутствие, и то, что должно сохраниться: связи, отзыв доступа, данные, публичную доступность, запись аудита и итоговую Task. Если очистка прервалась, оставьте долговечную запись и восстанавливайте операцию через Gateway.

При отключённой ноде Gateway может показывать очищенный снимок последнего известного состояния, но не разрешает изменения, которым нужны свежие данные. Ранее применённые nginx, Containers, базы данных и другие службы могут продолжать работу самостоятельно.

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

После подключения дождитесь свежих возможностей и инвентаря. Проверьте неуспешные и прерванные Tasks, затем каждое семейство ресурсов ноды. Зелёный индикатор соединения ещё не подтверждает готовность Routes, сертификатов, рабочих нагрузок, Compose Projects, привязок баз данных и мониторинга.

Сборки, миграции, Deployments, выпуск сертификатов, обновления и подготовка баз представлены долговечными Tasks. Используйте историю операции и ограниченные журналы. Вторая конфликтующая команда может быть отклонена, отложена или усложнить восстановление.

Повторяйте действие только если Task допускает повтор или предыдущая попытка достоверно завершилась. Отмена выполняется совместно с владельцем, если он её поддерживает. Force Cancel может прекратить ожидание Gateway, но не доказывает, что действие на хосте не произошло. Перед новой командой обновите состояние владельца и устраните отметку прерванной операции поддерживаемым способом.

Заранее сформулируйте ожидаемый результат и проверьте его по пути реального потребителя: DNS/TLS/HTTP извне для публичного трафика, запрос приложения для базы данных, точный digest и проверку состояния для релиза, переподключение и свежие возможности для ноды.

При сбое сохраните ID Task и запроса, этап, безопасный фрагмент журналов, желаемое состояние и отчёт владельца. Исправьте конкретное предварительное условие и возобновите операцию через Gateway. Используйте откат верхнеуровневого владельца — проверенную ревизию, слот Deployment, Tag или артефакт. Считайте восстановление завершённым только когда состояние Gateway совпадает с наблюдаемым поведением системы.