Развёртывание blue-green шлюза OpenClaw со вторым портом, переключением по здоровью и launchd на арендованном облачном Mac (2026-05-08)
История шлюза OpenClaw на macOS в 2026 году разделена: настольное приложение управляет жизненным циклом, а долгоживущий демон остаётся под launchd с внешними CLI-установками. Это хорошо для blue-green: можно поднять кандидат-шлюз на 127.0.0.1:18765, пока продакшен на 127.0.0.1:18764, доказать готовность синтетическими пробами и перенастроить loopback-потребителей или upstream-прокси — без второго физического mini MacLogin. Этот runbook за май 2026 фиксирует матрицу, которую арендаторы MacLogin в Гонконге, Японии, Корее, Сингапуре и США используют, чтобы стабилизировать webhook-воркеры, хуки Canvas и CLI-автоматизации во время обновлений.
См. также приложение и передачу CLI, мониторинг health curl, корректное завершение и дренаж, и хаб тематический индекс OpenClaw. Также справка и цены.
Почему blue-green лучше местных перезапусков для загруженных шлюзов
Местный launchctl kickstart -k уместен для мелких патчей, но рискованные обновления (мажор Node, смена allowlist моделей, миграция URL webhook) выигрывают от процессов рядом. Blue-green даёт полностью прогретый контейст: TLS-контексты скомпилированы, кэши моделей разогреты, очереди воркеров проверены до клиентского трафика.
План портов и матрица меток launchd
| Цвет | Адрес прослушивания | Метка launchd (пример) | Назначение |
|---|---|---|---|
| Синий (стабильный) | 127.0.0.1:18764 | ai.openclaw.gateway.blue | Продакшен-трафик |
| Зелёный (кандидат) | 127.0.0.1:18765 | ai.openclaw.gateway.green | Проверка staging |
| Наблюдаемость | Любой | N/A | Привязывать health к loopback; наружу только через контролируемые прокси по усилению localhost |
Контракт health-проб до переключения трафика
Задайте обязательные сигналы: HTTP 200 на /healthz (или проектный путь), поле версии JSON согласовано с CLI, успешный ping модели в бюджете задержки и при необходимости эхо self-test webhook. Запускайте пробы минимум два интервала scrape, чтобы поймать медленные утечки.
Шаблон вторичного LaunchAgent plist (на пользователя)
Дублируйте рабочий plist, меняйте Label, StandardOutPath, StandardErrorPath и экспорт окружения с портом и корнем конфигурации. Держите ThrottleInterval разумным, чтобы циклы падений не DOS-или syslog. Согласуйте с переменными окружения в launchd, чтобы оба цвета наследовали верное хранилище секретов.
Runbook переключения в девять шагов
- Снимок текущего plist, хеша бинарника и версии Node.
- Развернуть кандидат в версионированный каталог; стабильные пути не перезаписывать.
- Установить зелёный plist;
launchctl bootstrapот пользователя арендатора. - Проверить health локально через curl + mTLS при включении.
- Переиграть синтетические webhook только на зелёный.
- Осушить синий по последовательности из статьи о дренаже апреля 2026.
- Продвинуть, перенастроив localhost-форвардеры или upstream-блоки прокси.
- Наблюдать бюджет ошибок 30–60 минут до объявления успеха.
- Понизить синие бинарники или оставить горячими для мгновенного отката.
Учения отката быстрее пяти минут
Отрабатывайте обратное продвижение: вернуть upstream-указатель на синий, launchctl bootout зелёного только после дренажа очередей, вести логи, пока провайдеры webhook не прекратят волны 5xx. Зафиксируйте владельцев DNS, loopback и reverse-proxy — путаница там растягивает инциденты за SLA.
Наблюдаемость: diff JSONL между цветами
Когда оба демона пишут JSON-строки, помечайте записи color=blue|green на уровне логгера. Команды SIEM в зонах HK, JP, KR, SG и US могут накладывать ошибки без угадывания процесса.
FAQ
Заменяет ли это Kubernetes? Нет — аренда одного хоста проще; для K8s используйте pod blue-green.
Публичные TLS-webhooks? Сочетайте с руководством по TLS reverse proxy, чтобы периметр переключал upstream на здоровый loopback-порт.
Где арендовать изолированные шлюзы? Начните с цен, чтобы добавить мощность JP или US для шумных нагрузок.
Хаб OpenClaw, справка и роль регионов
Обновляйте хаб OpenClaw внутренними метками run, чтобы новые инженеры наследовали ту же матрицу портов. Когда чувствительные к задержке автоматизации ближе к токийским брокерам, чем к западному побережью США, закрепление аренды по региону снижает риск переключения за счёт предсказуемых RTT webhook.
Запуск OpenClaw на выделенном Apple Silicon
Узлы HK · JP · KR · SG · US для постоянно включённых шлюзов.