كيفية المراقبة

الإصدار 4.18.01 من Edge for Private Cloud

يصف هذا المستند أساليب مراقبة المكوّنات التي يتيحها النشر في الموقع لـ Apigee Edge.

تفعيل JMX

يتم تفعيل JMX تلقائيًا في Cassandra، ويتم إيقافه تلقائيًا في جميع مكوّنات Edge الأخرى. لذلك، يجب تفعيل JMX لكل مكوّن على حدة.

يتيح كل مكوّن استخدام JMX على منفذ مختلف. يسرد الجدول التالي منفذ JMX والملف الذي تعدّله لتفعيل JMX على هذا المنفذ:

المكوّن منفذ JMX ملف
خادم الإدارة 1099 /opt/apigee/edge-management-server/bin/start
جهاز التوجيه 1100 /opt/apigee/edge-router/bin/start
معالج الرسائل 1101 /opt/apigee/edge-message-processor/bin/start
Qpid 1102 /opt/apigee/edge-qpid-server/bin/start
Postgres 1103 /opt/apigee/edge-postgres-server/bin/start

على سبيل المثال، لتفعيل JMX على خادم الإدارة، افتح ‎/opt/apigee/edge-management-server/bin/start في محرِّر. من المفترض أن يظهر لك السطر التالي المستخدَم لبدء خادم الإدارة:

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

عدِّل هذا السطر لإضافة ما يلي:

-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 

يُرجى العِلم أنّ هذا السطر يحدّد رقم منفذ JMX على أنّه 1099 لخادم الإدارة. اضبط رقم المنفذ لكل مكوّن كما هو محدّد في الجدول أعلاه. على سبيل المثال:

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

احفظ الملف ثم أعِد تشغيل المكوّن. على سبيل المثال، لإعادة تشغيل خادم الإدارة:

> /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

تفعيل مصادقة JMX وضبط كلمة مرور JMX

تستخدم عملية المراقبة لخادم الإدارة ومعالج الرسائل وQpid وPostgres جميعها JMX. يتم تفعيل JMX تلقائيًا، ولا يتطلّب الوصول عن بُعد إلى JMX كلمة مرور.

لتفعيل مصادقة JMX، يتضمّن كل مكوّن إجراء change_jmx_auth الذي تستخدمه لتفعيل/إيقاف المصادقة وضبط بيانات اعتماد JMX.

لتفعيل مصادقة JMX، استخدِم الأمر التالي:

>  /opt/apigee/apigee-service/bin/apigee-service comp change_jmx_auth optionsOrConfigFile

حيث:

  • comp هو إما edge-management-server أو edge-message-processor أو edge-qpid-server أو edge-postgres-server.
  • الخيارات هي:
    • ‫‎-u: اسم المستخدم
    • ‫-p: كلمة المرور
    • ‫-e: y (تفعيل) أو n (إيقاف)
  • يتضمّن ملف الإعداد ما يلي:
    • JMX_USERNAME=username
    • JMX_ENABLED=y/n
    • JMX_PASSWORD=password (إذا لم يتم ضبطها أو لم يتم تمريرها باستخدام -p، سيُطلب منك ذلك)

على سبيل المثال، لاستخدام الخيارات في سطر الأوامر:

> /opt/apigee/apigee-service/bin/apigee-service edge-management-server change_jmx_auth -u foo -p bar -e y

إذا كان لديك ملف إعداد:

> /opt/apigee/apigee-service/bin/apigee-service edge-management-server change_jmx_auth -f configFile

إذا كنت تشغّل Edge على عُقد متعددة، نفِّذ هذا الأمر على جميع العُقد، مع تحديد اسم المستخدم وكلمة المرور نفسهما.

لإيقاف مصادقة JMX لاحقًا، استخدِم الأمر:

> /opt/apigee/apigee-service/bin/apigee-service edge-management-server change_jmx_auth -e n

خادم الإدارة

استخدام JConsole لمراقبة فحص حالة النظام ومعالجة المعلومات

استخدِم JConsole (أداة متوافقة مع JMX) لإدارة ومراقبة فحص السلامة وإحصاءات العمليات. باستخدام JConsole، يمكنك استخدام إحصاءات JMX التي يعرضها خادم الإدارة (أو أي خادم) وعرضها في واجهة رسومية. لمزيد من المعلومات حول استخدام JConsole، يُرجى الاطّلاع على http://docs.oracle.com/javase/8/docs/technotes/guides/management/jconsole.html.

استخدِم JConsole وعنوان URL للخدمة التالي لمراقبة سمات JMX (MBeans) المقدَّمة عبر JMX.

service:jmx:rmi:///jndi/rmi://<ip address>:<port>/jmxrmi

حيث يكون <ip address> هو عنوان IP الخاص بخادم الإدارة (أو الخادم المعني). يكون المنفذ التلقائي هو 1099 لخادم الإدارة.

يعرض الجدول التالي إحصاءات JMX العامة:

JMX MBeans

سمات JMX

الذاكرة

HeapMemoryUsage

NonHeapMemoryUsage

الاستخدام

ملاحظة: سيتم عرض قيم السمات في أربع قيم: committed وinit وmax وused.

استخدام عمليات التحقّق من واجهة برمجة تطبيقات Edge Application

يمكنك إجراء فحص لواجهة برمجة التطبيقات على خادم الإدارة (أو أي خادم) من خلال استدعاء أمر CURL التالي:

curl http://<host>:8080/v1/servers/self/up -H "Accept: application/json"

حيث يكون <host> هو عنوان IP الخاص بخادم الإدارة. يمكنك تحديد نوع Accept على أنّه application/json أو application/xml.

يعرض هذا الطلب "صحيح" و "خطأ". إذا كانت القيمة "صحيح"، يعني ذلك أنّ العقدة تعمل وأنّ خدمة Java قيد التشغيل.

إذا لم تتلقَّ استجابة HTTP 200 (OK)، يعني ذلك أنّ جهاز Edge غير قادر على الاستجابة لطلبات المنفذ 8080.

تحديد المشاكل وحلّها

  1. سجِّل الدخول إلى الخادم وشغِّل الأمر التالي:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server status
  2. إذا لم تكن الخدمة قيد التشغيل، ابدأ الخدمة:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server start

استخدام Edge التطبيق: عمليات التحقّق من المستخدمين والمؤسسة والنشر

يؤدي خادم الإدارة دورًا حيويًا في تجميع كل الحزم الأخرى معًا في كل عملية تثبيت على الجهاز. يمكنك التحقّق من حالة المستخدم والمؤسسة والنشر على خادم الإدارة من خلال إصدار الأوامر التالية:

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

من المفترض أن يعرض النظام الحالة "تم النشر" لجميع المكالمات. إذا لم تنجح هذه الخطوات، يُرجى اتّباع ما يلي:

  1. تحقَّق من سجلّات خادم الإدارة (على opt/apigee/var/log/edge-management-server) بحثًا عن أي أخطاء.
  2. أجرِ مكالمة مع خادم الإدارة للتحقّق مما إذا كان يعمل بشكل صحيح.
  3. أزِل الخادم من ELB ثم أعِد تشغيل خادم الإدارة.
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

جهاز التوجيه

يمكنك إجراء فحص واجهة برمجة التطبيقات على جهاز التوجيه (أو أي خادم) من خلال استدعاء أمر CURL التالي:

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

حيث يكون المضيف هو عنوان IP الخاص بجهاز التوجيه.

يعرض هذا الطلب "صحيح" و "خطأ". إذا كانت القيمة "صحيح"، يعني ذلك أنّ العقدة تعمل وأنّ خدمة "الموجّه" قيد التشغيل.

إذا لم تتلقَّ استجابة HTTP 200 (OK)، يعني ذلك أنّ Edge لا يمكنه الاستجابة لطلبات المنفذ 8081.

تحديد المشاكل وحلّها

  1. سجِّل الدخول إلى الخادم وشغِّل الأوامر التالية:
    /<inst_root>/apigee/apigee-service/bin/apigee-service edge-router status
  2. إذا لم تكن الخدمة قيد التشغيل، ابدأ تشغيلها
    /<inst_root>/apigee/apigee-service/bin/apigee-service edge-router start
  3. بعد إعادة التشغيل، تأكَّد من أنّه يعمل
    curl -v http://localhost:port/v1/servers/self/up

    حيث يكون port هو 8081 لـ "الموجّه" و8082 لـ "معالج الرسائل".

استخدام JConsole لمراقبة فحص حالة النظام ومعالجة المعلومات

اتّبِع الخطوات نفسها الموضّحة أعلاه لخادم الإدارة.

ملاحظة: تأكَّد من استخدام المنفذ 1100.

معالج الرسائل

استخدام JConsole لمراقبة فحص حالة النظام ومعالجة المعلومات

اتّبِع الخطوات نفسها الموضّحة أعلاه لخادم الإدارة.

ملاحظة: تأكَّد من استخدام المنفذ 1101.

استخدام عمليات التحقّق من واجهة برمجة تطبيقات Edge Application

اتّبِع الخطوات نفسها الموضّحة أعلاه لجهاز التوجيه.

ملاحظة: تأكَّد من استخدام المنفذ 8082.

استخدام عمليات فحص تدفق رسائل JMX

اتّبِع الخطوات نفسها الموضّحة أعلاه لخادم الإدارة.

ملاحظة: تأكَّد من استخدام المنفذ 1101.

خادم Qpid

استخدام JConsole لمراقبة فحص حالة النظام ومعالجة المعلومات

اتّبِع الخطوات نفسها الموضّحة أعلاه لخادم الإدارة.

ملاحظة: تأكَّد من استخدام المنفذ 1102.

استخدام عمليات فحص Edge Application API

اتّبِع الخطوات نفسها الموضّحة أعلاه لخادم الإدارة.

ملاحظة: تأكَّد من استخدام المنفذ 8083. يتوافق أيضًا أمر CURL التالي مع خادم Qpid:

curl http://<qpid_IP>:8083/v1/servers/self

خادم Postgres

استخدام JConsole لمراقبة فحص حالة النظام ومعالجة المعلومات

اتّبِع الخطوات نفسها الموضّحة أعلاه لخادم الإدارة.

ملاحظة: تأكَّد من استخدام المنفذ 1103.

استخدام عمليات فحص Edge Application API

اتّبِع الخطوات نفسها الموضّحة أعلاه لخادم الإدارة.

ملاحظة: تأكَّد من استخدام المنفذ 8084. يتوافق أيضًا أمر CURL التالي مع خادم Postgres:

curl http://<postgres_IP>:8084/v1/servers/self

استخدام Edge عمليات التحقّق من تنظيم التطبيق والبيئة

يمكنك التحقّق من اسم المؤسسة والبيئة اللذين تم إعدادهما على خادم Postgres من خلال إصدار أوامر CURL التالية:

curl http:// <postgres_IP>:8084/v1/servers/self/organizations

ملاحظة: تأكَّد من استخدام المنفذ 8084.

من المفترض أن يعرض النظام اسم المؤسسة والبيئة.

استخدام حالة axstatus لتطبيق Edge التحقّق

يمكنك التحقّق من حالة خوادم الإحصاءات من خلال إصدار أمر CURL التالي.

curl -u userEmail:password http://<host>:<port>/v1/organizations/<orgname>/environments/<envname>/provisioning/axstatus

من المفترض أن يعرض النظام الحالة SUCCESS لجميع خوادم الإحصاءات. يظهر أدناه ناتج أمر CURL أعلاه:

{
  "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"
}

قاعدة بيانات PostgreSQL

استخدام النص البرمجي check_postgres.pl

لمراقبة قاعدة بيانات PostgreSQL، يمكنك استخدام نص برمجي عادي للمراقبة، وهو check_postgres.pl المتاح على الرابط http://bucardo.org/wiki/Check_postgres.

ملاحظة: يجب تثبيت النص البرمجي check_postgres.pl في كل عقدة Postgres.

قبل تشغيل النص البرمجي:

  1. تأكَّد من تثبيت perl-Time-HiRes.x86_64، وهي وحدة Perl التي تنفّذ المنبّهات العالية الدقة ودرجات الحرارة المناسبة للنوم وgettimeofday وموقِّتات التمرين المتناوب. على سبيل المثال، يمكنك تثبيتها باستخدام الأمر التالي:
    yum install perl-Time-HiRes.x86_64

يتوافق الناتج التلقائي لطلبات البيانات من واجهة برمجة التطبيقات باستخدام النص البرمجي check_postgres.pl مع Nagios. بعد تثبيت النص البرمجي، عليك إجراء عمليات التحقّق التالية:

  1. حجم قاعدة البيانات: يمكنك التحقّق من حجم قاعدة البيانات:
    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'
  2. الاتصال الوارد بقاعدة البيانات: يتحقّق من عدد الاتصالات الواردة بقاعدة البيانات ويقارنها بالحد الأقصى المسموح به للاتصالات:
    check_postgres.pl -H 10.176.218.202 -db apigee -u apigee -dbpass postgres -action backends
  3. توفّر قاعدة البيانات وأداؤها: يتحقّق هذا الأمر من أنّ قاعدة البيانات قيد التشغيل ومتاحة:
    check_postgres.pl -H 10.176.218.202 -db apigee -u apigee -dbpass postgres -action connection
  4. مساحة القرص: يفحص مساحة القرص:
    check_postgres.pl -H 10.176.218.202 -db apigee -u apigee -dbpass postgres -action disk_space --warning='80%' --critical='90%'
  5. المؤسسات/البيئات المضمّنة: تتحقّق من عدد المؤسسات والبيئات المضمّنة في عقدة 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

ملاحظة: يُرجى الرجوع إلى http://bucardo.org/check_postgres/check_postgres.pl.html في حال احتجت إلى أي مساعدة بشأن استخدام الأوامر أعلاه.

عمليات التحقّق من قاعدة البيانات

يمكنك التحقّق من إنشاء الجداول المناسبة في قاعدة بيانات PostgreSQL. تسجيل الدخول إلى قاعدة بيانات PostgreSQL باستخدام:

psql -h /opt/apigee/var/run/apigee-postgresql/  -U apigee -d apigee

ثم شغِّل:

\d analytics."<org>.<env>.fact"

التحقّق من حالة سلامة عملية postgres

يمكنك إجراء فحص لواجهة برمجة التطبيقات على جهاز postgres من خلال استدعاء أمر CURL التالي:

http://<postgres_IP>:8084/v1/servers/self/health/

ملاحظة: تأكَّد من استخدام المنفذ 8084.

وتُعرض الحالة "نشط" عندما تكون عملية postgres نشطة. إذا لم تكن عملية postgres قيد التشغيل، ستظهر الحالة "غير نشط".

مراجع Postgres

Apache Cassandra

استخدام JConsole – مراقبة إحصاءات المهام

استخدِم JConsole وعنوان URL للخدمة التالي لمراقبة سمات JMX (MBeans) المقدَّمة عبر JMX.

service:jmx:rmi:///jndi/rmi://<ip address>:7199/jmxrmi

حيث يكون <ip address> هو عنوان IP لخادم Cassandra.

يتم تفعيل JMX تلقائيًا في Cassandra، ولا يتطلّب الوصول عن بُعد إلى JMX في Cassandra كلمة مرور.

لتفعيل مصادقة JMX لإضافة كلمة مرور، اتّبِع الخطوات التالية:

  1. عدِّل /opt/apigee/customer/application/cassandra.properties. إذا لم يكن الملف متوفّرًا، أنشِئه.
  2. أضِف ما يلي إلى الملف:
    conf_cassandra-env_com.sun.management.jmxremote.authenticate=true
  3. احفظ الملف.
  4. انسخ الملف التالي من دليل $JAVA_HOME إلى /opt/apigee/data/apigee-cassandra/:
    cp ${JAVA_HOME}/lib/management/jmxremote.password.template $APIGEE_ROOT/data/apigee-cassandra/jmxremote.password
  5. عدِّل jmxremote.password وأضِف اسم المستخدم وكلمة المرور إلى الملف:
    cassandra password

    حيث password هي كلمة مرور JMX.
  6. عدِّل ${JAVA_HOME}/lib/management/jmxremote.access وأضِف الدور التالي:
    cassandra readwrite
  7. تأكَّد من أنّ الملفات مملوكة لـ "apigee" وأنّ وضع الملف هو 400:
    > chown apigee:apigee /opt/apigee/data/apigee-cassandra/jmxremote.*
    > chmod 400 /opt/apigee/data/apigee-cassandra/jmxremote.*
  8. أنشِئ ملفًا في الموقع التالي، إذا لم يكن متوفّرًا:
    /opt/apigee/customer/application/jmx_auth.sh
  9. أضِف الأسطر التالية إلى ملف jmx_auth.sh الذي أنشأته للتو:
    export CASS_JMX_USERNAME=JMX_USERNAME
    export CASS_JMX_PASSWORD=JMX_PASSWORD
  10. نفِّذ الأمر التالي:
    source /opt/apigee/customer/application/jmx_auth.sh
  11. شغِّل configure على Cassandra:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure
  12. أعِد تشغيل Cassandra:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  13. كرِّر هذه العملية على جميع عُقد Cassandra الأخرى.

لإيقاف المصادقة لاحقًا:

  1. عدِّل opt/apigee/customer/application/cassandra.properties.
  2. أزِل السطر التالي في الملف:
    conf_cassandra-env_com.sun.management.jmxremote.authenticate=true
  3. شغِّل أمر الضبط على Cassandra:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure
  4. أعِد تشغيل Cassandra:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  5. كرِّر هذه العملية على جميع عُقد Cassandra الأخرى.

إحصاءات Cassandra JMX

JMX MBeans

سمات 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

استخدام أداة nodetool لإدارة عُقد المجموعة

تُستخدم أداة nodetool، وهي واجهة سطر أوامر لـ Cassandra، لإدارة عُقد المجموعة. يمكن العثور على الأداة المساعدة في /opt/apigee/apigee-cassandra/bin.

لمزيد من المعلومات حول أداة nodetool، يُرجى الانتقال إلى http://www.datastax.com/docs/1.0/references/nodetool.

يمكن إجراء الطلبات التالية على جميع عُقد مجموعة Cassandra:

  1. معلومات عامة عن الحلقة (يمكن أيضًا استخدامها لعقدة Cassandra واحدة): ابحث عن "Up" (نشط) و "Normal" (عادي) لجميع العُقد.
    [host]# nodetool -u username -p password -h localhost ring

    يظهر ناتج الأمر أعلاه كما هو موضّح أدناه:
    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
  2. معلومات عامة عن العُقد (استدعاء لكل عقدة)
    nodetool -u username -p password -h localhost info

    يظهر ناتج الأمر أعلاه كما هو موضّح أدناه:
    رمز مميز : 0
    Gossip active : صحيح
    Load : 1.67 ميغابايت
    Generation No : 1361968765
    Uptime (seconds) : 78108
    Heap Memory (MB) : 46,80 / 772,00
    مركز بيانات : dc1
    Rack : ra1
    Exceptions : 0
  3. حالة خادم Thrift (واجهة برمجة التطبيقات لخدمة العميل)
    host]# nodetool -u username -p password -h localhost statusthrift

    يعرض ناتج الأمر أعلاه الحالة على أنّها "قيد التشغيل".
  4. حالة عمليات نقل البيانات: يمكنك مراقبة عدد الزيارات لعُقد Cassandra
    nodetool -u username -p password -h localhost netstats 192.168.124.203

    يظهر ناتج الأمر أعلاه على النحو التالي:
    الوضع: عادي
    لا يتم نقل أي بيانات إلى ‎/192.168.124.203
    لا يتم نقل أي بيانات من ‎/192.168.124.203
    اسم المجموعة نشطة في انتظار المراجعة مكتملة
    الأوامر غير متاحة 0 1688
    الردود غير متاحة 0 292277

مراقبة Cassandra (واجهة المستخدم)

يُرجى الرجوع إلى عنوان URL الخاص بـ datastax opscenter: http://www.datastax.com/products/opscenter.

مورد Cassandra

يُرجى الرجوع إلى عنوان URL التالي: http://www.datastax.com/docs/1.0/operations/monitoring.

Apache ZooKeeper

جارٍ التحقّق من حالة ZooKeeper

  1. تأكَّد من أنّ عملية ZooKeeper قيد التشغيل. يكتب ZooKeeper ملف PID في opt/apigee/var/run/apigee-zookeeper/apigee-zookeeper.pid.
  2. اختبِر منافذ ZooKeeper للتأكّد من إمكانية إنشاء اتصال TCP بالمنفذَين 2181 و3888 على كل خادم ZooKeeper.
  3. تأكَّد من إمكانية قراءة القيم من قاعدة بيانات ZooKeeper. اتصِل باستخدام مكتبة عملاء ZooKeeper (أو /opt/apigee/apigee-zookeeper/bin/zkCli.sh) واقرأ قيمة من قاعدة البيانات.
  4. تحقَّق من الحالة:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper status

استخدام كلمات ZooKeeper المكوّنة من أربعة أحرف

يمكن مراقبة ZooKeeper من خلال مجموعة صغيرة من الأوامر (كلمات من أربعة أحرف) يتم إرسالها إلى المنفذ 2181 باستخدام netcat (nc) أو telnet.

لمزيد من المعلومات حول أوامر ZooKeeper، يُرجى الاطّلاع على: http://zookeeper.apache.org/doc/r3.1.2/zookeeperAdmin.html#sc_zkCommands.

على سبيل المثال:

  • srvr: يسرد التفاصيل الكاملة للخادم.
  • stat: تعرض هذه السمة تفاصيل موجزة عن الخادم والعملاء المتصلين.

يمكن إصدار الأوامر التالية إلى منفذ ZooKeeper:

  1. شغِّل الأمر ruok المكوّن من أربعة أحرف لاختبار ما إذا كان الخادم يعمل في حالة عدم حدوث خطأ. في حال نجاح الاستجابة، يتم عرض "imok".
    echo ruok | nc <host> 2181

    النتيجة:
    imok
  2. شغِّل الأمر stat المكوّن من أربعة أحرف لعرض إحصاءات أداء الخادم والعملاء المتصلين.
    echo stat | nc <host> 2181

    النتيجة:
    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

    ملاحظة: من المهم أحيانًا معرفة ما إذا كان ZooKeeper في الوضع: leader أو follower أو observer.
  3. إذا لم تكن أداة netcat (nc) متاحة، يمكنك استخدام python كبديل. أنشئ ملفًا باسم zookeeper.py يحتوي على ما يلي:
    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)


    الآن شغِّل أسطر بايثون التالية:
    python zookeeper.py 192.168.124.201 ruok
    python zookeeper.py 192.168.124.201 stat

OpenLDAP

اختبار مستوى LDAP

يمكنك مراقبة OpenLDAP لمعرفة ما إذا كانت الطلبات المحدّدة تتم معالجتها بشكل صحيح. بعبارة أخرى، ابحث عن طلب بحث محدّد يعرض النتيجة الصحيحة.

  1. استخدِم ldapsearch (yum install openldap-clients) لطلب البحث عن إدخال مشرف النظام. يُستخدَم هذا الإدخال لمصادقة جميع طلبات البيانات من واجهة برمجة التطبيقات.
    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

    سيُطلب منك بعد ذلك إدخال كلمة مرور مشرف LDAP:
    أدخِل كلمة مرور LDAP:

    بعد إدخال كلمة المرور، سيظهر لك ردّ في النموذج:
    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
  2. تحقَّق مما إذا كان خادم الإدارة لا يزال متصلاً بمشكلة LDAP:
    curl -u <userEMail>:<password> http://localhost:8080/v1/users/<ADMIN>

    النتائج:
    {
    "emailId" : <ADMIN>,
    "firstName" : "admin",
    "lastName" : "admin"
    }

يمكنك أيضًا مراقبة ذاكرات التخزين المؤقت في OpenLDAP، ما يساعد في تقليل عدد عمليات الوصول إلى القرص، وبالتالي تحسين أداء النظام. يمكن أن تؤثر مراقبة حجم ذاكرة التخزين المؤقت ثم ضبطها في خادم OpenLDAP بشكل كبير في أداء خادم الدليل. يمكنك الاطّلاع على ملفات السجلّ (opt/apigee/var/log) للحصول على معلومات حول ذاكرة التخزين المؤقت.