Edge for Private Cloud phiên bản 4.17.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ợ bởi một triển khai Apigee Edge tại chỗ.
Bật JMX
JMX được bật theo mặc định cho Cassandra và bị tắt theo mặc định cho tất cả các thành phần Edge khác. Do đó, bạn phải bật JMX riêng cho từng thành phần.
Mỗi thành phần hỗ trợ JMX trên một cổng khác nhau. Bảng sau đây liệt kê cổng JMX và tệp mà bạn sửa đổi để bật JMX trên cổng đó:
| Thành phần | Cổng JMX | Tệp |
|---|---|---|
| Máy chủ quản lý | 1099 | /opt/apigee/edge-management-server/bin/start |
| Bộ xử lý thông báo | 1101 | /opt/apigee/edge-mesage-processor/bin/start |
| Qpid | 1102 | /opt/apigee/edge-qpid-server/bin/start |
| Postgres | 1103 | /opt/apigee/edge-postgres-server/bin/start |
Ví dụ: để bật JMX trên Máy chủ quản lý, hãy mở /opt/apigee/edge-management-server/bin/start trong trình chỉnh sửa. Bạn sẽ thấy dòng sau đây được dùng để khởi động Máy chủ quản lý:
exec $JAVA -classpath "$classpath" -Xms$min_mem -Xmx$max_mem $xx_opts -Djava.security.auth.login.config=$conf_path/jaas.config -Dinstallation.dir=$install_dir $sys_props -Dconf.dir=$conf_path -Ddata.dir=$data_dir $* $debug_options com.apigee.kernel.MicroKernel
Chỉnh sửa dòng này để thêm nội dung sau:
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false
Lưu ý rằng dòng này chỉ định số cổng JMX là 1099 cho Máy chủ quản lý. Đặt số cổng cho từng thành phần như được xác định trong bảng ở trên. Ví dụ:
exec $JAVA -classpath "$classpath" -Xms$min_mem -Xmx$max_mem $xx_opts -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.security.auth.login.config=$conf_path/jaas.config -Dinstallation.dir=$install_dir $sys_props -Dconf.dir=$conf_path -Ddata.dir=$data_dir $* $debug_options com.apigee.kernel.MicroKernel
Lưu tệp rồi khởi động lại thành phần. Ví dụ: để khởi động lại Máy chủ quản lý, hãy làm như sau:
> /opt/apigee/apigee-service/bin/ apigee-service edge-management-server restart
Bật tính năng xác thực JMX và đặt mật khẩu JMX
Quá trình giám sát cho Máy chủ quản lý, Bộ xử lý thông báo, Qpid và Postgres đều sử dụng JMX. Theo mặc định, quyền 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 đều 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 dùng lệnh sau:
> /<inst_root>/apigee/apigee-service/bin/apigee-service comp change_jmx_auth optionsOrConfigFile
trong đó:
- comp là edge-management-server, edge-message-processor, edge-qpid-server, hoặc edge-postgres-server.
- Các lựa chọn bao gồm:
- -u: tên người dùng
- -p: mật khẩu
- -e: y (bật) hoặc n (tắt)
- Tệp cấu hình bao gồm:
- JMX_USERNAME=username
- 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, hãy làm như sau:
> /<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 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 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 để theo dõi quy trình 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 số liệu thống kê về quy trình và quy trình kiểm tra tình trạng. Bằng cách 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) cung cấp và hiển thị các số liệu đó trong giao diện đồ hoạ. Để biết thêm thông tin về cách 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 đây để theo dõi các thuộc tính JMX (MBean) được cung cấp qua JMX.
service:jmx:rmi:///jndi/rmi://<ip address>:<port>/jmxrmi
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 cho thấ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 ý: Giá trị thuộc tính sẽ được hiển thị theo 4 giá trị: committed, init, max và used. |
|
Sử dụng các bước kiểm tra API của Edge Application
Bạn có thể 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 CURL sau:
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ề "true" và "false". Nếu đúng, tức là nút đang hoạt động và dịch vụ Java đ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ác yêu cầu 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 edge-management-server status - 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 edge-management-server start
Sử dụng Edge Ứng dụng – Kiểm tra người dùng, tổ chức và hoạt động triển khai
Máy chủ quản lý đóng vai trò quan trọng trong việc kết hợp tất cả các gói khác trong mỗi lượt cài đặt tại cơ sở. Bạn có thể kiểm tra trạng thái của người dùng, tổ chức và hoạt động triển khai trên máy chủ quản lý bằng cách đưa 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ị trạng thái "đã triển khai" cho tất cả các cuộc gọi. Nếu các cách này không hiệu quả, hãy làm như sau:
- Kiểm tra nhật ký Máy chủ quản lý (tại <inst_root>/apigee/var/log/edge-management-server) để xem có lỗi nào không.
- Thực hiện lệnh gọi đến Máy chủ quản lý để kiểm tra xem máy chủ có hoạt động đúng cách hay không.
- 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 edge-management-server restart
Bộ định tuyến
Bạn có thể 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 lệnh 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ề "true" và "false". Nếu đúng, tức là nút đang hoạt động và dịch vụ Bộ định tuyến đang chạy.
Nếu bạn không nhận được phản hồi HTTP 200 (OK), thì Edge sẽ không thể phản hồi các yêu cầu về cổng 8081.
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 edge-router status - 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 edge-router start - Sau khi khởi động lại, hãy kiểm tra để đảm bảo rằng thành phần đó đang hoạt động
curl -v http://localhost:port/v1/servers/self/up
Trong đó, port là 8081 cho Bộ định tuyến và 8082 cho Trình xử lý thông báo.
Bộ xử lý thông báo
Sử dụng JConsole để theo dõi quy trình kiểm tra tình trạng hệ thống và xử lý thông tin
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 1101.
Sử dụng các bước kiểm tra API của Edge Application
Làm theo các bước tương tự như mô tả ở trên cho Bộ định tuyến.
Lưu ý: Đảm bảo rằng bạn sử dụng cổng – 8082.
Sử dụng quy trình kiểm tra luồng thông báo JMX
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 1101.
Máy chủ Qpid
Sử dụng JConsole để theo dõi quy trình kiểm tra tình trạng hệ thống và xử lý thông tin
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 – 1102.
Sử dụng quy trình kiểm tra API ứng dụng Edge
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 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 để theo dõi quy trình kiểm tra tình trạng hệ thống và xử lý thông tin
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 – 1103.
Sử dụng quy trình kiểm tra API ứng dụng Edge
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 – 8084. Lệnh CURL sau đây 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 triển khai trên Máy chủ Postgres bằng cách đưa ra 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 sẽ hiển thị tên tổ chức và môi trường.
Sử dụng tính năng kiểm tra axstatus của ứng dụng Edge
Bạn có thể xác minh trạng thái của máy chủ phân tích bằng cách đưa ra lệ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 lệnh CURL ở trên được trình bày bên dưới:
{
"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 tập lệnh check_postgres.pl
Để 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 nút Postgres.
Trước khi 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 báo thức có độ phân giải cao, chế độ ngủ, gettimeofday và bộ đếm khoảng thời gian. Ví dụ: bạn
có thể cài đặt bằng lệnh sau:
yum install perl-Time-HiRes.x86_64
Kết quả mặc định của các lệnh gọi API sử dụng tập lệnh check_postgres.pl tương thích với Nagios. Sau khi 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 database_size --warning='800 GB' --critical='900 GB' - Kết nối đến 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 backends - Phạm vi cung cấp 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 và
có sẵn hay không:
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 disk_space --warning='80%' --critical='90%' - Tổ chức/môi trường đã tham gia – kiểm tra số lượng tổ chức và môi trường đã tham gia trong một nút Postgres:
check_postgres.pl -H 10.176.218.202 -db apigee -u apigee -dbpass postgres -action=custom_query --query="select count(*) as result from pg_tables where schemaname='analytics' and tablename like '%fact'" --warning='80' --critical='90' --valtype=integer
Lưu ý: Vui lòng tham khảo http://bucardo.org/check_postgres/check_postgres.pl.html trong trường hợp bạn cần trợ giúp về cách 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 cơ sở dữ liệu PostgreSQL bằ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 hoạt động 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 ý: Đảm bảo rằng bạn sử dụng cổng 8084.
Hàm này trả về trạng thái "ACTIVE" khi quy trình postgres đang hoạt động. Nếu quy trình postgres không hoạt động, thì quy trình này sẽ trả về trạng thái "INACTIVE" (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 – theo dõi số liệu thống kê về tác vụ
Sử dụng JConsole và URL dịch vụ sau đây để theo dõi các thuộc tính JMX (MBean) được cung cấp qua JMX.
service:jmx:rmi:///jndi/rmi://<ip address>:7199/jmxrmi
trong đó <địa chỉ IP> là địa chỉ IP của máy chủ Cassandra.
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:
cassandra password
trong đó password là mật khẩu JMX. - Chỉnh sửa jmxremote.access và thêm vai trò sau:
cassandra readwrite - Đảm bảo các tệp thuộc sở hữu của "apigee" 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 lệnh configure trên Cassandra:
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-cassandra configure - Khởi động lại Cassandra:
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
Cách tắt tính năng xác thực sau này:
- 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 configure - Khởi động lại Cassandra:
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
Số liệu thống kê về Cassandra JMX
|
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 ích nodetool để quản lý các nút cụm
Tiện ích nodetool (giao diện dòng lệnh cho Cassandra) được dùng để quản lý các 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ề tiện ích nodetool, 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ề vòng (cũng có thể áp dụng cho một nút Cassandra): Tìm "Up" (Lên) và "Normal" (Bình thường) cho tất cả các nút.
[host]# nodetool -h localhost ring
Kết quả của lệnh trên sẽ có dạng như sau:
Address DC Rack Status State Load Owns Token
192.168.124.201 dc1 ra1 Up Normal 1.67 MB 33,33% 0
192.168.124.202 dc1 ra1 Up Normal 1.68 MB 33,33% 56713727820156410577229101238628035242
192.168.124.203 dc1 ra1 Up Normal 1.67 MB 33,33% 113427455640312821154458202477256070484 - Thông tin chung về các nút (gọi cho mỗi nút)
nodetool -h localhost info
Kết quả của lệnh trên sẽ có dạng như sau:
Token : 0
Gossip active : true
Load : 1.67 MB
Generation No : 1361968765
Thời gian hoạt động (seconds) : 78108
Bộ nhớ Heap (MB) : 46,80 / 772,00
Trung tâm dữ liệu : dc1
Rack : ra1
Ngoại lệ : 0 - Trạng thái của máy chủ thrift (phục vụ API ứng dụng)
host]# nodetool -h localhost statusthrift
Kết quả của lệnh trên cho thấy trạng thái là "running" (đang chạy). - Trạng thái của các hoạt động truyền dữ liệu trực tuyến: Quan sát lưu lượng truy cập cho các nút cassandra
nodetool -h localhost netstats 192.168.124.203
Kết quả của lệnh trên sẽ có dạng như sau:
Mode: NORMAL
Nothing streaming to /192.168.124.203
Nothing streaming from /192.168.124.203
Pool Name Active Pending Completed
Commands n/a 0 1688
Responses n/a 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
Tham khảo URL sau: http://www.datastax.com/docs/1.0/operations/monitoring.
Apache ZooKeeper
Đ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ác cổng ZooKeeper để đảm bảo rằng bạn có thể thiết lập kết nối TCP với các cổng 2181 và 3888 trên mọi máy chủ ZooKeeper.
- Đả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 thư viện ứng dụng ZooKeeper (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 Four Letter Words
Bạn có thể giám sát ZooKeeper thông qua một nhóm nhỏ các lệnh (từ có bốn 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 ZooKeeper, hãy xem: http://zookeeper.apache.org/doc/r3.1.2/zookeeperAdmin.html#sc_zkCommands.
Ví dụ:
- srvr: Liệt kê thông tin chi tiết đầy đủ về máy chủ.
- stat: Liệt kê thông tin chi tiết ngắn gọn cho máy chủ và ứng dụng đã kết nối.
Bạn có thể phát các lệnh sau đến 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 có lỗi hay không. Phản hồi thành công sẽ trả về "imok".
echo ruok | nc <host> 2181
Trả về:
imok - Chạy lệnh stat gồm bốn chữ cái để liệt kê hiệu suất của máy chủ và số liệu thống kê về máy khách đã kết nối.
echo stat | nc <host> 2181
Trả về:
Zookeeper version: 3.4.5-1392090, built on 09/30/2012 17:52 GMT
Clients:
/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)
Latency min/avg/max: 0/0/128
Received: 26144
Sent: 26160
Connections: 4
Outstanding: 0
Zxid: 0x2000002c2
Mode: follower
Node count: 283
Lưu ý: Đôi khi, bạn cần xem ZooKeeper có đang ở 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 một tệp có tên zookeeper.py chứa nội dung sau:
import time, socket,
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 stat
OpenLDAP
Bài kiểm tra cấp độ LDAP
Bạn có thể theo dõi OpenLDAP để xem các yêu cầu cụ thể có được phân phát đúng cách hay không. Nói cách khác, hãy kiểm tra xem một cụm từ tìm kiếm cụ thể có trả về kết quả phù hợp hay không.
- 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 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@google.com - Kiểm tra xem Máy chủ quản lý có còn kết nối với vấn đề về LDAP hay không:
curl -u <userEMail>:<password> http://localhost:8080/v1/users/<ADMIN>
Trả về:
{
"emailId" : <ADMIN>,
"firstName" : "admin",
"lastName" : "admin"
}
Bạn cũng có thể giám sát bộ nhớ đệm OpenLDAP để giúp giảm số lần 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 và sau đó điều chỉnh kích thước bộ nhớ đệm trong máy chủ OpenLDAP có thể ảnh hưởng nghiêm trọng đến hiệu suất của máy chủ thư mục. Bạn có thể xem các tệp nhật ký (<inst_root>/apigee/var/log) để lấy thông tin về bộ nhớ đệm.