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 # Gateway เพิ่มเติมopenclaw --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.port (หรือ OPENCLAW_GATEWAY_PORT / --port)
- พอร์ตบริการควบคุมเบราว์เซอร์ = พอร์ตฐาน + 2 (เฉพาะ local loopback)
- โฮสต์ 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 หนึ่งตัวที่มีการรับส่งข้อมูลหลายช่องทาง แม้ว่าพอร์ตการรับส่งข้อมูลจะแตกต่างกันก็ตาม