Gateway

Кілька Gateway-ів

Більшість конфігурацій потребують одного Gateway — один Gateway обслуговує кілька підключень до служб обміну повідомленнями та агентів. Запускайте окремі Gateway з ізольованими профілями/портами лише тоді, коли потрібна посилена ізоляція або резервування (наприклад, бот відновлення).

Швидкий запуск бота відновлення

Найпростіша конфігурація бота відновлення:

  • Залиште основного бота в профілі за замовчуванням.
  • Запустіть бота відновлення в --profile rescue з окремим токеном бота Telegram.
  • Призначте боту відновлення інший базовий порт, наприклад 19789.

Завдяки цьому бот відновлення зможе виконувати діагностику або застосовувати зміни конфігурації, якщо основний бот не працює. Залишайте між базовими портами щонайменше 20 портів, щоб похідні порти браузера/CDP ніколи не конфліктували.

bash
# Бот відновлення (окремий бот Telegram, окремий профіль, порт 19789)openclaw --profile rescue onboardopenclaw --profile rescue gateway install --port 19789

Якщо основний бот уже працює, зазвичай цього достатньо. Якщо під час початкового налаштування службу відновлення вже встановлено, пропустіть останню команду gateway install.

Під час openclaw --profile rescue onboard:

  • Використовуйте окремий токен бота Telegram, призначений для облікового запису відновлення (такий обліковий запис легко зробити доступним лише операторам, він не залежить від встановлення каналу/застосунку основного бота та забезпечує простий шлях відновлення через особисті повідомлення).
  • Збережіть назву профілю rescue.
  • Використовуйте базовий порт, щонайменше на 20 більший за порт основного бота.
  • Прийміть стандартний робочий простір відновлення, якщо ви ще не керуєте власним.

Що змінює --profile rescue onboard

--profile rescue onboard запускає звичайний процес початкового налаштування, але записує все в окремий профіль, тому бот відновлення отримує власні:

  • Файл профілю/конфігурації
  • Каталог стану
  • Робочий простір (за замовчуванням: ~/.openclaw/workspace-rescue)
  • Назву керованої служби
  • Базовий порт (і похідні порти)
  • Токен бота Telegram

Решта запитів не відрізняється від звичайного початкового налаштування.

Загальне налаштування кількох Gateway

Та сама схема ізоляції працює для будь-якої пари або групи Gateway на одному хості — надайте кожному додатковому Gateway власний іменований профіль і базовий порт:

bash
# основний (профіль за замовчуванням)openclaw setupopenclaw gateway --port 18789 # додатковий Gatewayopenclaw --profile ops setupopenclaw --profile ops gateway --port 19789

Іменовані профілі також можна використовувати з обох боків:

bash
openclaw --profile main setupopenclaw --profile main gateway --port 18789 openclaw --profile ops setupopenclaw --profile ops gateway --port 19789

Для служб діє та сама схема:

bash
openclaw gateway installopenclaw --profile ops gateway install --port 19789

Використовуйте швидкий запуск бота відновлення для резервного операторського каналу, а загальну схему профілів — для кількох довготривалих Gateway у різних каналах, орендарях, робочих просторах або операційних ролях.

Контрольний список ізоляції

Забезпечте унікальність цих параметрів для кожного екземпляра Gateway:

Параметр Призначення
OPENCLAW_CONFIG_PATH Файл конфігурації окремого екземпляра
OPENCLAW_STATE_DIR Сеанси, облікові дані й кеші окремого екземпляра
agents.defaults.workspace Корінь робочого простору окремого екземпляра
gateway.port (або --port) Унікальний для кожного екземпляра
Похідні порти браузера/CDP Див. нижче

Спільне використання будь-якого з них спричиняє конфлікти конфігурації, стану або портів. Під час запуску Gateway забезпечується унікальне володіння каталогом стану, навіть якщо OPENCLAW_ALLOW_MULTI_GATEWAY=1 пропускає перевірку єдиного екземпляра для кожної конфігурації.

Відповідність портів (похідні)

Базовий порт = gateway.port (або OPENCLAW_GATEWAY_PORT / --port).

  • Порт служби керування браузером = базовий + 2 (лише зворотний інтерфейс).
  • Хост Canvas обслуговується безпосередньо HTTP-сервером Gateway (той самий порт, що й gateway.port).
  • Порти CDP профілю браузера автоматично виділяються в діапазоні від browser control port + 9 до + 108.

Якщо перевизначити будь-яке з цих значень у конфігурації або змінній середовища, потрібно забезпечити його унікальність для кожного екземпляра.

Примітки щодо браузера/CDP (поширена пастка)

  • Не закріплюйте browser.cdpUrl за однаковим значенням у кількох екземплярах.
  • Кожному екземпляру потрібні власний порт керування браузером і діапазон CDP (похідні від його порту Gateway).
  • Щоб явно вказати порти CDP, задайте browser.profiles.<name>.cdpPort окремо для кожного екземпляра.
  • Для віддаленого Chrome використовуйте browser.profiles.<name>.cdpUrl (для кожного профілю та кожного екземпляра).

Приклад ручного налаштування змінних середовища

bash
OPENCLAW_CONFIG_PATH=~/.openclaw/main.json \OPENCLAW_STATE_DIR=~/.openclaw \openclaw gateway --port 18789 OPENCLAW_CONFIG_PATH=~/.openclaw/rescue.json \OPENCLAW_STATE_DIR=~/.openclaw-rescue \openclaw gateway --port 19789

Швидкі перевірки

bash
openclaw gateway status --deepopenclaw --profile rescue gateway status --deepopenclaw --profile rescue gateway probeopenclaw statusopenclaw --profile rescue statusopenclaw --profile rescue browser status
  • gateway status --deep виявляє застарілі служби launchd/systemd/schtasks від попередніх встановлень.
  • Текст попередження gateway probe, наприклад multiple reachable gateway identities detected, очікуваний лише тоді, коли навмисно запущено кілька ізольованих Gateway або коли OpenClaw не може підтвердити, що доступні цілі перевірки належать тому самому Gateway. Тунель SSH, URL-адреса проксі або налаштована віддалена URL-адреса до того самого Gateway — це один Gateway із кількома транспортами, навіть якщо порти транспортів різняться.

Пов’язані матеріали

Was this useful?
On this page

On this page