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

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

نظرة عامة

يتيح Edge عدة طرق للحصول على تفاصيل حول الخدمات والتحقّق من حالاتها. يسرد الجدول التالي أنواع عمليات التحقّق التي يمكنك إجراؤها على كل خدمة مؤهَّلة:

Mgmt API
المكوّن استخدام الذاكرة [JMX*] التحقّق من الخدمة حالة المستخدم/المؤسسة/ النشر axstatus التحقّق من قاعدة البيانات حالة "apigee-service" apigee-monit**
خادم الإدارة
معالج الرسائل
جهاز التوجيه
Qpid
Postgres
مزيد من المعلومات مزيد من المعلومات مزيد من المعلومات مزيد من المعلومات مزيد من المعلومات مزيد من المعلومات مزيد من المعلومات

* قبل استخدام JMX، عليك تفعيله، كما هو موضّح في تفعيل JMX.

** تتحقّق خدمة apigee-monit مما إذا كان أحد المكوّنات يعمل، وستحاول إعادة تشغيله إذا لم يكن كذلك. لمزيد من المعلومات، يُرجى الاطّلاع على المعالجة الذاتية باستخدام apigee-monit.

مراقبة المنافذ وملفات الإعداد

يتيح كل مكوّن استخدام Java Management Extensions (JMX)‎ ومكالمات مراقبة Management API على منافذ مختلفة. يسرد الجدول التالي منافذ JMX وManagement API لكل نوع من الخوادم ومواقع ملفات الإعداد:

المكوّن منفذ JMX منفذ Management API موقع ملف الإعداد
خادم الإدارة 1099 8080 $APIGEE_ROOT/customer/application/management-server.properties
معالج الرسائل 1101 8082 $APIGEE_ROOT/customer/application/message-processor.properties
جهاز التوجيه 1100 8081 $APIGEE_ROOT/customer/application/router.properties
Qpid 1102 8083 $APIGEE_ROOT/customer/application/qpid-server.properties
Postgres 1103 8084 $APIGEE_ROOT/customer/application/postgres-server.properties

استخدام JMX لمراقبة المكوّنات

توضّح الأقسام التالية كيفية استخدام JMX لمراقبة مكوّنات Edge.

تفعيل JMX

لتفعيل JMX بدون مصادقة أو اتصال مستند إلى طبقة المقابس الآمنة، اتّبِع الخطوات التالية. ملاحظة: في أنظمة الإنتاج، يجب تفعيل كل من المصادقة المشفّرة وبروتوكول طبقة المقابس الآمنة (SSL) لأغراض الأمان.

  1. عدِّل ملف الإعداد المناسب (راجِع مرجع ملف الإعداد). أنشئ ملف الإعداد إذا لم يكن متوفّرًا.
    conf_system_jmxremote_enable=true
  2. احفظ ملف الإعداد وتأكَّد من أنّه مملوك من قِبل apigee:apigee.
  3. إعادة تشغيل مكوّن Edge المناسب
    apigee-service edge-management-server restart

لإيقاف JMX، يمكنك إزالة السمة conf_system_jmxremote_enable أو تغيير قيمتها إلى false. بعد ذلك، أعِد تشغيل مكوّن Edge المناسب.

المصادقة في JMX

يتيح Edge for Private Cloud المصادقة المستندة إلى كلمة المرور باستخدام التفاصيل المخزّنة في الملفات. يمكنك تخزين كلمات المرور كقيمة تجزئة لمزيد من الأمان.

  1. لتفعيل مصادقة JMX في مكوّن edge-*، عليك تعديل ملف الإعداد المناسب (يُرجى الاطّلاع على مرجع ملف الإعداد). أنشئ ملف الإعداد إذا لم يكن متوفّرًا:
    conf_system_jmxremote_enable=true
    conf_system_jmxremote_authenticate=true
    conf_system_jmxremote_encrypted_auth=true
    conf_system_jmxremote_access_file=/opt/apigee/customer/application/management-server/jmxremote.access
    conf_system_jmxremote_password_file=/opt/apigee/customer/application/management-server/jmxremote.password
    احفظ ملف الإعداد وتأكَّد من أنّه مملوك من قِبل apigee:apigee.
  2. أنشئ تجزئة SHA256 لكلمة المرور:
    echo -n '' | openssl dgst -sha256
  3. أنشئ ملف jmxremote.password يتضمّن بيانات اعتماد مستخدم JMX:
    1. انسخ الملفات التالية من دليل $JAVA_HOME إلى الدليل /opt/apigee/customer/application/<component>/:
      cp ${JAVA_HOME}/lib/management/jmxremote.password.template $APIGEE_ROOT/customer/application/management-server/jmxremote.password
    2. عدِّل الملف وأضِف اسم المستخدم وكلمة المرور في JMX باستخدام البنية التالية:
      USERNAME <HASH-PASSWORD>
    3. تأكَّد من أنّ الملف مملوك لـ apigee وأنّ وضع الملف هو 400:
      chown apigee:apigee $APIGEE_ROOT/customer/application/management-server/jmxremote.password
      chmod 400 $APIGEE_ROOT/customer/application/management-server/jmxremote.password
  4. أنشئ ملف jmxremote.access يتضمّن أذونات مستخدم JMX:
    1. انسخ الملفات التالية من دليل $JAVA_HOME إلى الدليل /opt/apigee/customer/application/<component>/
      
      cp ${JAVA_HOME}/lib/management/jmxremote.access$APIGEE_ROOT/customer/application/management-server/jmxremote.password/jmxremote.access
    2. عدِّل الملف وأضِف اسم مستخدم JMX متبوعًا بإذن (READONLY/READWRITE)
      USERNAME READONLY
    3. تأكَّد من أنّ الملف مملوك لـ apigee وأنّ وضع الملف هو 400:
      chown apigee:apigee $APIGEE_ROOT/customer/application/management-server/jmxremote.password
      
      chmod 400 $APIGEE_ROOT/customer/application/management-server/jmxremote.access
  5. أعِد تشغيل مكوّن Edge المناسب:
    apigee-service edge-management-server restart

لإيقاف مصادقة JMX، يمكنك إزالة السمة conf_system_jmxremote_authenticate أو تغيير القيمة إلى false و إعادة تشغيل مكوّن Edge المناسب.

طبقة المقابس الآمنة في JMX

لتفعيل JMX المستند إلى طبقة المقابس الآمنة في مكوّن edge-*، اتّبِع الخطوات التالية:

  1. عدِّل ملف الإعدادات المناسب (يُرجى الاطّلاع على مرجع ملف الإعدادات). أنشئ ملف الإعداد إذا لم يكن متوفّرًا:
    conf_system_jmxremote_enable=true
    conf_system_jmxremote_ssl=true
    conf_system_javax_net_ssl_keystore=/opt/apigee/customer/application/management-server/jmxremote.keystore
    conf_system_javax_net_ssl_keystorepassword=<keystore-password>
    احفظ ملف الإعداد وتأكَّد من أنّه مملوك من قِبل apigee:apigee.
  2. جهِّز مخزن مفاتيح يحتوي على مفتاح الخادم وضَعه في المسار المقدَّم في الإعداد conf_system_javax_net_ssl_keystore أعلاه. تأكَّد من أنّ ملف مخزن المفاتيح قابل للقراءة من قِبل apigee:apigee.
  3. أعِد تشغيل مكوّن Edge المناسب:
    apigee-service edge-management-server restart

لإيقاف JMX المستند إلى طبقة المقابس الآمنة (SSL)، يمكنك إزالة السمة conf_system_jmxremote_ssl أو تغيير القيمة إلى false. أعِد تشغيل مكوّن Edge المناسب.

المراقبة عبر Jconsole

Monitoring instructions via jconsole remain the same as described in https://docs.apigee.com/private-cloud/v4.50.00/how-monitor#jconsole.

يمكن إضافة سطر واحد يفيد بأنّ "jconsole ستحتاج إلى البدء باستخدام مخزن الثقة وكلمة مرور مخزن الثقة في حال تفعيل طبقة المقابس الآمنة (SSL) لـ JMX". المرجع: https://docs.oracle.com/javase/8/docs/technotes/guides/management/jconsole.html

المراقبة باستخدام JConsole

استخدِم JConsole (أداة متوافقة مع JMX) لإدارة ومراقبة فحص السلامة وإحصاءات العمليات. باستخدام JConsole، يمكنك استخدام إحصاءات JMX التي تعرضها خوادمك وعرضها في واجهة رسومية. لمزيد من المعلومات، يُرجى الاطّلاع على استخدام JConsole.

يجب بدء JConsole باستخدام مخزن الثقة وكلمة مرور مخزن الثقة في حال تفعيل طبقة المقابس الآمنة (SSL) لـ JMX. يُرجى الاطّلاع على استخدام JConsole.

تستخدم JConsole عنوان URL للخدمة التالية لمراقبة سمات JMX (MBeans) التي يتم تقديمها من خلال JMX:

service:jmx:rmi:///jndi/rmi://IP_address:port_number/jmxrmi

المكان:

  • ‫IP_address هو عنوان IP الخاص بالخادم الذي تريد مراقبته.
  • ‫port_number هو رقم منفذ JMX للخادم الذي تريد مراقبته.

على سبيل المثال، لمراقبة خادم الإدارة، يمكنك إصدار أمر مثل التالي (بافتراض أنّ عنوان IP الخاص بالخادم هو 216.3.128.12):

service:jmx:rmi:///jndi/rmi://216.3.128.12:1099/jmxrmi

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

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

JMX MBeans سمات JMX

الذاكرة

HeapMemoryUsage

NonHeapMemoryUsage

الاستخدام

مرجع ملف الإعداد

توضّح الأقسام التالية التغييرات التي قد تحتاج إلى إجرائها على ملفات إعدادات مكوّنات Edge للإعدادات ذات الصلة بـ JMX. لمزيد من المعلومات، يُرجى الاطّلاع على مراقبة المنافذ وملفات الإعداد.

إعدادات JMX التي ستتم إضافتها إلى ملف إعداد المكوّن المناسب

  • تفعيل وكيل JMX على مكوّن Edge تكون القيمة التلقائية مضبوطة على false.
    conf_system_jmxremote_enable=true

إعدادات المصادقة المستندة إلى كلمة المرور

  • تفعيل المصادقة المستندة إلى كلمة المرور تكون القيمة التلقائية مضبوطة على false.
    conf_system_jmxremote_authenticate=true
  • المسار للوصول إلى الملف يجب أن يكون مملوكًا لمستخدم Apigee فقط وأن يكون قابلاً للقراءة من قِبله فقط.
    conf_system_jmxremote_access_file=/opt/apigee/customer/application/management-server/jmxremote.access
  • المسار إلى ملف كلمة المرور يجب أن يكون مملوكًا لمستخدم Apigee فقط وأن يكون قابلاً للقراءة من قِبله فقط.
    conf_system_jmxremote_password_file=/opt/apigee/customer/application/management-server/jmxremote.password
  • تفعيل تخزين كلمة المرور بتنسيق مشفَّر تكون القيمة التلقائية مضبوطة على false.
    conf_system_jmxremote_encrypted_auth=true

إعدادات JMX المستندة إلى طبقة المقابس الآمنة (SSL)

  • فعِّل طبقة المقابس الآمنة (SSL) لاتصال JMX. تكون القيمة التلقائية مضبوطة على false.
    conf_system_jmxremote_ssl=true
  • المسار إلى ملف تخزين المفاتيح يجب أن يكون مملوكًا لمستخدم Apigee فقط وأن يكون قابلاً للقراءة من قِبله فقط.
    conf_system_javax_net_ssl_keystore=/opt/apigee/customer/application/management-server/jmxremote.keystore
  • كلمة مرور مخزن المفاتيح:
    conf_system_javax_net_ssl_keystorepassword=changeme

إعدادات JMX الاختيارية

القيم المدرَجة هي قيم تلقائية ويمكن تغييرها.

  • منفذ JMX يتم إدراج القيم التلقائية في الجدول أدناه.
    conf_system_jmxremote_port=
  • منفذ JMX RMI بشكل تلقائي، ستختار عملية Java منفذًا عشوائيًا.
    conf_system_jmxremote_rmi_port=
  • اسم المضيف للنماذج الأولية البعيدة عنوان IP التلقائي للمضيف المحلي
    conf_system_java_rmi_server_hostname=
  • حماية سجلّ JMX باستخدام طبقة المقابس الآمنة (SSL) القيمة التلقائية هي false. لا ينطبق إلا إذا تم تفعيل طبقة المقابس الآمنة (SSL).
    conf_system_jmxremote_registry_ssl=false

المراقبة باستخدام Management API

يتضمّن Edge العديد من واجهات برمجة التطبيقات التي يمكنك استخدامها لإجراء عمليات التحقّق من الخدمة على خوادمك، بالإضافة إلى التحقّق من المستخدمين والمؤسسات وعمليات النشر. ويوضّح هذا القسم واجهات برمجة التطبيقات هذه.

إجراء عمليات التحقّق من الخدمة

توفّر Management API عدة نقاط نهاية لمراقبة المشاكل في خدماتك وتشخيصها. وتشمل نقاط النهاية هذه ما يلي:

نقطة نهاية الوصف
/servers/self/up

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

إذا كانت الخدمة قيد التشغيل، ستعرض نقطة النهاية هذه الاستجابة التالية:

<ServerField>
  <Up>true</Up>
</ServerField>

إذا كانت الخدمة غير مفعَّلة، ستتلقّى ردًا مشابهًا لما يلي (استنادًا إلى الخدمة التي تتحقّق منها وكيفية التحقّق منها):

curl: Failed connect to localhost:port_number; Connection refused
/servers/self

تعرض معلومات عن الخدمة، بما في ذلك:

  • خصائص الإعدادات
  • وقت البدء ووقت التشغيل
  • معلومات حول الإصدار وRPM وUUID
  • اسم المضيف وعنوان IP الداخلي والخارجي
  • المنطقة ومجموعة الإعلانات المتسلسلة
  • السمة <isUp>، التي تشير إلى ما إذا كانت الخدمة قيد التشغيل

يتطلّب طلب بيانات من واجهة برمجة التطبيقات هذا المصادقة باستخدام بيانات اعتماد مشرف Apigee.

لاستخدام نقاط النهاية هذه، يمكنك استدعاء أداة مساعدة مثل curl مع الأوامر التي تستخدم بناء الجملة التالي:

curl http://host:port_number/v1/servers/self/up -H "Accept: [application/json|application/xml]"
curl http://host:port_number/v1/servers/self -u username:password -H "Accept: [application/json|application/xml]"

المكان:

  • ‫host هو عنوان IP الخاص بالخادم الذي تريد التحقّق منه. إذا كنت مسجّلاً الدخول إلى الخادم، يمكنك استخدام "localhost"، وإلا حدِّد عنوان IP للخادم بالإضافة إلى اسم المستخدم وكلمة المرور.
  • ‫port_number هو منفذ Management API للخادم الذي تريد التحقّق منه. وهذا المنفذ مختلف لكل نوع من أنواع المكوّنات. على سبيل المثال، منفذ Management API في Management Server هو 8080. للحصول على قائمة بأرقام منافذ Management API التي يمكن استخدامها، يُرجى الاطّلاع على منافذ مراقبة JMX وManagement API

لتغيير تنسيق الردّ، يمكنك تحديد عنوان Accept على أنّه "application/json" أو "application/xml".

يحصل المثال التالي على حالة جهاز التوجيه على المضيف المحلي (المنفذ 8081):

curl http://localhost:8081/v1/servers/self/up -H "Accept: application/xml"

يحصل المثال التالي على معلومات حول معالج الرسائل على 216.3.128.12 (المنفذ 8082):

curl http://216.3.128.12:8082/v1/servers/self -u sysAdminEmail:password
  -H "Accept: application/xml"

مراقبة حالة المستخدم والمؤسسة والنشر

يمكنك استخدام Management API لمراقبة حالة المستخدم والمؤسسة والنشر للوكلاء على خوادم الإدارة ومعالجات الرسائل من خلال إصدار الأوامر التالية:

curl http://host:port_number/v1/users -u sysAdminEmail:password
curl http://host:port_number/v1/organizations -u sysAdminEmail:password
curl http://host:port_number/v1/organizations/orgname/deployments -u sysAdminEmail:password

حيث يكون port_number إما 8080 لخادم الإدارة أو 8082 لمعالج الرسائل.

يتطلب منك هذا الطلب إجراء مصادقة باستخدام اسم المستخدم وكلمة المرور الخاصين بإدارة النظام.

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

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

    حيث service_name:

    • edge-management-server
    • edge-message-processor

التحقّق من الحالة باستخدام الأمر apigee-service

يمكنك تحديد مشاكل خدمات Edge وحلّها باستخدام الأمر apigee-service عند تسجيل الدخول إلى الخادم الذي يشغّل الخدمة.

للتحقّق من حالة خدمة باستخدام apigee-service:

  1. سجِّل الدخول إلى الخادم وشغِّل الأمر التالي:
    /opt/apigee/apigee-service/bin/apigee-service service_name status

    حيث تكون السمة service_name إحدى القيم التالية:

    • خادم الإدارة: edge-management-server
    • معالج الرسائل: edge-message-processor
    • Postgres: edge-postgres-server
    • ‫Qpid: ‏edge-qpid-server
    • جهاز التوجيه: edge-router

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

    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor status
  2. إذا لم تكن الخدمة قيد التشغيل، ابدأ الخدمة:
    /opt/apigee/apigee-service/bin/apigee-service service_name start
  3. بعد إعادة تشغيل الخدمة، تأكَّد من أنّها تعمل، إما باستخدام الأمر apigee-service status الذي استخدمته سابقًا أو باستخدام Management API الموضَّحة في المراقبة باستخدام Management API.

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

    curl -v http://localhost:port_number/v1/servers/self/up

    حيث يمثّل port_number منفذ Management API للخدمة.

    يفترض هذا المثال أنّك سجّلت الدخول إلى الخادم ويمكنك استخدام "localhost" كاسم المضيف. للتحقّق من الحالة عن بُعد باستخدام Management API، عليك تحديد عنوان IP للخادم وتضمين اسم المستخدم وكلمة المرور الخاصَّين بمشرف النظام في طلب البيانات من واجهة برمجة التطبيقات.

مراقبة Postgres

يتيح Postgres استخدام العديد من الأدوات المساعدة التي يمكنك استخدامها للتحقّق من حالته. يرد وصف هذه الأدوات المساعدة في الأقسام التالية.

التحقّق من المؤسسات والبيئات على Postgres

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

curl -v http://postgres_IP:8084/v1/servers/self/organizations

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

التحقّق من حالة الإحصاءات

يمكنك التحقّق من حالة خوادم إحصاءات Postgres وQpid من خلال إصدار الأمر curl التالي:

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

من المفترض أن يعرض النظام حالة نجاح لجميع خوادم الإحصاءات، كما هو موضّح في المثال التالي:

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

يصف هذا القسم الأساليب التي يمكنك استخدامها خصيصًا لمراقبة قاعدة بيانات Postgres.

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

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

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

  1. يجب تثبيت النص البرمجي check_postgres.pl على كل عقدة Postgres.
  2. تأكَّد من تثبيت perl-Time-HiRes.x86_64، وهي وحدة Perl التي تنفّذ المنبّهات ذات الدقة العالية والسكون وgettimeofday وموقِّتات التمرين المتناوب. على سبيل المثال، يمكنك تثبيتها باستخدام الأمر التالي:
    yum install perl-Time-HiRes.x86_64
  3. ‫CentOS 7: قبل استخدام check_postgres.pl على CentOS v7، ثبِّت perl-Data-Dumper.x86_64 RPM.

check_postgres.pl output

يتوافق الناتج التلقائي لطلبات البيانات من واجهة برمجة التطبيقات باستخدام 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

إجراء عمليات التحقّق من قاعدة البيانات

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

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

بعد ذلك، شغِّل:

\d analytics."org.env.fact"

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

يمكنك إجراء عمليات تحقّق من واجهة برمجة التطبيقات على جهاز Postgres من خلال تنفيذ الأمر curl التالي:

curl -v http://postgres_IP:8084/v1/servers/self/health

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

مراجع Postgres

للحصول على معلومات إضافية حول مراقبة خدمة Postgres، يُرجى الاطّلاع على ما يلي:

Apache Cassandra

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

تفعيل مصادقة JMX لـ Cassandra

يمكنك تفعيل مصادقة JMX لـ Cassandra. بعد إجراء ذلك، سيُطلب منك بعد ذلك تمرير اسم مستخدم وكلمة مرور لجميع المكالمات إلى أداة nodetool.

لتفعيل مصادقة JMX في Cassandra:

  1. أنشئ ملف cassandra.properties وعدِّله:
    1. عدِّل ملف /opt/apigee/customer/application/cassandra.properties. إذا لم يكن الملف متوفّرًا، أنشِئه.
    2. أضِف ما يلي إلى الملف:
      conf_cassandra_env_com.sun.management.jmxremote.authenticate=true
      conf_cassandra_env_com.sun.management.jmxremote.password.file=${APIGEE_ROOT}/customer/application/apigee-cassandra/jmxremote.password
      conf_cassandra_env_com.sun.management.jmxremote.access.file=${APIGEE_ROOT}/customer/application/apigee-cassandra/jmxremote.access
    3. احفظ ملف cassandra.properties.
    4. غيِّر مالك الملف إلى apigee:apigee، كما هو موضّح في المثال التالي:
      chown apigee:apigee /opt/apigee/customer/application/cassandra.properties

    لمزيد من المعلومات حول استخدام ملفات المواقع لضبط الرموز المميّزة، يُرجى الاطّلاع على كيفية ضبط Edge.

  2. إنشاء jmx_auth.sh وتعديلها:
    1. أنشِئ ملفًا في الموقع التالي إذا لم يكن متوفّرًا:
      /opt/apigee/customer/application/jmx_auth.sh
    2. أضِف السمات التالية إلى الملف:
      export CASS_JMX_USERNAME=JMX_USERNAME
      export CASS_JMX_PASSWORD=JMX_PASSWORD
    3. احفظ ملف jmx_auth.sh.
    4. تحديد مصدر الملف:
      source /opt/apigee/customer/application/jmx_auth.sh
  3. انسخ ملف jmxremote.password وعدِّله:
    1. انسخ الملف التالي من دليل $JAVA_HOME إلى /opt/apigee/customer/application/apigee-cassandra/:
      cp ${JAVA_HOME}/lib/management/jmxremote.password.template $APIGEE_ROOT/customer/application/apigee-cassandra/jmxremote.password
    2. عدِّل ملف jmxremote.password وأضِف اسم المستخدم وكلمة المرور لـ JMX باستخدام البنية التالية:
      JMX_USERNAME JMX_PASSWORD

      حيث JMX_USERNAME وJMX_PASSWORD هما اسم المستخدم وكلمة المرور لـ JMX اللذان تم ضبطهما سابقًا.

    3. تأكَّد من أنّ الملف مملوك لـ "apigee" وأنّ وضع الملف هو 400:
      chown apigee:apigee /opt/apigee/customer/application/apigee-cassandra/jmxremote.password
      chmod 400 /opt/apigee/customer/application/apigee-cassandra/jmxremote.password
  4. انسخ ملف jmxremote.access وعدِّله:
    1. انسخ الملف التالي من دليل $JAVA_HOME إلى /opt/apigee/customer/application/apigee-cassandra/:
      cp ${JAVA_HOME}/lib/management/jmxremote.access
      $APIGEE_ROOT/customer/application/apigee-cassandra/jmxremote.access
    2. عدِّل ملف jmxremote.access وأضِف الدور التالي:
      JMX_USERNAME readwrite
    3. تأكَّد من أنّ الملف مملوك لـ "apigee" وأنّ وضع الملف هو 400:
      chown apigee:apigee /opt/apigee/customer/application/apigee-cassandra/jmxremote.access
      chmod 400 /opt/apigee/customer/application/apigee-cassandra/jmxremote.access
  5. شغِّل configure على Cassandra:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure
  6. أعِد تشغيل Cassandra:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  7. كرِّر هذه العملية على جميع عُقد Cassandra الأخرى.

تفعيل تشفير كلمة مرور JMX

لتفعيل تشفير كلمة مرور JMX، اتّبِع الخطوات التالية:

  1. افتح الملف source/conf/casssandra-env.sh.
  2. أنشئ ملف cassandra.properties وعدِّله:
    1. عدِّل ملف /opt/apigee/customer/application/cassandra.properties. إذا لم يكن الملف متوفّرًا، أنشِئه.
    2. أضِف ما يلي إلى الملف:
      conf_cassandra_env_com.sun.management.jmxremote.encrypted.authenticate=true
    3. احفظ ملف cassandra.properties.
    4. غيِّر مالك الملف إلى apigee:apigee، كما هو موضّح في المثال التالي:
      chown apigee:apigee /opt/apigee/customer/application/cassandra.properties
  3. في سطر الأوامر، أنشئ تجزئة (تجزئات) SHA1 لكلمات المرور المطلوبة عن طريق إدخال echo -n 'Secret' | openssl dgst -sha1
  4. اضبط كلمات المرور مقابل اسم المستخدم في $APIGEE_ROOT/customer/application/apigee-cassandra/jmxremote.password (الذي تم إنشاؤه في القسم السابق).
  5. شغِّل configure على Cassandra:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure
  6. أعِد تشغيل Cassandra:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  7. كرِّر هذه العملية على جميع عُقد Cassandra الأخرى.

تفعيل JMX مع طبقة المقابس الآمنة (SSL) لـ Cassandra

يؤدي تفعيل JMX مع طبقة المقابس الآمنة (SSL) إلى توفير أمان وتشفير إضافيَين للاتصال المستند إلى JMX مع Cassandra. لتفعيل JMX مع طبقة المقابس الآمنة، عليك تقديم مفتاح وشهادة إلى Cassandra لقبول اتصالات JMX المستندة إلى طبقة المقابس الآمنة. يجب أيضًا ضبط nodetool (وأي أدوات أخرى تتصل بـ Cassandra عبر JMX) لطبقة المقابس الآمنة (SSL).

يتوافق JMX المزوّد ببروتوكول طبقة المقابس الآمنة (SSL) مع كلمات مرور JMX المشفّرة والنص العادي.

لتفعيل JMX مع طبقة المقابس الآمنة (SSL) في Cassandra، اتّبِع الخطوات التالية:

  1. فعِّل JMX. فعِّل تشفير كلمة المرور إذا لزم الأمر.
  2. تفعيل مصادقة JMX لـ Cassandra كما هو موضّح أعلاه. تأكَّد من أنّ nodetool يعمل مع اسم المستخدم وكلمة المرور اللذين تم ضبطهما.
    /opt/apigee/apigee-cassandra/bin/nodetool -u <JMX_USER> -pw <JMX_PASS> ring
  3. إعداد مخزن المفاتيح ومخزن الثقة

    • يجب أن يحتوي مخزن المفاتيح على مفتاح وشهادة، ويُستخدم لضبط خادم Cassandra. إذا كان مخزن المفاتيح يحتوي على عدة أزواج مفاتيح، تستخدم Cassandra أول زوج مفاتيح لتفعيل طبقة المقابس الآمنة.

      يُرجى العِلم أنّ كلمات المرور لمخزن المفاتيح والمفتاح يجب أن تكون متطابقة (الخيار التلقائي عند إنشاء المفتاح باستخدام أداة keytool).

    • يجب أن يحتوي Truststore على الشهادة فقط ويستخدمه العملاء (الأوامر المستندة إلى خدمة apigee أو nodetool) للاتصال عبر JMX.

    بعد التأكّد من استيفاء المتطلبات أعلاه:

    1. ضَع ملف تخزين المفاتيح في /opt/apigee/customer/application/apigee-cassandra/.
    2. تأكَّد من أنّ ملف مخزن المفاتيح قابل للقراءة من قِبل مستخدم Apigee فقط من خلال إدخال
      chown apigee:apigee /opt/apigee/customer/application/apigee-cassandra/keystore.node1
      chmod 400 /opt/apigee/customer/application/apigee-cassandra/keystore.node1
  4. اضبط Cassandra لـ JMX باستخدام طبقة المقابس الآمنة من خلال اتّباع الخطوات التالية:
    1. أوقِف عقدة Cassandra من خلال إدخال
      apigee-service apigee-cassandra stop
    2. فعِّل طبقة المقابس الآمنة (SSL) في Cassandra من خلال فتح الملف /opt/apigee/customer/application/cassandra.properties وإضافة الأسطر التالية:
      conf_cassandra_env_com.sun.management.jmxremote.ssl=true
      conf_cassandra_env_javax.net.ssl.keyStore=/opt/apigee/customer/application/apigee-cassandra/keystore.node1
      conf_cassandra_env_javax.net.ssl.keyStorePassword=keystore-password
    3. غيِّر مالك الملف إلى apigee:apigee، كما هو موضّح في المثال التالي:
      chown apigee:apigee /opt/apigee/customer/application/cassandra.properties
    4. شغِّل configure على Cassandra:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure
    5. أعِد تشغيل Cassandra:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
    6. كرِّر هذه العملية على جميع عُقد Cassandra الأخرى.
    7. ابدأ عقدة Cassandra عن طريق إدخال
      apigee-service apigee-cassandra start
  5. اضبط أوامر Cassandra في apigee-service. يجب ضبط متغيّرات بيئة معيّنة أثناء تشغيل أوامر apigee-service، بما في ذلك الأوامر التالية:
    apigee-service apigee-cassandra stop
    apigee-service apigee-cassandra wait_for_ready
    apigee-service apigee-cassandra ring
    apigee-service apigee-cassandra backup

    هناك عدة خيارات لضبط apigee-service لمصادقة JMX وSSL. حدِّد خيارًا استنادًا إلى سهولة الاستخدام وممارسات الأمان.

    الخيار 1 (وسيطات طبقة المقابس الآمنة المخزّنة في ملف)

    اضبط متغيّرات البيئة التالية:

    export CASS_JMX_USERNAME=ADMIN
    # Provide encrypted password here if you have setup JMX password encryption
    export CASS_JMX_PASSWORD=PASSWORD
    export CASS_JMX_SSL=Y

    أنشئ ملفًا في الدليل الرئيسي لمستخدم Apigee (/opt/apigee).

    $HOME/.cassandra/nodetool-ssl.properties

    عدِّل الملف وأضِف الأسطر التالية:

    -Djavax.net.ssl.trustStore=<path-to-truststore.node1>
    -Djavax.net.ssl.trustStorePassword=<truststore-password>
    -Dcom.sun.management.jmxremote.registry.ssl=true

    تأكَّد من أنّ ملف مخزن الثقة قابل للقراءة من قِبل مستخدم Apigee.

    نفِّذ الأمر apigee-service التالي. إذا تم تشغيله بدون خطأ، تكون إعداداتك صحيحة.

    apigee-service apigee-cassandra ring

    الخيار 2 (وسيطات طبقة المقابس الآمنة المخزّنة في متغيرات البيئة)

    اضبط متغيّرات البيئة التالية:

    export CASS_JMX_USERNAME=ADMIN
    # Provide encrypted password here if you have setup JMX password encryption
    export CASS_JMX_PASSWORD=PASSWORD
    export CASS_JMX_SSL=Y
    # Ensure the truststore file is accessible by Apigee user.
    export CASS_JMX_TRUSTSTORE=<path-to-trustore.node1>
    export CASS_JMX_TRUSTSTORE_PASSWORD=<truststore-password>

    نفِّذ الأمر apigee-service التالي. إذا تم تشغيله بدون خطأ، تكون إعداداتك صحيحة.

    apigee-service apigee-cassandra ring

    الخيار 3 (يتم تمرير وسيطات طبقة المقابس الآمنة مباشرةً إلى apigee-service)

    نفِّذ أي أمر apigee-service مثل الأمر أدناه. ولست بحاجة إلى ضبط أي متغيّرات بيئة.

    CASS_JMX_USERNAME=ADMIN CASS_JMX_PASSWORD=PASSWORD CASS_JMX_SSL=Y CASS_JMX_TRUSTSTORE=<path-to-trustore.node1> CASS_JMX_TRUSTSTORE_PASSWORD=<trustore-password> /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra ring
  6. إعداد nodetool تتطلّب أداة Nodetool تمرير مَعلمات JMX إليها. هناك طريقتان يمكنك من خلالهما ضبط nodetool للتشغيل باستخدام JMX المفعّل عبر طبقة المقابس الآمنة، كما هو موضّح في خيارات الضبط أدناه:

    تختلف الخيارات في طريقة تمرير الإعدادات ذات الصلة بطبقة المقابس الآمنة إلى nodetool. وفي كلتا الحالتَين، يجب أن يكون لدى المستخدم الذي يشغّل nodetool أذونات بالقراءة على ملف truststore. حدِّد خيارًا مناسبًا استنادًا إلى سهولة الاستخدام وممارسات الأمان التي تتّبعها.

    لمزيد من المعلومات عن مَعلمات nodetool، يُرجى الاطّلاع على مستندات DataStax.

    خيار الإعداد 1

    أنشئ ملفًا في الدليل الرئيسي للمستخدم الذي يشغّل nodetool.

    $HOME/.cassandra/nodetool-ssl.properties

    أضِف الأسطر التالية إلى الملف:

    -Djavax.net.ssl.trustStore=<path-to-truststore.node1>
    -Djavax.net.ssl.trustStorePassword=<truststore-password>
    -Dcom.sun.management.jmxremote.registry.ssl=true

    يجب أن يكون مسار مخزن الثقة المحدّد أعلاه متاحًا لأي مستخدم يشغّل nodetool.

    شغِّل nodetool باستخدام الخيار --ssl.

    /opt/apigee/apigee-cassandra/bin/nodetool --ssl -u <jmx-user-name> -pw <jmx-user-password> -h localhost ring

    خيار الإعداد 2

    شغِّل nodetool كأمر واحد مع المَعلمات الإضافية المدرَجة أدناه.

    /opt/apigee/apigee-cassandra/bin/nodetool -Djavax.net.ssl.trustStore=<path-to-truststore.node1> -Djavax.net.ssl.trustStorePassword=<truststore-password> -Dcom.sun.management.jmxremote.registry.ssl=true -Dssl.enable=true -u <jmx-user-name> -pw <jmx-user-password> -h localhost ring

إلغاء إعدادات طبقة المقابس الآمنة

إذا كنت بحاجة إلى العودة إلى إعدادات SSL الموضّحة في الإجراء أعلاه، اتّبِع الخطوات التالية:

  1. إيقاف apigee-cassandraمن خلال إدخال
    apigee-service apigee-cassandra stop
  2. أزِل السطر conf_cassandra-env_com.sun.management.jmxremote.ssl=true من الملف /opt/apigee/customer/application/cassandra.properties.
  3. الإشارة إلى الأسطر التالية في /opt/apigee/apigee-cassandra/source/conf/cassandra-env.sh باعتبارها تعليقًا
    # JVM_OPTS="$JVM_OPTS -Djavax.net.ssl.keyStore=/opt/apigee/data/apigee-cassandra/keystore.node0"
    # JVM_OPTS="$JVM_OPTS -Djavax.net.ssl.keyStorePassword=keypass"
    # JVM_OPTS="$JVM_OPTS -Dcom.sun.management.jmxremote.registry.ssl=true”
  4. ابدأ "apigee-cassandra" من خلال إدخال
  5. apigee-service apigee-cassandra start
  6. أزِل متغيّر البيئة CASS_JMX_SSL إذا تم ضبطه.

    unset CASS_JMX_SSL
  7. تأكَّد من أنّ الطلبات المستندة إلى apigee-service، مثل ring وstop وbackup وما إلى ذلك، تعمل بشكل صحيح.
  8. التوقف عن استخدام مفتاح التبديل --ssl مع nodetool

إيقاف مصادقة JMX لـ Cassandra

لإيقاف مصادقة JMX في Cassandra:

  1. تعديل "/opt/apigee/customer/application/cassandra.properties".
  2. أزِل السطر التالي في الملف:
    conf_cassandra-env_com.sun.management.jmxremote.authenticate=true
  3. شغِّل configure على 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 الأخرى.

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

استخدِم JConsole وعنوان URL للخدمة التالي لمراقبة سمات JMX ‏ (MBeans) التي يتم تقديمها من خلال JMX:

service:jmx:rmi:///jndi/rmi://IP_address:7199/jmxrmi

حيث يمثّل IP_address عنوان IP لخادم 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.

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

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

    ما عليك سوى تمرير اسم المستخدم وكلمة المرور في حال تفعيل مصادقة JMX لـ Cassandra.

    تظهر نتيجة الأمر أعلاه كما هو موضّح أدناه:

    Datacenter: dc-1
    ==========
    Address            Rack     Status State   Load    Owns    Token
    192.168.124.201    ra1      Up     Normal  1.67 MB 33,33%  0
    192.168.124.202    ra1      Up     Normal  1.68 MB 33,33%  5671...5242
    192.168.124.203    ra1      Up     Normal  1.67 MB 33,33%  1134...0484
  2. معلومات عامة عن العُقد (طلب لكل عُقدة)
    nodetool [-u username -pw password]  -h localhost info

    تظهر نتيجة الأمر أعلاه على النحو التالي:

    ID                     : e2e42793-4242-4e82-bcf0-oicu812
    Gossip active          : true
    Thrift active          : true
    Native Transport active: true
    Load                   : 273.71 KB
    Generation No          : 1234567890
    Uptime (seconds)       : 687194
    Heap Memory (MB)       : 314.62 / 3680.00
    Off Heap Memory (MB)   : 0.14
    Data Center            : dc-1
    Rack                   : ra-1
    Exceptions             : 0
    Key Cache              : entries 150, size 13.52 KB, capacity 100 MB, 1520781 hits, 1520923 requests, 1.000 recent hit rate, 14400 save period in seconds
    Row Cache              : entries 0, size 0 bytes, capacity 0 bytes, 0 hits, 0 requests, NaN recent hit rate, 0 save period in seconds
    Counter Cache          : entries 0, size 0 bytes, capacity 50 MB, 0 hits, 0 requests, NaN recent hit rate, 7200 save period in seconds
    Token                  : 0
  3. حالة خادم Thrift (واجهة برمجة تطبيقات العميل)
    nodetool [-u username -pw password] -h localhost statusthrift

    ستظهر نتيجة الأمر أعلاه على النحو التالي:

    running
  4. حالة عمليات نقل البيانات: راقِب عدد الزيارات لعُقد Cassandra:
    nodetool [-u username -pw password] -h localhost netstats

    ستظهر نتيجة الأمر أعلاه على النحو التالي:

    Mode: NORMAL
    Not sending any streams.
    Read Repair Statistics:
    Attempted: 151612
    Mismatch (Blocking): 0
    Mismatch (Background): 0
    Pool Name                    Active   Pending      Completed   Dropped
    Commands                        n/a         0              0         0
    Responses                       n/a         0              0       n/a

لمزيد من المعلومات حول nodetool، يُرجى الاطّلاع على لمحة عن أداة nodetool المساعدة.

مورد 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، يُرجى الاطّلاع على: مرجع أوامر Apache ZooKeeper.

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

  • ‫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
  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 التالية:

    python zookeeper.py 192.168.124.201 ruok
    python zookeeper.py 192.168.124.201 stat

اختبار مستوى 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:

    Enter LDAP Password:

    بعد إدخال كلمة المرور، سيظهر لك ردّ في النموذج:

    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) للحصول على معلومات حول ذاكرة التخزين المؤقت.