ปัญหาเกี่ยวกับข้อมูล Zookeeper

คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่ เอกสารประกอบของ Apigee X
info

ลักษณะปัญหา

ปัญหาที่เกี่ยวข้องกับข้อมูล ซึ่งมักเรียกว่าปัญหาการเชื่อมต่อ อาจแสดงอาการอย่างใดอย่างหนึ่งต่อไปนี้

  • ความล้มเหลวระหว่างการเริ่มต้นระบบของเซิร์ฟเวอร์การจัดการ
  • การทำให้ใช้งานได้ล้มเหลว
  • ข้อผิดพลาดของ Datastore ใน UI
  • ปัญหาการเชื่อมต่อระหว่างศูนย์ข้อมูลของ Message Processor และเซิร์ฟเวอร์การจัดการ
  • Analytics แสดงว่าไม่มีข้อมูล

ปัญหาเหล่านี้ไม่เกี่ยวข้องกับโครงสร้างพื้นฐานของ ZooKeeper แต่เกี่ยวข้องกับข้อมูลที่ไม่ถูกต้องซึ่ง อยู่ในโครงสร้างแบบต้นไม้ของ ZooKeeper

สาเหตุที่เป็นไปได้

สาเหตุทั่วไปของปัญหานี้ ได้แก่

  1. โหนดที่เชื่อมต่อกับภูมิภาคหรือชื่อพ็อดที่ไม่ถูกต้องระหว่างการติดตั้งเนื่องจากข้อผิดพลาดใน ไฟล์การติดตั้งแบบไม่ต้องโต้ตอบ
  2. การติดตั้งคอมโพเนนต์ล้มเหลวจะทำให้เกิดการลงทะเบียนซ้ำเมื่อคุณติดตั้ง คอมโพเนนต์ซ้ำหลายครั้ง ในกรณีนี้ คุณต้องล้างข้อมูลเพื่อนำการลงทะเบียนที่มี UUID ไม่ถูกต้องออก

การวินิจฉัย

หากต้องการวินิจฉัย ให้รวบรวมข้อมูลต่อไปนี้

  1. แผนภาพโทโพโลยีที่มีชื่อโฮสต์และที่อยู่ IP ของแต่ละโหนด รวมถึงคอมโพเนนต์ Apigee ที่มีอยู่ในโหนด การแมปต่อไปนี้โดยใช้โปรไฟล์การติดตั้ง Apigee จะ มีประโยชน์มากที่สุด
    DC-1
    DS: ip1 hostname
    DS: ip2 hostname
    DS: ip3 hostname
    MS: ip4 hostname
    RMP: ip5 hostname
    RMP: ip6 hostname
    SAX: ip7 hostname
    
    DC-2
    DS: ip8 hostname
    DS: ip9 hostname
    DS: ip10 hostname
    MS: ip11 hostname
    RMP: ip12 hostname
    RMP: ip13 hostname
    SAX: ip14 hostname
  2. สร้างเอาต์พุตโครงสร้างแบบต้นไม้ของ ZooKeeper เพื่อตรวจสอบการเชื่อมต่อ
    /opt/apigee/apigee-zookeeper/contrib/zk-tree.sh > zk-tree-output.txt
  3. เรียกใช้การเรียก API การจัดการต่อไปนี้ เพื่อรับรายการ UUID ของเซิร์ฟเวอร์ในศูนย์ข้อมูลแต่ละแห่ง เพื่อให้ตรวจสอบข้อมูลในโครงสร้างแบบต้นไม้ของ ZooKeeper ได้ง่าย

    เซิร์ฟเวอร์เกตเวย์

    curl -u sysadmin@email.com "http://management-server-host:8080/v1/servers?pod=gateway&region=region-name"

    เซิร์ฟเวอร์กลาง

    curl -u sysadmin@email.com "http://management-server-host:8080/v1/servers?pod=central&region=region-name"

    เซิร์ฟเวอร์ Analytics

    curl -u sysadmin@email.com "http://management-server-host:8080/v1/servers?pod=analytics&region=region-name"
  4. ตรวจสอบ UUID ในแต่ละคอมโพเนนต์และตรวจสอบว่าตรงกับสิ่งที่คุณเห็นในโครงสร้างแบบต้นไม้ของ ZooKeeper

    เราเตอร์

    curl 0:8081/v1/servers/self/uuid

    Message Processor

    curl 0:8082/v1/servers/self/uuid

    Qpid Agent

    curl 0:8083/v1/servers/self/uuid

    Postgres Agent

    curl 0:8084/v1/servers/self/uuid
  5. ใช้ข้อมูล UUID เพื่อค้นหาเอาต์พุตโครงสร้างแบบต้นไม้ของ ZooKeeper ที่สร้างขึ้นในขั้นตอนที่ 2 เพื่อตรวจสอบการ เชื่อมต่อคอมโพเนนต์และนำการลงทะเบียนที่ซ้ำกันสำหรับคอมโพเนนต์ที่มี UUID ไม่ถูกต้องออก
  6. ใช้การเรียก API การจัดการที่ระบุไว้ ที่นี่ เพื่อแก้ไขการลงทะเบียน Datastore คอมโพเนนต์ต่างๆ เช่น เราเตอร์, Message Processor, Postgres และ Qpid จะลงทะเบียนตัวเองกับ ZooKeeper ในระหว่างการเริ่มต้นระบบ

ความละเอียด

ปัญหาที่เกี่ยวข้องกับข้อมูลของ ZooKeeper ต้องได้รับการแก้ไขเป็นกรณีๆ ไป ข้อมูลใน ZooKeeper จะอิงตามโทโพโลยีของ Apigee Edge และแตกต่างกันไปตามกรณีการใช้งานแต่ละกรณี หากพบอาการของปัญหาอย่างใดอย่างหนึ่ง ให้รวบรวมข้อมูลตามที่อธิบายไว้ในส่วนก่อนหน้าและติดต่อ ทีมสนับสนุนของ Apigee Edge