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 # Gateway เพิ่มเติมopenclaw --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.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 (แยกตามโปรไฟล์และอินสแตนซ์)

ตัวอย่างตัวแปรสภาพแวดล้อมแบบกำหนดเอง

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