Nội dung cần theo dõi

Edge for Private Cloud phiên bản 4.16.05

Nhìn chung, trong quá trình thiết lập phiên bản chính thức, cần bật các cơ chế giám sát trong quá trình triển khai Apigee Edge để triển khai đám mây riêng tư. Những kỹ thuật giám sát này sẽ cảnh báo cho quản trị viên (hoặc nhà cung cấp dịch vụ) mạng về lỗi hoặc sự cố. Mọi lỗi đã tạo đều được báo cáo dưới dạng một cảnh báo trong Apigee Edge. Để biết thêm thông tin về cảnh báo, hãy xem Các phương pháp giám sát hay nhất.

Để dễ dàng, các thành phần Apigee được phân loại chủ yếu thành hai loại:

  • Dịch vụ máy chủ Java dành riêng cho API – Các dịch vụ này bao gồm Máy chủ quản lý, Bộ xử lý thông báo, Máy chủ Qpid và Máy chủ Postgres.
  • Các dịch vụ bên thứ ba – Các dịch vụ này bao gồm Bộ định tuyến Nginx, Apache Cassandra, Apache ZooKeeper, OpenLDAP, cơ sở dữ liệu PostgreSQL và Qpid.

Khi triển khai Apigee Edge tại cơ sở, bạn có thể xem nhanh các thông số mà bạn có thể theo dõi qua bảng sau đây:

Thành phần

Kiểm tra hệ thống

Số liệu thống kê ở cấp quy trình

Kiểm tra cấp độ API

Kiểm tra luồng thư

Dành riêng cho từng thành phần

Dịch vụ Java dành riêng cho Apigee

Máy chủ quản lý

?

?

?

Bộ xử lý thư

?

?

?

?

Máy chủ Qpid

?

?

?

Máy chủ Postgres

?

?

?

Dịch vụ bên thứ ba

Apache Cassandra

?

?

Người giữ vườn thú Apache

?

?

OpenLDAP

?

?

Cơ sở dữ liệu PostgreSQL

?

?

Qpid

?

?

Bộ định tuyến Nginx

?

?

?

Nhìn chung, sau khi cài đặt Apigee Edge, bạn có thể thực hiện các nhiệm vụ giám sát sau đây để theo dõi hiệu suất của quá trình cài đặt Apigee Edge để cài đặt đám mây riêng tư.

Kiểm tra tình trạng hệ thống

Bạn cần phải đo lường các thông số về tình trạng của hệ thống, chẳng hạn như mức sử dụng CPU, mức sử dụng bộ nhớ và khả năng kết nối cổng ở cấp cao hơn. Bạn có thể theo dõi các tham số sau để nắm được thông tin cơ bản về tình trạng của hệ thống.

  • Mức sử dụng CPU – Chỉ định số liệu thống kê cơ bản (Người dùng/Hệ thống/IO Chờ/Không hoạt động) về mức sử dụng CPU. Ví dụ: tổng CPU mà hệ thống sử dụng.
  • Bộ nhớ còn trống/đã sử dụng – Chỉ định mức sử dụng bộ nhớ của hệ thống dưới dạng byte. Ví dụ: bộ nhớ thực mà hệ thống sử dụng.
  • Disk Space Usage – Chỉ định thông tin hệ thống tệp dựa trên mức sử dụng ổ đĩa hiện tại. Ví dụ: dung lượng ổ đĩa cứng mà hệ thống sử dụng.
  • Tải trung bình – Chỉ định số lượng quy trình đang chờ chạy.
  • Số liệu thống kê về mạng – Các gói và/hoặc byte mạng được truyền và nhận, cùng với các lỗi truyền của một thành phần được chỉ định.

Quy trình/Kiểm tra đơn đăng ký

Ở cấp quy trình, bạn có thể xem thông tin quan trọng về tất cả các quy trình đang chạy. Ví dụ: dữ liệu này bao gồm số liệu thống kê về mức sử dụng bộ nhớ và CPU mà một quy trình hoặc ứng dụng sử dụng. Đối với các quy trình như qpidd, postgres postmaster, java, v.v, bạn có thể theo dõi những thông tin sau:

  • Xác định quy trình: Xác định một quy trình Apigee cụ thể. Ví dụ: bạn có thể theo dõi sự tồn tại của quy trình java máy chủ Apigee.
  • Số liệu thống kê về luồng: Xem các mẫu phân luồng cơ bản mà một quy trình sử dụng. Ví dụ: Bạn có thể theo dõi số lượng luồng cao điểm, số luồng của tất cả các quy trình.
  • Mức sử dụng bộ nhớ: Xem mức sử dụng bộ nhớ của tất cả các quy trình Apigee. Ví dụ: bạn có thể theo dõi các tham số như mức sử dụng bộ nhớ vùng nhớ khối xếp, mức sử dụng bộ nhớ không phải vùng nhớ khối xếp mà một quy trình sử dụng.

Các bước kiểm tra ở cấp API

Ở cấp độ API, bạn có thể theo dõi xem máy chủ có đang hoạt động và đang hoạt động đối với các lệnh gọi API thường dùng được Apigee xử lý qua proxy hay không. Ví dụ: bạn có thể thực hiện kiểm tra API trên Máy chủ quản lý, Bộ định tuyến và Bộ xử lý thư bằng cách gọi lệnh cURL sau:

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

Trong đó <host> là địa chỉ IP của thành phần Apigee Edge. Số <port> là dành riêng cho từng thành phần Edge. Ví dụ:

Máy chủ quản lý: 8080

  • Bộ định tuyến: 8081
  • Bộ xử lý thư: 8082
  • v.v.

Hãy xem các phần riêng lẻ bên dưới để biết thông tin về cách chạy lệnh này cho từng thành phần

Lệnh gọi này trả về "true" và "false". Để có kết quả tốt nhất, bạn cũng có thể trực tiếp thực hiện lệnh gọi API trên phần phụ trợ (khi có tương tác với phần mềm Apigee) để nhanh chóng xác định xem có lỗi trong môi trường phần mềm Apigee hay trên phần phụ trợ hay không.

Lưu ý: Để giám sát proxy API, bạn cũng có thể dùng API Tình trạng của Apigee. Tình trạng API thực hiện các lệnh gọi theo lịch đến các proxy API của bạn, đồng thời thông báo cho bạn khi các proxy đó không thành công và cách thực hiện. Khi các lệnh gọi thành công, API Health sẽ cho bạn thấy thời gian phản hồi và thậm chí có thể thông báo cho bạn khi độ trễ phản hồi cao. API y tế có thể thực hiện lệnh gọi từ nhiều vị trí trên khắp thế giới để so sánh hành vi của API giữa các khu vực.

Kiểm tra luồng tin nhắn

Bạn có thể thu thập dữ liệu về Bộ định tuyến và Bộ xử lý thông báo về mẫu/số liệu thống kê luồng thông báo. Nhờ đó, bạn có thể giám sát những nội dung sau:

  • Số lượng khách hàng đang hoạt động
  • Số lượng phản hồi (10X, 20X, 30X, 40X và 50X)
  • Lỗi kết nối

Điều này giúp bạn cung cấp trang tổng quan cho quy trình thông báo API.

Kiểm tra tình trạng bộ định tuyến của Bộ xử lý thư

Bộ định tuyến triển khai cơ chế kiểm tra tình trạng để xác định Bộ xử lý thông báo nào đang hoạt động như mong đợi. Nếu Bộ xử lý thông báo bị phát hiện là bị chậm hoặc bị chậm, Bộ định tuyến có thể tự động đưa Bộ xử lý thông báo ra khỏi vòng xoay. Nếu điều đó xảy ra, Bộ định tuyến sẽ ghi thông báo "Mark Down" (Đánh dấu xuống) vào tệp nhật ký của Bộ định tuyến tại /<inst root>/apigee4/var/log/apigee/router/logs/system.log.

Bạn có thể theo dõi các thông báo này trong tệp nhật ký Bộ định tuyến. Ví dụ: nếu Bộ định tuyến đưa Bộ xử lý thông báo ra khỏi vòng xoay, thì Bộ định tuyến sẽ ghi thông báo vào nhật ký dưới dạng:

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

trong đó /<MP_IP>:<PORT> là địa chỉ IP và số cổng của Bộ xử lý thông báo.

Nếu sau đó Bộ định tuyến thực hiện kiểm tra tình trạng và xác định rằng Bộ xử lý thông báo đang hoạt động đúng cách, thì Bộ định tuyến đó sẽ tự động đặt Bộ xử lý thông báo trở lại chế độ xoay. Bộ định tuyến cũng ghi thông báo "Mark Up" (Đánh dấu) vào nhật ký theo biểu mẫu:

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

Để định cấu hình Bộ định tuyến nhằm kiểm tra tình trạng, hãy đặt thuộc tính sau thành true trong /<inst root>/apigee4/conf/apigee/router/router.properties:

Client.pool.heartBeat.use.http=true

Sau đó, khởi động lại Bộ định tuyến:

> /<inst-root>/apigee4/bin/apigee-service router restart