สิ่งที่ควรตรวจสอบ

Edge สำหรับ Private Cloud เวอร์ชัน 4.17.05

โดยทั่วไปในการตั้งค่าเวอร์ชันที่ใช้งานจริง จะต้องเปิดใช้กลไกการตรวจสอบภายใน Apigee Edge สำหรับการทำให้ Private Cloud ใช้งานได้ เทคนิคการตรวจสอบเหล่านี้จะแจ้งเตือนผู้ดูแลระบบเครือข่าย (หรือผู้ให้บริการ) เกี่ยวกับข้อผิดพลาดหรือความล้มเหลว ข้อผิดพลาดทั้งหมดที่สร้างขึ้นจะรายงานเป็นการแจ้งเตือนใน Apigee Edge ดูข้อมูลเพิ่มเติมเกี่ยวกับการแจ้งเตือนได้ที่แนวทางปฏิบัติแนะนำสำหรับการตรวจสอบ

เพื่อความสะดวก คอมโพเนนต์ Apigee จะแบ่งออกเป็น 2 หมวดหมู่เป็นหลัก ดังนี้

  • บริการเซิร์ฟเวอร์ Java สำหรับ Apigee โดยเฉพาะ – รวมถึงเซิร์ฟเวอร์การจัดการ, ผู้ประมวลผลข้อความ, เซิร์ฟเวอร์ Qpid และเซิร์ฟเวอร์ Postgres
  • บริการของบุคคลที่สาม – ซึ่งรวมถึงเราเตอร์ Nginx, Apache Cassandra, Apache ZooKeeper, OpenLDAP, ฐานข้อมูล PostgreSQL และ Qpid

ในการใช้งาน Apigee Edge ภายในองค์กร ตารางต่อไปนี้จะแสดงข้อมูลสั้นๆ เกี่ยวกับพารามิเตอร์ที่คุณตรวจสอบได้

ส่วนประกอบ

การตรวจสอบระบบ

สถิติระดับกระบวนการ

การตรวจสอบระดับ API

การตรวจสอบโฟลว์ข้อความ

เฉพาะคอมโพเนนต์

บริการ Java สำหรับ Apigee โดยเฉพาะ

เซิร์ฟเวอร์การจัดการ

?

?

?

Message Processor

?

?

?

?

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

?

?

?

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

?

?

?

บริการของบุคคลที่สาม

อาปาเช่ คาสซานดรา

?

?

Apache ZooKeeper

?

?

OpenLDAP

?

?

ฐานข้อมูล PostgreSQL

?

?

Qpid

?

?

เราเตอร์ Nginx

?

?

?

โดยทั่วไปหลังจากติดตั้ง Apigee Edge แล้ว คุณจะทำงานตรวจสอบต่อไปนี้เพื่อติดตามประสิทธิภาพของการติดตั้ง Apigee Edge สำหรับ Private Cloud ได้

การตรวจสอบประสิทธิภาพการทำงานของระบบ

คุณจำเป็นต้องวัดพารามิเตอร์ประสิทธิภาพการทำงานของระบบ เช่น การใช้งาน CPU, การใช้งานหน่วยความจำ และการเชื่อมต่อพอร์ตในระดับที่สูงกว่า คุณตรวจสอบพารามิเตอร์ต่อไปนี้เพื่อดูข้อมูลเบื้องต้นเกี่ยวกับประสิทธิภาพการทำงานของระบบได้

  • การใช้งาน CPU - ระบุสถิติพื้นฐาน (การรอ/ไม่มีการใช้งานของผู้ใช้/ระบบ/IO) เกี่ยวกับการใช้งาน CPU เช่น CPU ทั้งหมดที่ใช้โดยระบบ
  • หน่วยความจำที่ว่าง/ใช้แล้ว - ระบุการใช้งานหน่วยความจำระบบเป็นไบต์ เช่น หน่วยความจำทางกายภาพของระบบ
  • การใช้งานพื้นที่ในดิสก์ – ระบุข้อมูลระบบไฟล์ตามการใช้งานดิสก์ปัจจุบัน เช่น พื้นที่ในฮาร์ดดิสก์ที่ระบบใช้
  • โหลดเฉลี่ย – ระบุจำนวนกระบวนการที่รอเรียกใช้
  • สถิติเครือข่าย - แพ็กเก็ตเครือข่ายและ/หรือไบต์ที่ส่งและรับ รวมถึงข้อผิดพลาดในการส่งเกี่ยวกับคอมโพเนนต์ที่ระบุ

กระบวนการ/การตรวจสอบใบสมัคร

ในระดับกระบวนการ คุณจะดูข้อมูลสำคัญเกี่ยวกับกระบวนการทั้งหมดที่กำลังทำงานอยู่ได้ เช่น สถิติการใช้หน่วยความจำและ CPU ที่กระบวนการหรือแอปพลิเคชันใช้ สำหรับกระบวนการ เช่น qpidd, Postgres postmaster, java เป็นต้น คุณจะตรวจสอบต่อไปนี้ได้

  • การระบุกระบวนการ: ระบุกระบวนการของ Apigee โดยเฉพาะ ตัวอย่างเช่น คุณตรวจสอบการมีอยู่ของกระบวนการ Java ของเซิร์ฟเวอร์ Apigee ได้
  • สถิติชุดข้อความ: ดูรูปแบบชุดข้อความที่เกี่ยวข้องซึ่งกระบวนการใช้ เช่น คุณสามารถตรวจสอบจำนวนชุดข้อความสูงสุด จำนวนชุดข้อความสำหรับกระบวนการทั้งหมด
  • การใช้งานหน่วยความจำ: ดูการใช้งานหน่วยความจำสำหรับกระบวนการของ Apigee ทั้งหมด ตัวอย่างเช่น คุณสามารถตรวจสอบพารามิเตอร์อย่างการใช้งานหน่วยความจำฮีป การใช้หน่วยความจำที่ไม่ใช่ฮีปที่กระบวนการใช้

การตรวจสอบระดับ API

ในระดับ API คุณตรวจสอบได้ว่าเซิร์ฟเวอร์ทํางานอยู่หรือไม่สําหรับการเรียก API ที่ใช้บ่อยซึ่งผ่านพร็อกซีโดย Apigee ตัวอย่างเช่น คุณตรวจสอบ API ในเซิร์ฟเวอร์การจัดการ เราเตอร์ และผู้ประมวลผลข้อความได้โดยเรียกใช้คำสั่ง cURL ต่อไปนี้

curl http://<host>:<port>/v1/servers/self/up

โดย <host> คือที่อยู่ IP ของคอมโพเนนต์ Apigee Edge หมายเลข <port> เป็นหมายเลขเฉพาะสำหรับคอมโพเนนต์ Edge แต่ละรายการ เช่น

เซิร์ฟเวอร์การจัดการ: 8080

  • เราเตอร์: 8081
  • ตัวประมวลผลข้อความ: 8082
  • อื่นๆ

ดูหัวข้อแต่ละส่วนด้านล่างเพื่อดูข้อมูลเกี่ยวกับการเรียกใช้คำสั่งนี้สำหรับคอมโพเนนต์แต่ละรายการ

การเรียกนี้จะแสดงค่า "true" และ "false" เพื่อผลลัพธ์ที่ดีที่สุด คุณยังออกการเรียก API โดยตรงในแบ็กเอนด์ (ที่ซอฟต์แวร์ Apigee โต้ตอบอยู่) เพื่อให้ทราบอย่างรวดเร็วว่ามีข้อผิดพลาดอยู่ในสภาพแวดล้อมของซอฟต์แวร์ Apigee หรือในแบ็กเอนด์หรือไม่

หมายเหตุ: หากต้องการตรวจสอบพร็อกซี API คุณสามารถใช้สถานะ API ของ Apigee ได้เช่นกัน ประสิทธิภาพของ API จะเรียกใช้พร็อกซี API ตามกำหนดการ และแจ้งให้คุณทราบเมื่อล้มเหลวและจะแจ้งอย่างไร เมื่อเรียกใช้สำเร็จ ประสิทธิภาพของ API จะแสดงเวลาตอบกลับและแม้กระทั่งแจ้งให้คุณทราบเมื่อเวลาในการตอบสนองการตอบสนองสูง API Health สามารถเรียกใช้จากตําแหน่งต่างๆ ทั่วโลกเพื่อเปรียบเทียบลักษณะการทํางานของ API ระหว่างภูมิภาคได้

การตรวจสอบโฟลว์ข้อความ

คุณรวบรวมข้อมูลเกี่ยวกับรูปแบบ/สถิติจากเราเตอร์และผู้ประมวลผลข้อมูลข้อความได้ ซึ่งจะช่วยให้คุณสามารถตรวจสอบรายการต่อไปนี้ได้

  • จำนวนไคลเอ็นต์ที่ใช้งานอยู่
  • จำนวนคำตอบ (10X, 20X, 30X, 40X และ 50X)
  • การเชื่อมต่อล้มเหลว

ซึ่งจะช่วยให้คุณระบุหน้าแดชบอร์ดสำหรับการรับส่งข้อความ API ได้ โปรดดูข้อมูลเพิ่มเติมจากหัวข้อต่อไปนี้

การตรวจสอบประสิทธิภาพการทำงานของเราเตอร์ของผู้ประมวลผลข้อความ

เราเตอร์ใช้กลไกการตรวจสอบประสิทธิภาพการทำงานเพื่อระบุว่าตัวประมวลผลข้อความใดที่ทำงานตามที่คาดไว้ หากพบว่าเครื่องมือประมวลผลข้อความทำงานช้าลงหรือทำงานช้า เราเตอร์อาจทำให้เครื่องมือประมวลผลข้อความออกจากการหมุนเวียนโดยอัตโนมัติ ในกรณีนี้ เราเตอร์จะเขียนข้อความ "มาร์กดาวน์" ไปยังไฟล์บันทึกของเราเตอร์ที่ /opt/apigee/var/log/edge-router/logs/system.log

คุณสามารถตรวจสอบไฟล์บันทึกของเราเตอร์สำหรับข้อความเหล่านี้ได้ ตัวอย่างเช่น หากเราเตอร์นำ Message Processor ออกจากการหมุน เราเตอร์จะเขียนข้อความไปยังบันทึกในรูปแบบต่อไปนี้

2014-05-06 15:51:52,159 org: env: RPCClientClientProtocolChildGroup-RPC-0 INFO CLUSTER - ServerState.setState() : State of 2a8a0e0c-3619-416f-b037-8a42e7ad4577 is now DISCONNECTED. handle = <MP_IP> at 1399409512159

2014-04-17 12:54:48,512 org: env: nioEventLoopGroup-2-2 INFO HEARTBEAT - HBTracker.gotResponse() : No HeartBeat detected from /<MP_IP>:<PORT> Mark Down

โดยที่ /<MP_IP>:<PORT> คือที่อยู่ IP และหมายเลขพอร์ตของผู้ประมวลผลข้อความ

หากเราเตอร์ดำเนินการตรวจสอบประสิทธิภาพการทำงานในภายหลังและตัดสินว่าเครื่องมือประมวลผลข้อความทำงานได้อย่างถูกต้อง เราเตอร์จะใส่ตัวประมวลผลข้อความกลับสู่การหมุนเวียนโดยอัตโนมัติ เราเตอร์จะเขียนข้อความ "มาร์กอัป" ลงในบันทึกในแบบฟอร์มดังต่อไปนี้

2014-05-06 16:07:29,054 org: env: RPCClientClientProtocolChildGroup-RPC-0 INFO CLUSTER - ServerState.setState() : State of 2a8a0e0c-3619-416f-b037-8a42e7ad4577 is now CONNECTED. handle = <IP> at 1399410449054

2014-04-17 12:55:06,064 org: env: nioEventLoopGroup-4-1 INFO HEARTBEAT - HBTracker.updateHB() : HeartBeat detected from /<IP>:<PORT> Mark Up