איך לעקוב

במסמך הזה מתוארות שיטות המעקב אחר רכיבים שנתמכים בפריסה מקומית של Apigee Edge לענן פרטי.

סקירה כללית

ב-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 יציאת ה-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, מבצעים את השלבים הבאים. הערה: במערכות ייצור, צריך להפעיל גם אימות מוצפן וגם 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 תומך באימות מבוסס-סיסמה באמצעות פרטים שמאוחסנים בקובצים. אתם יכולים לאחסן סיסמאות כ-Hash כדי להגביר את האבטחה.

  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 המתאים.

SSL ב-JMX

כדי להפעיל JMX מבוסס-SSL ברכיב 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

הוראות המעקב דרך jconsole נותרו ללא שינוי, כפי שמתואר במאמר https://docs.apigee.com/private-cloud/v4.52.01/how-monitor#jconsole.

אפשר להוסיף שורה אחת: "צריך להפעיל את jconsole עם truststore והסיסמה של truststore אם SSL מופעל ב-JMX". מקור: https://docs.oracle.com/javase/8/docs/technotes/guides/management/jconsole.html

מעקב באמצעות JConsole

שימוש ב-JConsole (כלי תואם ל-JMX) לניהול ולמעקב אחרי בדיקות תקינות וסטטיסטיקות של תהליכים. באמצעות JConsole אפשר לצרוך נתונים סטטיסטיים של JMX שנחשפו על ידי השרתים ולהציג אותם בממשק גרפי. מידע נוסף זמין במאמר שימוש ב-JConsole.

אם SSL מופעל ב-JMX, צריך להפעיל את JConsole עם truststore וסיסמה ל-truststore. שימוש ב-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 ברכיב הקצה. ברירת המחדל היא 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
  • סיסמת Keystore:
    conf_system_javax_net_ssl_keystorepassword=changeme

הגדרות אופציונליות של JMX

הערכים שמפורטים הם ערכי ברירת מחדל, ואפשר לשנות אותם.

  • יציאת JMX. ערכי ברירת המחדל מפורטים בטבלה שבהמשך.
    conf_system_jmxremote_port=
  • יציאת RMI של JMX. כברירת מחדל, תהליך Java יבחר יציאה אקראית.
    conf_system_jmxremote_rmi_port=
  • שם המארח של stubs מרוחקים. כתובת ה-IP שמוגדרת כברירת מחדל למארח המקומי.
    conf_system_java_rmi_server_hostname=
  • הגנה על מאגר JMX באמצעות SSL. ברירת המחדל היא FALSE. רלוונטי רק אם SSL מופעל.
    conf_system_jmxremote_registry_ssl=false

מעקב באמצעות Management API

‏Edge כולל כמה ממשקי API שאפשר להשתמש בהם כדי לבצע בדיקות שירות בשרתים, וגם כדי לבדוק את המשתמשים, הארגונים והפריסות שלכם. בקטע הזה מתוארים ממשקי ה-API האלה.

ביצוע בדיקות שירות

ב-Management API יש כמה נקודות קצה למעקב ולאבחון בעיות בשירותים. נקודות הקצה האלה כוללות:

נקודת קצה תיאור
/servers/self/up

בדיקה אם שירות פועל. קריאת ה-API הזו לא מחייבת אימות.

אם השירות פועל, נקודת הקצה הזו מחזירה את התגובה הבאה:

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

אם השירות לא פועל, תקבלו תגובה דומה לזו (בהתאם לשירות ולדרך שבה בדקתם אותו):

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

הפונקציה מחזירה מידע על השירות, כולל:

  • מאפייני תצורה
  • שעת ההתחלה וזמן הפעולה
  • פרטי build,‏ RPM ו-UUID
  • שם מארח וכתובת IP פנימיים וחיצוניים
  • אזור ו-Pod
  • המאפיין <isUp>, שמציין אם השירות פועל

כדי לבצע את קריאת ה-API הזו, צריך לבצע אימות באמצעות פרטי הכניסה של האדמין ב-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 בשרת הניהול היא 8080. רשימה של מספרי יציאות ל-Management API לשימוש מפורטת במאמר יציאות למעקב אחרי JMX ו-Management API.

כדי לשנות את הפורמט של התגובה, אפשר לציין את הכותרת Accept בתור 'application/json' או 'application/xml'.

בדוגמה הבאה מוצגת קבלת הסטטוס של הנתב ב-localhost (יציאה 8081):

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

בדוגמה הבאה מוצגת קבלת מידע על Message Processor בכתובת 216.3.128.12 (יציאה 8082):

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

מעקב אחר סטטוס המשתמשים, הארגון והפריסה

אפשר להשתמש ב-Management API כדי לעקוב אחרי סטטוס המשתמשים, הארגון והפריסה של שרת ה-proxy שלכם בשרתי ניהול ובמעבדי הודעות. לשם כך, מריצים את הפקודות הבאות:

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 של השרת ולכלול את שם המשתמש והסיסמה של אדמין המערכת בקריאת ה-API.

ניטור של 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

המערכת אמורה להציג סטטוס הצלחה לכל שרתי Analytics, כפי שמוצג בדוגמה הבאה:

{
  "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 ו-interval. לדוגמה, אפשר להתקין אותו באמצעות הפקודה הבאה:
    yum install perl-Time-HiRes.x86_64
  3. CentOS 7: לפני שמשתמשים ב-check_postgres.pl ב-CentOS v7, צריך להתקין את ה-RPM‏ perl-Data-Dumper.x86_64.

פלט של check_postgres.pl

פלט ברירת המחדל של הקריאות ל-API באמצעות 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

כדי לבצע בדיקות API במכונה של 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 עם SSL, צריך לספק מפתח ואישור ל-Cassandra כדי לקבל חיבורי JMX מבוססי-SSL. צריך גם להגדיר את nodetool (וכלים אחרים שמתקשרים עם Cassandra דרך JMX) ל-SSL.

JMX עם תמיכה ב-SSL תומך גם בסיסמה של JMX בטקסט ללא הצפנה וגם בסיסמה של 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 משתמשת בזוג המפתחות הראשון כדי להפעיל את SSL.

      שימו לב שצריך להשתמש באותה סיסמה למאגר המפתחות ולמפתח (ברירת המחדל כשיוצרים את המפתח באמצעות keytool).

    • Truststore צריך להכיל את האישור בלבד, והלקוחות (פקודות שמבוססות על apigee-service או 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 עם SSL:
    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. מגדירים את הפקודות של apigee-service Cassandra. צריך להגדיר משתני סביבה מסוימים בזמן הרצת הפקודות של 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 (ארגומנטים של SSL שמאוחסנים בקובץ)

    מגדירים את משתני הסביבה הבאים:

    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 יכול לקרוא את קובץ trustore.

    מריצים את הפקודה apigee-service הבאה. אם הוא פועל ללא שגיאות, ההגדרות שלכם נכונות.

    apigee-service apigee-cassandra ring

    אפשרות 2 (ארגומנטים של SSL שמאוחסנים במשתני סביבה)

    מגדירים את משתני הסביבה הבאים:

    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 (ארגומנטים של SSL מועברים ישירות אל 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 עם תמיכה ב-SSL, כפי שמתואר באפשרויות ההגדרה הבאות:

    ההבדל בין האפשרויות הוא באופן שבו ההגדרות שקשורות ל-SSL מועברות ל-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 לגרסה הקודמת

אם צריך לשנות את הגדרות ה-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: מעקב אחר נתונים סטטיסטיים של משימות

כדי לעקוב אחרי המאפיינים של JMX (MBeans) שמוצעים דרך JMX, משתמשים ב-JConsole ובכתובת ה-URL הבאה של השירות:

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

כאשר IP_address היא כתובת ה-IP של שרת Cassandra.

נתונים סטטיסטיים של JMX ב-Cassandra

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): מחפשים את הערכים 'פעיל' ו'תקין' לכל הצמתים.
    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 (הפעלת API של לקוח)
    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 Qpid Broker-J

אפשר לעקוב אחרי Qpid Broker-J דרך מסוף הניהול של Qpid. בקטע הזה מוסבר איך לגשת למסוף ולהשתמש בו כדי לבצע פונקציות מעקב בסיסיות. למידע מפורט יותר על השימוש במסוף הניהול, ראו מסוף ניהול באינטרנט במסמכי התיעוד של Apache Qpid.

גישה למסוף הניהול

יציאת ברירת המחדל של מסוף הניהול היא 8090. כדי לגשת למסוף ביציאת ברירת המחדל הזו, צריך להפנות את דפדפן האינטרנט לכתובת:

http://QPID_NODE_IP:8090

כדי להתחבר למסוף, משתמשים בפרטי הכניסה שמוגדרים כברירת מחדל על ידי Apigee או בפרטי הכניסה שמוגדרים בקובץ התצורה של Edge. מידע נוסף זמין במאמר חומר עזר בנושא קובץ תצורה של Edge.

מעקב אחרי תורים והודעות

בחלונית הניווט הימנית, עוברים אל Java-Broker‏ > virtualhosts‏ > queues. בוחרים בתור כדי להציג את הפרטים שלו בחלק הראשי של ממשק המשתמש. בתצוגת הפרטים אפשר לראות את המאפיינים והנתונים הסטטיסטיים של התור, כולל מידע על הודעות שנשלחו, הודעות שהצטברו בתור, שיעורי שליחת הודעות וכו'.

הצגה והורדה של קובצי יומן

בחלונית הניווט הימנית, עוברים אל Java-Broker‏ > brokerloggers‏ > logfile. בתצוגת הפרטים הראשית של ממשק המשתמש אפשר לראות פרטים של קובצי יומן ולהוריד אותם.

שימוש ב-Qpid Management API

אפשר להשתמש ב-Apache Qpid Broker-J REST API כדי להפוך משימות ניהול לאוטומטיות ולעקוב אחרי ה-broker. פרטים נוספים זמינים ב מסמכי התיעוד של Apache Qpid Broker API ל-REST.

אפשר גם להשתמש בכלים של שורת הפקודה כדי לעקוב אחרי הסוכן. לדוגמה:

curl "QPID_NODE_IP":"8090"/api/latest/broker -u "USERNAME":"PASSWORD"

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) כדי לשלוח שאילתה לגבי הרשאת האדמין במערכת. הרשומה הזו משמשת לאימות כל הקריאות ל-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

    לאחר מכן תתבקשו להזין את סיסמת האדמין של 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) כדי לקבל מידע על המטמון.