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

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

ลักษณะปัญหา

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

  • การทำงานล้มเหลวระหว่างเริ่มต้นเซิร์ฟเวอร์การจัดการ
  • การทำให้ใช้งานได้ล้มเหลว
  • ข้อผิดพลาดของพื้นที่เก็บข้อมูลใน UI
  • ปัญหาการเชื่อมต่อข้ามศูนย์ข้อมูลระหว่างเครื่องมือประมวลผลข้อความและเซิร์ฟเวอร์การจัดการ
  • 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
    

    เครื่องมือประมวลผลข้อความ

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

    ตัวแทน Qpid

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

    ตัวแทน Postgres

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

ความละเอียด

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