Edge for Private Cloud v. 4.16.05
Tài liệu này mô tả các kỹ thuật giám sát của các thành phần được hỗ trợ tại cơ sở hạ tầng riêng việc triển khai Apigee Edge.
Bật tính năng xác thực JMX và đặt mật khẩu JMX
Quy trình giám sát đối với Management Server, Message Processor, Qpid và Postgres sử dụng JMX. JMX được bật theo mặc định và truy cập JMX từ xa không yêu cầu mật khẩu.
Để bật tính năng xác thực JMX, mỗi thành phần sẽ có một thao tác change_jmx_auth mà bạn sử dụng để bật/tắt tính năng xác thực và đặt thông tin xác thực JMX.
Để bật tính năng xác thực JMX, hãy sử dụng lệnh sau:
> /<inst_root>/apigee/apigee-service/bin/apigee-service comp change_jmx_auth optionsOrConfigFile
trong đó:
- comp có thể là edge-management-server (máy chủ quản lý cạnh), Edge-message-processor, Edge-router, Edge-qpid-server hoặc edge-postgres-server.
- Các tùy chọn bao gồm:
- -u: tên người dùng
- -p: mật khẩu
- -e: y (bật) hoặc n (có thể truy cập)
- Tệp cấu hình bao gồm:
- JMX_USERNAME=tên người dùng
- JMX_ENABLED=y/n
- JMX_PASSWORD=password (nếu không được đặt hoặc không được truyền bằng -p, bạn sẽ được nhắc)
Ví dụ: để sử dụng các tuỳ chọn trên dòng lệnh:
> /<inst_root>/apigee/apigee-service/bin/apigee-service edge-management-server change_jmx_auth -u foo -p bar -e y
Nếu bạn có tệp cấu hình:
> /<inst_root>/apigee/apigee-service/bin/apigee-service edge-management-server change_jmx_auth -f configFile
Nếu bạn đang chạy Edge trên nhiều nút, hãy chạy lệnh này trên tất cả các nút, chỉ định cùng một nút tên người dùng và mật khẩu.
Để tắt tính năng xác thực JMX sau này, hãy sử dụng lệnh:
> /<inst_root>/apigee/apigee-service/bin/apigee-service edge-management-server change_jmx_auth -e n
Máy chủ quản lý
Sử dụng JConsole để giám sát việc kiểm tra tình trạng hệ thống và xử lý thông tin
Sử dụng JConsole (một công cụ tuân thủ JMX) để quản lý và giám sát quy trình kiểm tra tình trạng cũng như số liệu thống kê về quy trình. Khi sử dụng JConsole, bạn có thể sử dụng số liệu thống kê JMX do Máy chủ quản lý (hoặc bất kỳ máy chủ nào) hiển thị và hiển thị các số liệu đó trong giao diện đồ hoạ. Để biết thêm thông tin về việc sử dụng JConsole, hãy xem http://docs.oracle.com/javase/8/docs/technotes/guides/management/jconsole.html.
Sử dụng JConsole và URL dịch vụ sau để theo dõi các thuộc tính JMX (MBeans) được cung cấp thông qua JMX.
service:jmx:rmi:///jndi/rmi://<ip address>:<port>/platform
trong đó <ip address> là địa chỉ IP của Máy chủ quản lý (hoặc máy chủ tương ứng). Theo mặc định, cổng là 1099 cho Máy chủ quản lý.
Bảng sau đây trình bày số liệu thống kê chung về JMX:
JMX MBeans |
Thuộc tính JMX |
---|---|
Bộ nhớ |
HeapMemoryUsage |
NonHeapMemoryUsage |
|
Cách sử dụng |
|
Lưu ý: Các giá trị thuộc tính sẽ hiển thị trong 4 giá trị: cam kết, init, max và used. |
Sử dụng API ứng dụng Edge séc
Bạn có thể thực hiện kiểm tra API trên Máy chủ quản lý (hoặc bất kỳ máy chủ nào) bằng cách gọi lệnh sau Lệnh CURL:
curl http://<host>:8080/v1/servers/self/up
Trong đó, <host> là địa chỉ IP của Máy chủ quản lý.
Lệnh gọi này trả về giá trị "true" và "false". Nếu là true, tức là nút đã bật và dịch vụ Java đang chạy.
Nếu bạn không nhận được phản hồi HTTP 200 (OK), Edge sẽ không thể phản hồi các yêu cầu của cổng 8080.
Khắc phục sự cố
- Đăng nhập vào máy chủ và chạy lệnh sau:
/<inst_root>/apigee/apigee-service/bin/apigee-service trạng thái máy chủ quản lý cạnh - Nếu dịch vụ không chạy, hãy khởi động dịch vụ:
/<inst_root>/apigee/apigee-service/bin/apigee-service bắt đầu máy chủ quản lý cạnh
Sử dụng Edge Ứng dụng – Kiểm tra người dùng, tổ chức và triển khai
Máy chủ quản lý đóng vai trò quan trọng trong việc giữ tất cả các lô đất khác với nhau trong mỗi cơ sở hạ tầng cài đặt. Bạn có thể kiểm tra trạng thái của người dùng, tổ chức và triển khai trên máy chủ quản lý bằng cách ra các lệnh sau:
curl -u userEmail:password http://localhost:8080/v1/users curl -u userEmail:password http://localhost:8080/v1/organizations curl -u userEmail:password http://localhost:8080/v1/organizations/orgname/deployments
Hệ thống sẽ hiển thị "đã triển khai" trạng thái của tất cả cuộc gọi. Nếu những thao tác này không thành công, hãy thực hiện sau:
- Kiểm tra nhật ký Máy chủ quản lý (tại <inst_root>/apigee/var/log/edge-management-server) phát hiện bất kỳ lỗi nào.
- Thực hiện lệnh gọi với Management Server (Máy chủ quản lý) để kiểm tra xem máy chủ đó có đang hoạt động hay không đúng cách.
- Hãy xoá máy chủ khỏi ELB rồi khởi động lại Máy chủ quản lý.
/<inst_root>/apigee/apigee-service/bin/apigee-service khởi động lại máy chủ quản lý cạnh
Bộ định tuyến
Bạn có thể thực hiện kiểm tra API trên Bộ định tuyến (hoặc bất kỳ máy chủ nào) bằng cách gọi CURL sau :
curl http://<host>:8081/v1/servers/self/up
Trong đó, máy chủ lưu trữ là địa chỉ IP của Bộ định tuyến.
Lệnh gọi này trả về giá trị "true" và "false". Nếu đúng, điều đó có nghĩa là nút đang hoạt động và dịch vụ Java đang đang chạy.
Nếu bạn không nhận được phản hồi HTTP 200 (OK), thì Edge không thể phản hồi cổng 8081 yêu cầu.
Khắc phục sự cố
- Đăng nhập vào máy chủ và chạy các lệnh sau:
/<inst_root>/apigee/apigee-service/bin/apigee-service trạng thái của bộ định tuyến biên - Nếu dịch vụ không chạy, hãy khởi động dịch vụ
/<inst_root>/apigee/apigee-service/bin/apigee-service khởi động bộ định tuyến cạnh - Nếu dịch vụ đang chạy, hãy kiểm tra xem dịch vụ có hoạt động không. Bạn theo dõi trạng thái cụm bằng cách kiểm tra memberCount so với reachableCount và cảnh báo tất cả các thực thể có "memberCount != reachableCount"
curl -v -u <userEmail>:<password> http://localhost:port/v1/cluster
Trong đó, cổng – 8081 cho Trình định tuyến và 8082 cho Trình xử lý thông báo. Kết quả ở trên Lệnh CURL được minh hoạ bên dưới:
{
"memberCount" : 12,
"nhóm" : "rea1gw001",
"reachableCount" : 12,
"khu vực" : "us-east-1",
"loại" : [ "máy chủ quản lý" ]
* Kết nối số 0 với máy chủ ms05apigee được giữ nguyên
* Đóng kết nối #0
} - Nếu mã không hoạt động, hãy chạy lệnh sau để kiểm tra lỗi hoặc tìm lỗi
thành viên vi phạm.
cuộn người http://localhost:port/v1/cluster/members
Trong đó cổng – 8081 cho Bộ định tuyến và 8082 cho Bộ xử lý tin nhắn. Kết quả ở trên Lệnh CURL sẽ có dạng như sau:
{
"lastChange" : 0,
"độ trễ" : 0,
"tiểu bang" : "ĐÃ KẾT NỐI",
"uuid" : "9c4c8bde-0015-4dc5-82d2-59fb326c4074"
}, {
"địa chỉ" : "/192.168.5.209:4526",
"clusterType" : "bộ định tuyến,trình xử lý tin nhắn",
"lastChange" : 1350658037228,
"độ trễ" : 3,
"nhóm" : "rea1gw001",
"khu vực" : "us-east-1",
"serverType" : "trình xử lý tin nhắn",
"tiểu bang" : "ĐÃ KẾT NỐI",
"uuid" : "f1c663a1-2bb8-469f-b5fd-69a5c5aa91c5"
}, {
"địa chỉ" : "/192.168.5.29:4526",
"clusterType" : "bộ định tuyến,trình xử lý tin nhắn",
"lastChange" : 1350623005057,
"độ trễ" : 1,
"nhóm" : "rea1gw001",
"khu vực" : "us-east-1",
"serverType" : "trình xử lý tin nhắn",
"tiểu bang" : " ĐÃ NGẮT KẾT NỐI",
"uuid" : "4cfe932b-f644-4581-b1ae-df338af9c7ce"
}, {
"địa chỉ" : "/192.168.4.182:4526",
"clusterType" : "bộ định tuyến,trình xử lý tin nhắn",
"lastChange" : 1350657730535,
"độ trễ" : 1,
"nhóm" : "rea1gw001",
"khu vực" : "us-east-1",
"serverType" : "trình xử lý tin nhắn",
"tiểu bang" : "ĐÃ KẾT NỐI",
"uuid" : "cba063d5-b8a4-409f-9e0b-f5d403e02091"
} - Lưu ý rằng địa chỉ IP 192.168.5.29 đã bị ngắt kết nối. Khởi động lại máy chủ
/<inst_root>/apigee/apigee-service/bin/apigee-service khởi động lại bộ định tuyến cạnh
Lưu ý: Nếu Bộ định tuyến có trạng thái đã ngắt kết nối, hãy xoá bộ định tuyến đó khỏi ELB và sau đó khởi động lại. - Sau khi khởi động lại, hãy kiểm tra để đảm bảo thiết bị đang hoạt động
cuộn tay -v http://localhost:port/v1/cluster
Trong đó cổng là 8081 cho Bộ định tuyến và 8082 cho Bộ xử lý tin nhắn.
Trình xử lý tin nhắn
Sử dụng JConsole để giám sát việc kiểm tra tình trạng hệ thống và xử lý thông tin
Làm theo tương tự như được mô tả ở trên đối với Máy chủ quản lý.
Lưu ý: Đảm bảo rằng bạn sử dụng cổng – 1101.
Sử dụng API ứng dụng Edge séc
Làm tương tự như mô tả ở trên đối với Bộ định tuyến.
Lưu ý: Hãy đảm bảo rằng bạn sử dụng cổng – 8082.
Sử dụng các bước kiểm tra luồng tin nhắn JMX
Làm theo tương tự như được mô tả ở trên đối với Máy chủ quản lý.
Lưu ý: Đảm bảo rằng bạn sử dụng cổng – 1101.
Máy chủ Qpid
Sử dụng JConsole để giám sát kiểm tra tình trạng hệ thống và xử lý thông tin
Làm theo tương tự như được mô tả ở trên đối với Máy chủ quản lý.
Lưu ý: Đảm bảo rằng bạn sử dụng cổng – 1102.
Sử dụng các bước kiểm tra bằng Edge Application API
Làm theo các bước tương tự như mô tả ở trên cho Máy chủ quản lý.
Lưu ý: Đảm bảo rằng bạn sử dụng cổng – 8083. Lệnh CURL sau đây là cũng được hỗ trợ cho Máy chủ Qpid:
curl http://<qpid_IP>:8083/v1/servers/self
Máy chủ Postgres
Sử dụng JConsole để giám sát việc kiểm tra tình trạng hệ thống và xử lý thông tin
Làm theo tương tự như được mô tả ở trên đối với Máy chủ quản lý.
Lưu ý: Đảm bảo rằng bạn sử dụng cổng – 1103.
Sử dụng tính năng kiểm tra API ứng dụng Edge
Làm theo tương tự như được mô tả ở trên đối với Máy chủ quản lý.
Lưu ý: Đảm bảo rằng bạn sử dụng cổng – 8084. Lệnh CURL sau đây là cũng được hỗ trợ cho Máy chủ Postgres:
curl http://<postgres_IP>:8084/v1/servers/self
Sử dụng Edge Kiểm tra môi trường và tổ chức ứng dụng
Bạn có thể kiểm tra tên tổ chức và môi trường đã được tích hợp trên máy chủ Postgres bằng cách tạo các lệnh CURL sau:
curl http:// <postgres_IP>:8084/v1/servers/self/organizations
Lưu ý: Đảm bảo rằng bạn sử dụng cổng – 8084.
Hệ thống phải hiển thị tên tổ chức và môi trường.
Sử dụng axstatus của Ứng dụng Edge dấu kiểm
Bạn có thể xác minh trạng thái của máy chủ phân tích bằng cách phát hành CURL sau .
curl -u userEmail:password http://<host>:<port>/v1/organizations/<orgname>/environments/<envname>/provisioning/axstatus
Hệ thống sẽ hiển thị trạng thái THÀNH CÔNG cho tất cả máy chủ phân tích. Kết quả của CURL ở trên được hiển thị dưới đây:
{ "environments" : [ { "components" : [ { "message" : "success at Thu Feb 28 10:27:38 CET 2013", "name" : "pg", "status" : "SUCCESS", "uuid" : "[c678d16c-7990-4a5a-ae19-a99f925fcb93]" }, { "message" : "success at Thu Feb 28 10:29:03 CET 2013", "name" : "qs", "status" : "SUCCESS", "uuid" : "[ee9f0db7-a9d3-4d21-96c5-1a15b0bf0adf]" } ], "message" : "", "name" : "prod" } ], "organization" : "acme", "status" : "SUCCESS" }
Cơ sở dữ liệu PostgreSQL
Sử dụng thuộc tính check_postgres.pl tập lệnh
Để giám sát cơ sở dữ liệu PostgreSQL, bạn có thể sử dụng tập lệnh giám sát tiêu chuẩn check_postgres.pl, có tại http://bucardo.org/wiki/Check_postgres.
Lưu ý: Bạn cần cài đặt tập lệnh check_postgres.pl trong mỗi Postgres nút.
Trước khi bạn chạy tập lệnh:
- Đảm bảo rằng bạn đã cài đặt perl-Time-HiRes.x86_64, một mô-đun Perl
triển khai chuông báo có độ phân giải cao, chế độ ngủ, giờ trong ngày và đồng hồ hẹn giờ theo thời gian. Ví dụ: bạn có thể cài đặt gói này bằng lệnh sau:
yum install perl-Time-HiRes.x86_64
Đầu ra mặc định của các lệnh gọi API bằng cách sử dụng tập lệnh, check_postgres.pl tương thích với Nagios. Sau bạn cài đặt tập lệnh, hãy thực hiện các bước kiểm tra sau:
- Kích thước cơ sở dữ liệu – kiểm tra kích thước cơ sở dữ liệu:
check_postgres.pl -H 10.176.218.202 -db apigee -u apigee -dbpass postgres -include=apigee -action base_size --warning='800 GB' -- Vitals='900 GB' - Kết nối đến với cơ sở dữ liệu – kiểm tra số lượng kết nối đến để
cơ sở dữ liệu và so sánh với số lượng kết nối tối đa được phép:
check_postgres.pl -H 10.176.218.202 -db apigee -u apigee -dbpass postgres -action phần phụ trợ - Tính khả dụng và hiệu suất của cơ sở dữ liệu – kiểm tra xem cơ sở dữ liệu có đang chạy hay không và
hiện có:
check_postgres.pl -H 10.176.218.202 -db apigee -u apigee -dbpass postgres -action connection - Dung lượng ổ đĩa – kiểm tra dung lượng ổ đĩa:
check_postgres.pl -H 10.176.218.202 -db apigee -u apigee -dbpass postgres -action dis_space --warning='80%' -- Vitals='90%' - Tổ chức/môi trường đã tham gia – kiểm tra số lượng tổ chức và
môi trường được tích hợp trong nút Postgres:
check_postgres.pl -H 10.176.218.202 -db apigee -u apigee -dbpass postgres -action=custom_query --query="select count(*) từ pg_tables trong đó schemaname='analytics' và tên bảng như '%fact'" --cảnh báo='80' --important='90' --valtype=integer
Lưu ý: Vui lòng tham khảo http://bucardo.org/check_postgres/check_postgres.pl.html khi bạn cần được trợ giúp về việc sử dụng các lệnh trên.
Kiểm tra cơ sở dữ liệu
Bạn có thể xác minh rằng các bảng thích hợp đã được tạo trong cơ sở dữ liệu PostgreSQL. Đăng nhập vào PostgreSQL cơ sở dữ liệu sử dụng:
psql -h /opt/apigee/var/run/apigee-postgresql/ -U apigee -d apigee
rồi chạy:
\d analytics."<org>.<env>.fact"
Kiểm tra trạng thái của quy trình postgres
Bạn có thể thực hiện kiểm tra API trên máy postgres bằng cách gọi lệnh CURL sau:
http://<postgres_IP>:8084/v1/servers/self/health/
Lưu ý: Hãy đảm bảo rằng bạn sử dụng cổng 8084.
Hàm này trả về trạng thái "ACTIVE" (ĐANG HOẠT ĐỘNG) khi quy trình postgres đang hoạt động. Nếu postgres quá trình không hoạt động và đang chạy, nó sẽ trả về trạng thái "KHÔNG HOẠT ĐỘNG".
Tài nguyên Postgres
- http://www.postgresql.org/docs/9.0/static/monitoring.html
- http://www.postgresql.org/docs/9.0/static/diskusage.html
- http://bucardo.org/check_postgres/check_postgres.pl.html
Apache Cassandra
Sử dụng JConsole – giám sát tác vụ thống kê
Sử dụng JConsole và URL dịch vụ sau để theo dõi các thuộc tính JMX (MBeans) được cung cấp thông qua JMX.
service:jmx:rmi:///jndi/rmi://<ip address>:7199/jmxrmi
trong đó <ip address> là IP của Cassandra máy chủ.
JMX được bật theo mặc định cho Cassandra và quyền truy cập JMX từ xa vào Cassandra không yêu cầu mật khẩu.
Cách bật tính năng xác thực JMX để thêm mật khẩu:
- Chỉnh sửa /<inst_root>/apigee/customer/application/cassandra.properties. Nếu tệp không tồn tại, hãy tạo tệp đó.
- Thêm nội dung sau vào tệp:
conf_cassandra-env_com.sun.management.jmxremote.authenticate=true - Lưu tệp.
- Sao chép các tệp sau từ thư mục $JAVA_HOME vào
/<inst_root>/apigee/data/apigee-cassandra/:
cp ${JAVA_HOME}/lib/management/jmxremote.password.template $APIGEE_ROOT/data/apigee-cassandra/jmxremote.password
cp ${JAVA_HOME}/lib/management/jmxremote.access $APIGEE_ROOT/data/apigee-cassandra/jmxremote.access - Chỉnh sửa jmxremote.password và
thêm tên người dùng và mật khẩu vào tệp:
casandra mật khẩu
trong đó password là mật khẩu JMX. - Chỉnh sửa jmxremote.access và
thêm vai trò sau:
casandra đọc/ghi - Đảm bảo rằng các tệp thuộc quyền sở hữu của "api" và chế độ tệp là 400:
> chown apigee:apigee /<inst_root>/apigee/data/apigee-cassandra/jmxremote.*
> chmod 400 /<inst_root>/apigee/data/apigee-cassandra/jmxremote.* - Chạy định cấu hình trên
Cassandra:
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-cassandra định cấu hình - Khởi động lại Cassandra:
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-cassandra Khởi động lại
Để tắt tính năng xác thực sau này, hãy làm như sau:
- Chỉnh sửa /<inst_root>/apigee/customer/application/cassandra.properties.
- Xoá dòng sau trong tệp:
conf_cassandra-env_com.sun.management.jmxremote.authenticate=true - Chạy cấu hình trên Cassandra:
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-cassandra định cấu hình - Khởi động lại Cassandra:
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-cassandra Khởi động lại
Số liệu thống kê JMX của Cassandra
JMX MBeans |
Thuộc tính JMX |
---|---|
ColumnFamilies/apprepo/environments ColumnFamilies/apprepo/organizations ColumnFamilies/apprepo/apiproxy_revisions ColumnFamilies/apprepo/apiproxies ColumnFamilies/audit/audits ColumnFamilies/audit/audits_ref |
PendingTasks |
MemtableColumnsCount |
|
MemtableDataSize |
|
ReadCount |
|
RecentReadLatencyMicros |
|
TotalReadLatencyMicros |
|
WriteCount |
|
RecentWriteLatencyMicros |
|
TotalWriteLatencyMicros |
|
TotalDiskSpaceUsed |
|
LiveDiskSpaceUsed |
|
LiveSSTableCount |
|
BloomFilterFalsePositives |
|
RecentBloomFilterFalseRatio |
|
BloomFilterFalseRatio |
Sử dụng tiện íchnodetool để quản lý các nút cụm
Tiện íchnodetool, một giao diện dòng lệnh cho Cassandra, được dùng để quản lý nút cụm. Bạn có thể tìm thấy tiện ích này tại <inst_root>/apigee/apigee-cassandra/bin.
Để biết thêm thông tin về phần mềm tiện íchnodetool, hãy xem http://www.datastax.com/docs/1.0/references/nodetool.
Bạn có thể thực hiện các lệnh gọi sau trên tất cả các nút cụm Cassandra:
- Thông tin chung về chuông (cũng có thể đối với một nút Cassandra): Tìm
"Lên" và "Bình thường" cho tất cả các nút.
[host]# nodetool -h localhost đổ chuông
Kết quả của lệnh trên sẽ có dạng như sau:
Địa chỉ DC Quyền sở hữu của trạng thái tải trạng thái giá đỡ Mã thông báo
192.168.124.201 dc1 ra1 Tăng bình thường 1,67 MB 33,33% 0
192.168.124.202 dc1 ra1 Tăng bình thường 1,68 MB 33,33% 56713727820156410577229101238628035242
192.168.124.203 dc1 ra1 Tăng mức bình thường 1,67 MB 33,33% 113427455640312821154458202477256070484 - Thông tin chung về các nút (lệnh gọi trên mỗi nút)
nodetool -h thông tin máy chủ cục bộ
Kết quả của lệnh trên sẽ có dạng như sau:
Mã thông báo : 0
Chuyện phiếm đang diễn ra : đúng
Tải : 1,67 MB
Số thế hệ : 1361968765
Thời gian hoạt động (giây) : 78108
Bộ nhớ vùng nhớ khối xếp (MB) : 46.80 / 772.00
Trung tâm dữ liệu : dc1
Giá : ra1
Trường hợp ngoại lệ : 0 - Trạng thái của máy chủ tiết kiệm (API ứng dụng phân phát)
host]# Công cụ gắn kết -h cục bộ trên máy chủ trạng thái tiết kiệm
Kết quả của lệnh ở trên hiển thị trạng thái là "đang chạy". - Trạng thái của hoạt động truyền dữ liệu: Quan sát lưu lượng truy cập của cassandra
nodes
nodetool -h localhost netstats 192.168.124.203
Kết quả của lệnh trên sẽ có dạng như sau:
Chế độ: BÌNH THƯỜNG
Không có nội dung nào truyền đến /192.168.124.203
Không có nội dung nào phát trực tuyến từ /192.168.124.203
Tên nhóm đang hoạt động, đang chờ hoàn tất
Các lệnh không áp dụng 0 1688
Không có câu trả lời 0 292277
Giám sát Cassandra (Giao diện người dùng)
Tham khảo URL của datastax opscenter: http://www.datastax.com/products/opscenter.
Tài nguyên Cassandra
Hãy tham khảo URL sau: http://www.datastax.com/docs/1.0/operations/monitoring.
Người giữ vườn thú Apache
Đang kiểm tra trạng thái ZooKeeper
- Đảm bảo quy trình ZooKeeper đang chạy. ZooKeeper ghi tệp PID vào <inst_root>/apigee/var/run/apigee-zookeeper/apigee-zookeeper.pid.
- Kiểm tra cổng ZooKeeper để đảm bảo rằng bạn có thể thiết lập kết nối TCP với cổng 2181 và 3888 trên mọi máy chủ ZooKeeper.
- Hãy đảm bảo rằng bạn có thể đọc các giá trị từ cơ sở dữ liệu ZooKeeper. Kết nối bằng ZooKeeper thư viện ứng dụng (hoặc /<inst_root>/apigee/apigee-zookeeper/bin/zkCli.sh) và đọc một giá trị từ cơ sở dữ liệu.
- Kiểm tra trạng thái:
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-zookeeper status
Sử dụng ZooKeeper gồm bốn từ
Bạn có thể theo dõi ZooKeeper thông qua một nhóm nhỏ các lệnh (từ gồm 4 chữ cái) được gửi đến cổng 2181 bằng netcat (nc) hoặc telnet.
Để biết thêm thông tin về các lệnh trong ZooKeeper, hãy xem: http://zookeeper.apache.org/doc/r3.1.2/zookeeperAdmin.html#sc_zkCommands.
Ví dụ:
- srvr: Liệt kê toàn bộ thông tin chi tiết về máy chủ.
- số liệu thống kê: Liệt kê các thông tin chi tiết ngắn gọn cho máy chủ và các ứng dụng khách được kết nối.
Các lệnh sau đây có thể được phát hành tới cổng ZooKeeper:
- Chạy lệnh ruok gồm bốn chữ cái để kiểm tra xem máy chủ có đang chạy ở trạng thái không lỗi hay không. Đáp
phản hồi thành công sẽ trả về "imok".
tiếng vọng ruok | nc <máy chủ lưu trữ> 2181
Trả về:
imok - Chạy lệnh gồm bốn chữ cái, thống kê để liệt kê hiệu suất của máy chủ và các ứng dụng được kết nối
thống kê.
echo stat | nc <host> 2181
Trả về:
Zookeeper phiên bản: 3.4.5-1392090, được tạo vào ngày 30/9/2012 17:52 GMT
Khách hàng:
/0:0:0:0:0:0:0:1:33467[0](queued=0,recved=1,sent=0)
/192.168.124.201:42388[1](queued=0,recved=8433,sent=8433)
/192.168.124.202:42185[1](queued=0,recved=1339,sent=1347)
/192.168.124.204:39296[1](queued=0,recved=7688,sent=7692)
Độ trễ tối thiểu/trung bình/tối đa: 0/0/128
Nhận được: 26144
Đã gửi: 26160
Số kết nối: 4
Số lượng chưa xử lý: 0
Zxid: 0x2000002c2
Chế độ: follower
Số lượng nút: 283
Lưu ý: Đôi khi, bạn cần biết liệu ZooKeeper có ở Chế độ: leader, follower hay observer hay không. - Nếu không có netcat (nc), bạn có thể sử dụng python để thay thế. Tạo tệp
có tên là zookeeper.py
chứa:
thời gian nhập, ổ cắm,
sys c = socket.socket(socket.AF_INET; socket.SOCK_STREAM)
c.connect((sys.argv[1]; 2181))
c.send(sys.argv[2])
time.sleep(0.1)
print c.recv(512)
Bây giờ, hãy chạy các dòng python sau:
python Zookeeper.py 192.168.124.201 Ruok
python Zookeeper.py 192.168.124.201 số liệu thống kê
OpenLDAP
Kiểm tra cấp độ LDAP
Bạn có thể theo dõi OpenLDAP để xem liệu các yêu cầu cụ thể có được phân phát đúng cách hay không. Ngang bằng nói cách khác, hãy kiểm tra một nội dung tìm kiếm cụ thể trả về kết quả phù hợp.
- Sử dụng ldapsearch (yum install openldap-clients) để truy vấn mục nhập của quản trị viên hệ thống. Mục nhập này được dùng để xác thực tất cả lệnh gọi API.
ldapsearch -b "uid=admin,ou=users,ou=global,dc=apigee,dc=com" -x -W -D "cn=manager,dc=apigee,dc=com" -H ldap://localhost:10389 -LLL
Sau đó, bạn sẽ được nhắc nhập mật khẩu quản trị viên LDAP:
Enter LDAP Password:
Sau khi nhập mật khẩu, bạn sẽ thấy phản hồi ở dạng:
dn: uid=admin,ou=users,ou=global,dc=apigee,dc=com
objectClass: organizationalPerson
objectClass: person
objectClass: inetOrgPerson
objectClass: top
uid: admin
cn: admin
sn: admin
userPassword:: e1NTSEF9bS9xbS9RbVNXSFFtUWVsU1F0c3BGL3BQMkhObFp2eDFKUytmZVE9PQ=
=
mail: opdk@apigee.com - Kiểm tra xem Máy chủ quản lý có còn kết nối với sự cố LDAP hay không:
curl -u <userEMail>:<password> http://localhost:8080/v1/users/<ADMIN>
Trả về:
{
"emailId" : <QUẢN TRỊ,
"tên" : "quản trị viên",
"họ" : "quản trị viên"
}
Bạn cũng có thể giám sát bộ nhớ đệm OpenLDAP, giúp giảm số lượt truy cập vào ổ đĩa từ đó cải thiện hiệu suất của hệ thống. Việc theo dõi rồi điều chỉnh kích thước bộ nhớ đệm trong máy chủ OpenLDAP có thể ảnh hưởng nặng nề đến hiệu suất của máy chủ thư mục. Bạn có thể xem nhật ký (<inst_root>/apigee/var/log) để nhận thông tin về bộ nhớ đệm.