איך להגדיר את Edge

כדי להגדיר את Edge אחרי ההתקנה, צריך להשתמש בשילוב של .properties קבצים ושירותים של Edge. לדוגמה, כדי להגדיר TLS/SSL בממשק המשתמש של Edge, צריך לערוך .properties קבצים כדי להגדיר את המאפיינים הנחוצים. כדי לבצע שינויים בקובצי .properties צריך להפעיל מחדש את הרכיב Edge שהושפע.

Apigee היא השיטה שבה עורכים קובצי .properties כקוד באמצעות config (לפעמים זהו קיצור של CwC). בעיקרון, הקוד עם config הוא כלי חיפוש מפתח/ערך שמבוסס על הגדרות בקובצי .properties. בקוד עם ההגדרה, המפתחות נקראים אסימונים. לכן, כדי להגדיר את Edge, צריך להגדיר אסימונים ב-.properties קבצים.

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

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

  1. לקוח
  2. מנהל ההתקנה
  3. רכיב

קביעת הערך הנוכחי של אסימון

לפני שמגדירים ערך חדש לאסימון בקובץ .properties, קודם צריך לקבוע את הערך הנוכחי שלו באמצעות הפקודה הבאה:

/opt/apigee/apigee-service/bin/apigee-service component_name configure -search token

כאשר component_name הוא שם הרכיב, ו-token הוא האסימון לבדיקה.

הפקודה הזו מחפשת בהיררכיה של קובצי .properties של הרכיב כדי לקבוע את הערך הנוכחי של האסימון.

בדוגמה הבאה מוצג הערך הנוכחי של אסימון conf_http_HTTPRequest.line.limit של הנתב:

/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit

הפלט אמור להיראות כך:

Found key conf_http_HTTPRequest.line.limit, with value, 4k, in /opt/apigee/edge-router/token/default.properties

אם ערך האסימון מתחיל ב-#, הוא קיבל תגובה וצריך לשנות אותו בעזרת תחביר מיוחד. מידע נוסף זמין במאמר הגדרת אסימון שמוזכר כרגע.

אם לא ידוע לך השם המלא של האסימון, אפשר להשתמש בכלי כמו grep כדי לחפש לפי שם הנכס או מילת המפתח. מידע נוסף זמין במאמר איתור אסימון.

קובצי המאפיינים

יש קובצי הגדרות רכיבים שניתנים לעריכה ולא ניתנים לעריכה. בקטע הזה מתוארים הקבצים האלה.

קובצי תצורה שניתנים לעריכה

בטבלה הבאה מפורטים רכיבי ה-Apigee וקובצי הקבצים שאפשר לערוך כדי להגדיר אותם:

רכיב שם רכיב קובץ תצורה שניתן לערוך
קסנדרה apigee-cassandra /opt/apigee/customer/application/cassandra.properties
SSO ב-Apigee apigee-sso /opt/apigee/customer/application/sso.properties
שרת ניהול edge-management-server /opt/apigee/customer/application/management-server.properties
מעבד בקשות edge-message-processor /opt/apigee/customer/application/message-processor.properties
apigee-monit apigee-monit /opt/apigee/customer/application/monit.properties
ממשק משתמש קלאסי (לא משפיע על ממשק המשתמש החדש של Edge) edge-ui /opt/apigee/customer/application/ui.properties
ממשק קצה (ממשק משתמש חדש של Edge בלבד; לא משפיע על ממשק המשתמש הקלאסי) apigee-management-ui לא רלוונטי (משתמשים בקובץ ההגדרה של ההתקנה)
OpenLDAP apigee-openldap /opt/apigee/customer/application/openldap.properties
שרת Postgres edge-postgres-server /opt/apigee/customer/application/postgres-server.properties
מסד נתונים של PostgreSQL apigee-postgresql /opt/apigee/customer/application/postgressql.properties
שרת Qpid edge-qpid-server /opt/apigee/customer/application/qpid-server.properties
קיפוד apigee-qpidd /opt/apigee/customer/application/qpidd.properties
נתב edge-router /opt/apigee/customer/application/router.properties
גן חיות apigee-zookeeper /opt/apigee/customer/application/zookeeper.properties

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

בנוסף, יש לוודא שקובץ הנכסים נמצא בבעלות המשתמש 'pegee':

chown apigee:apigee /opt/apigee/customer/application/configuration_file.properties

קובצי תצורה שלא ניתנים לעריכה

בנוסף לקובצי התצורה של רכיבים שניתנים לעריכה, יש גם קובצי הגדרות שאי אפשר לערוך.

אלה קבצים עם מידע אינפורמטיבי (שלא ניתן לערוך):

בעלים שם הקובץ או הספרייה
התקנה
/opt/apigee/token
רכיב
/opt/apigee/component_name/conf

כאשר component_name מזהה את הרכיב. הערכים האפשריים כוללים:

  • apigee-cassandra (קסנדרה)
  • apigee-openldap (OpenLDAP)
  • apigee-postgresql (מסד נתונים של PostgreSQL)
  • apigee-qpidd (קיפוד)
  • apigee-sso (כניסה יחידה (SSO))
  • apigee-zookeeper (ZooKeeper)
  • edge-management-server (שרת ניהול)
  • edge-management-ui (ממשק קצה חדש של Edge)
  • edge-message-processor (מעבד הודעות)
  • edge-postgres-server (שרת Postgres)
  • edge-qpid-server (שרת Qpid)
  • edge-router (נתב קצה)
  • edge-ui (ממשק משתמש קלאסי)

הגדרת ערך של אסימון

אפשר לשנות רק את .properties הקבצים בספרייה /opt/apigee/customer/application. לכל רכיב יש קובץ .properties משלו בספרייה. לדוגמה, router.properties ו-management-server.properties. הרשימה המלאה של קובצי נכסים מופיעה במיקום הזה.

כדי ליצור קובץ .properties:

  1. יוצרים קובץ טקסט חדש בעורך. שם הקובץ צריך להיות זהה לשם שמצוין בטבלה שלמעלה לגבי קובצי הלקוחות.
  2. משנים את הבעלים של הקובץ ל-"apigee:apigee", כפי שמוצג בדוגמה הבאה:
    chown apigee:apigee /opt/apigee/customer/application/router.properties

    אם שינית את המשתמש שמפעיל את שירות Edge ממשתמשים "רגילים", יש להשתמש ב-chown כדי לשנות את הבעלות למשתמש שמפעיל את שירות Edge.

כשמשדרגים את Edge, הקבצים של .properties בספרייה /opt/apigee/customer/application יוקראו. המשמעות היא שהשדרוג ישמור כל נכס שהגדרת ברכיב.

כדי להגדיר את הערך של האסימון:

  1. עורכים את הקובץ .properties של הרכיב.
  2. יש להוסיף או לשנות את ערך האסימון. הדוגמה הבאה מגדירה את הערך של המאפיין conf_http_HTTPRequest.line.limit ל-"10k":
    conf_http_HTTPRequest.line.limit=10k

    אם האסימון מקבל כמה ערכים, צריך להפריד בין הערכים באמצעות פסיק, כמו בדוגמה הבאה:

    conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status,/myuri/*

    כדי להוסיף ערך חדש לרשימה כזו, בדרך כלל צריך להוסיף את הערך החדש בסוף הרשימה.

  3. מפעילים מחדש את הרכיב:
    /opt/apigee/apigee-service/bin/apigee-service component_name restart

    כאשר component_name הוא אחד מהבאים:

    • apigee-cassandra (קסנדרה)
    • apigee-openldap (OpenLDAP)
    • apigee-postgresql (מסד נתונים של PostgreSQL)
    • apigee-qpidd (קיפוד)
    • apigee-sso (כניסה יחידה (SSO))
    • apigee-zookeeper (ZooKeeper)
    • edge-management-server (שרת ניהול)
    • edge-management-ui (ממשק קצה חדש של Edge)
    • edge-message-processor (מעבד הודעות)
    • edge-postgres-server (שרת Postgres)
    • edge-qpid-server (שרת Qpid)
    • edge-router (נתב קצה)
    • edge-ui (ממשק משתמש קלאסי)

    לדוגמה, אחרי עריכת הrouter.properties, יש להפעיל מחדש את הנתב:

    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
  4. (אופציונלי) בודקים אם ערך האסימון מוגדר לערך החדש באמצעות האפשרות configure -search. למשל:
    /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit

    מידע נוסף על configure -search זמין במאמר הגדרת הערך הנוכחי של אסימון.

איתור אסימון

האסימונים שאתם צריכים להגדיר מזוהים ברוב המקרים במדריך הזה. עם זאת, אם צריך לעקוף את הערך של אסימון קיים שלא ניתן לבדוק את השם או המיקום המלאים שלו, אפשר להשתמש ב-grep כדי לחפש בספריית source של הרכיב.

לדוגמה, אם ידוע לך שבגרסה קודמת של Edge הגדרת את הנכס של session.maxAge וברצונך לדעת את ערך האסימון שמשמש להגדרה שלו, יש לך אפשרות להשתמש ב-grep בנכס /opt/apigee/edge-ui/source בספרייה:

grep -ri "session.maxAge" /opt/apigee/edge-ui/source

התוצאה אמורה להופיע כך:

/opt/apigee/component_name/source/conf/application.conf:property_name={T}token_name{/T}

בדוגמה הבאה מוצג הערך של אסימון session.maxAge של ממשק המשתמש:

/opt/apigee/edge-ui/source/conf/application.conf:session.maxAge={T}conf_application_session.maxage{/T}

המחרוזת בין תגי {T}{/T} היא שם האסימון שאפשר להגדיר בקובץ .properties של ממשק המשתמש.

הגדרת אסימון שמוזכר כרגע

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

כדי להגדיר את הערך של אסימון שמתקבלת תגובה בקובץ התצורה של Edge, יש להשתמש בתחביר מיוחד בפורמט הבא:

conf/filename+propertyName=propertyValue

לדוגמה, כדי להגדיר את הנכס בשם HTTPClient.proxy.host במעבד ההודעות, תחילה grep כדי שהנכס יקבע את האסימון שלו:

grep -ri /opt/apigee/edge-message-processor/ -e "HTTPClient.proxy.host"

הפקודה grep מחזירה תוצאות שכוללות את שם האסימון. שימו לב לשם התגובה בנכס, כפי שמצוין על ידי הקידומת #:

source/conf/http.properties:#HTTPClient.proxy.host={T}conf_http_HTTPClient.proxy.host{/T}
token/default.properties:conf_http_HTTPClient.proxy.host=
conf/http.properties:#HTTPClient.proxy.host=

כדי להגדיר את הערך של המאפיין הזה, יש לערוך את הערך /opt/apigee/customer/application/message-processor.properties אבל להשתמש בתחביר מיוחד, כמו בדוגמה הבאה:

conf/http.properties+HTTPClient.proxy.host=myhost.name.com

במקרה כזה, צריך להוסיף לפני conf/http.properties+ את שם הנכס. זהו המיקום והמיקום של קובץ התצורה שמכיל את המאפיין ואחריו "+".

אחרי שמפעילים מחדש את מעבד ההודעות, בודקים את הקובץ /opt/apigee/edge-message-processor/conf/http.properties:

cat /opt/apigee/edge-message-processor/conf/http.properties

בסוף הקובץ, תוכלו לראות את הנכס המוגדר, בצורה הבאה:

conf/http.properties:HTTPClient.proxy.host=myhost.name.com

הגדרת שרת proxy להעברה עבור בקשות מהקטע 'שליחת בקשות' בממשק המשתמש של Trace

בקטע הזה מוסבר איך להגדיר העברה לשרת proxy של בקשות בקטע 'שליחת בקשות' בממשק המשתמש של Trace, עם פרטי כניסה אופציונליים של שרת proxy. כדי להגדיר שרת proxy להעברה:

  1. צריך לערוך את /opt/apigee/customer/application/ui.properties ולוודא שהקובץ הוא בבעלות apigee:apigee.
  2. מוסיפים את הביטולים הבאים (שינוי הערכים להגדרה של שרת proxy ספציפי):
    conf_application_http.proxyhost=proxy.example.com
    conf_application_http.proxyport=8080
    conf_application_http.proxyuser=apigee
    conf_application_http.proxypassword=Apigee123!
  3. שמירה והפעלה מחדש של ממשק המשתמש הקלאסי.