Gateway
Кілька Gateway-ів
Більшість конфігурацій потребують одного Gateway — один Gateway обслуговує кілька підключень до служб обміну повідомленнями та агентів. Запускайте окремі Gateway з ізольованими профілями/портами лише тоді, коли потрібна посилена ізоляція або резервування (наприклад, бот відновлення).
Швидкий запуск бота відновлення
Найпростіша конфігурація бота відновлення:
- Залиште основного бота в профілі за замовчуванням.
- Запустіть бота відновлення в
--profile rescueз окремим токеном бота Telegram. - Призначте боту відновлення інший базовий порт, наприклад
19789.
Завдяки цьому бот відновлення зможе виконувати діагностику або застосовувати зміни конфігурації, якщо основний бот не працює. Залишайте між базовими портами щонайменше 20 портів, щоб похідні порти браузера/CDP ніколи не конфліктували.
# Бот відновлення (окремий бот 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 власний іменований профіль і базовий порт:
# основний (профіль за замовчуванням)openclaw setupopenclaw gateway --port 18789 # додатковий Gatewayopenclaw --profile ops setupopenclaw --profile ops gateway --port 19789Іменовані профілі також можна використовувати з обох боків:
openclaw --profile main setupopenclaw --profile main gateway --port 18789 openclaw --profile ops setupopenclaw --profile ops gateway --port 19789Для служб діє та сама схема:
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(для кожного профілю та кожного екземпляра).
Приклад ручного налаштування змінних середовища
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Швидкі перевірки
openclaw gateway status --deepopenclaw --profile rescue gateway status --deepopenclaw --profile rescue gateway probeopenclaw statusopenclaw --profile rescue statusopenclaw --profile rescue browser statusgateway status --deepвиявляє застарілі служби launchd/systemd/schtasks від попередніх встановлень.- Текст попередження
gateway probe, наприкладmultiple reachable gateway identities detected, очікуваний лише тоді, коли навмисно запущено кілька ізольованих Gateway або коли OpenClaw не може підтвердити, що доступні цілі перевірки належать тому самому Gateway. Тунель SSH, URL-адреса проксі або налаштована віддалена URL-адреса до того самого Gateway — це один Gateway із кількома транспортами, навіть якщо порти транспортів різняться.