Edge for Private Cloud גרסה 4.18.01
שירותי המונטיזציה הם תוסף של Apigee Edge, ולכן הם לא פועלים כתהליך עצמאי. הוא פועל בכל הגדרה קיימת של Apigee Edge.
דרישות למונטיזציה
- אם בחרת להתקין את המונטיזציה בטופולוגיה של Edge שנעשה בה שימוש במספר צמתים של שרת ניהול, למשל התקנה של 13 צמתים, עליך להתקין את שני הצמתים של שרת ניהול Edge לפני התקנת המונטיזציה.
- כדי להתקין את המונטיזציה ב-Edge, כאשר להתקנת Edge יש כמה צומתי Postgres, צריך להגדיר את צומתי Postgres במצב ראשי/המתנה. אי אפשר להתקין את המונטיזציה ב-Edge אם יש לך כמה צמתים ראשיים ב-Postgres. למידע נוסף, תוכלו לקרוא את המאמר הגדרת שכפול של שרת בהמתנה ל-Postgres.
סקירה כללית של ההתקנה
בשלבים הבאים מוסבר איך להוסיף שירותי מונטיזציה בהתקנה קיימת של Apigee Edge:
- אפשר להשתמש בכלי apigee-setup כדי לעדכן את הצומת של Apigee Management Server ולהפעיל את שירותי המונטיזציה, למשל, לנהל את הקטלוג, להגדיר הגבלות והתראות, חיוב ודיווח.
אם יש לך כמה צמתים של שרת ניהול, למשל התקנה של 13 צמתים, עליך להתקין את שני הצמתים של שרת ניהול Edge לפני התקנת המונטיזציה. - אפשר להשתמש בכלי apigee-setup כדי לעדכן את מעבד ההודעות של Apigee כך שיאפשר את רכיבי זמן הריצה של שירותי המונטיזציה, למשל, מדיניות תיעוד העסקאות והגבלת האכיפה. אם יש לך כמה מעבדי הודעות, עליך להתקין את המונטיזציה בכולם.
- מבצעים את תהליך ההצטרפות למונטיזציה עבור ארגוני Edge שלך.
- צריך להגדיר את פורטל השירותים למפתחים כך שיתמוך במונטיזציה. מידע נוסף זמין במאמר http://apigee.com/docs/monetization/content/configure-monetization-developer-portal.
יצירת קובץ תצורה שקט לצורך מונטיזציה
לפניכם דוגמה לקובץ תצורה שקט להתקנה של מונטיזציה. עורכים את הקובץ הזה לפי הצורך. כדי לכלול את הקובץ צריך להשתמש באפשרות -f כדי setup.sh.
הערה: בדרך כלל, מוסיפים את המאפיינים האלה לאותו קובץ תצורה שבו השתמשתם כדי להתקין את Edge, כפי שמתואר במאמר התקנת רכיבי Edge בצומת.
# Edge configuration properties # Specify IP address or DNS name of node. IP1=192.168.1.1 # Management Server, OpenLDAP, UI, ZooKeeper, Cassandra IP2=192.168.1.2 # ZooKeeper, Cassandra IP3=192.168.1.3 # ZooKeeper, Cassandra IP4=192.168.1.4 # Router, Message Processor IP5=192.168.1.5 # Router, Message Processor IP6=192.168.1.6 # Qpid IP7=192.168.1.7 # Qpid IP8=192.168.1.8 # Postgres IP9=192.168.1.9 # Postgres # Must resolve to IP address or DNS name of host - not to 127.0.0.1 or localhost. HOSTIP=$(hostname -i) # Edge sys admin credentials ADMIN_EMAIL=your@email.com APIGEE_ADMINPW=yourPassword # If omitted, you are prompted for it. # Specify the Management Server port. APIGEE_PORT_HTTP_MS=8080 # # Monetization configuration properties. # # Postgres credentials from Edge installation. PG_USER=apigee # Default from Edge installation PG_PWD=postgres # Default from Edge installation # Specify Postgres server. MO_PG_HOST="$IP8" # Only specify one Postgres node. # Create a Postgres user for Monetization. # Default username is "postgre". # If you specify a different user, that user must already exist. MO_PG_USER=postgre MO_PG_PASSWD=moUserPWord # Specify one ZooKeeper host. # Ensure this is a ZooKeeper leader node in a multi-datacenter environment. ZK_HOSTS="$IP2" # Specify Cassandra information. # Ensure CASS_HOSTS is set to the same value as when you installed Edge. # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1" # Default is "Apigee", unless it was changed during Edge install. CASS_CLUSTERNAME=Apigee # Cassandra uname/pword required only if you enabled Cassandra authentication. # CASS_USERNAME= # CASS_PASSWORD= # Specify the region. # Default is dc-1 unless you are in a multi-datacenter environment. REGION=dc-1 # If your Edge config file did not specify SMTP information, add it. # Monetization requires an SMTP server. SMTPHOST=smtp.gmail.com SMTPPORT=465 SMTPUSER=your@email.com SMTPPASSWORD=yourEmailPassword SMTPSSL=y SMTPMAILFROM="My Company <myco@company.com>"הערות:
- אם בקובץ התצורה של Edge לא צוינו פרטי SMTP, מוסיפים אותו. כדי להפעיל מונטיזציה נדרש שרת SMTP.
- בהתקנה אחת של מרכז נתונים, כל הצמתים שלzoKeeper מוגדרים כברירת מחדל כמובילים. כשמתקינים את Edge במספר מרכזי נתונים, צמתים מסוימים שלzoKeeper מוגדרים כצופים. ודא שהמאפיין ZK_HOSTS שלמעלה מציין צומת מוביל בהתקנה מרובים של מרכז נתונים.
- אם מפעילים את האימות של Cassandra, ניתן להעביר את שם המשתמש והסיסמה של Cassandra
באמצעות המאפיינים הבאים:
CASS_USERNAME
CASS_password
שילוב שירותי מונטיזציה עם כל שרתי הניהול
כדי לשלב מונטיזציה בצמתים של שרת הניהול, צריך לבצע את התהליך הבא.
- אם בחרת להתקין את המונטיזציה בטופולוגיה של Edge שמשתמשת במספר צמתים של שרת ניהול, למשל התקנה של 13 צמתים, חשוב לוודא שהתקנת את שני הצמתים של שרת הניהול לפני שמתקינים את המונטיזציה.
- בצומת של שרת הניהול, מריצים את סקריפט ההגדרה:
> /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile
האפשרות ' -p mo' מציינת שילוב של מונטיזציה.
קובץ התצורה חייב להיות נגיש או קריא למשתמש "apigee". - אם בחרת להתקין את המונטיזציה במספר צמתים של שרתי ניהול, צריך לחזור על שלב 2 בצומת השני של שרת הניהול.
אחרי שההגדרה תושלם בהצלחה, תיווצר סכימת RDBMS לשירותי מונטיזציה במסד הנתונים של PostgreSQL. עכשיו הושלם השילוב של שירותי המונטיזציה והרכיבים המשויכים אליהם עם שרת Postgres.
שילוב שירותי המונטיזציה עם כל מעבדי ההודעות
כדי לשלב את המונטיזציה בכל הצמתים של מעבד ההודעות צריך לבצע את התהליך הבא.
- בצומת הראשון של מעבד ההודעות, מריצים בשורת הפקודה את סקריפט ההגדרה:
> /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile
האפשרות ' -p mo' מציינת שילוב של מונטיזציה.
קובץ התצורה חייב להיות נגיש או קריא למשתמש "apigee". - חוזרים על התהליך בכל הצמתים של מעבד ההודעות.
לאחר שההגדרה תושלם, מעבד ההודעות יעבור עדכון לשירותי המונטיזציה. כך הושלם השילוב של שירותי המונטיזציה והרכיבים שמשויכים אליהם עם מעבדי ההודעות.
תהליך ההצטרפות למונטיזציה
כדי ליצור ארגון חדש ולהפעיל בו מונטיזציה, קודם כול צריך ליצור את הארגון בדיוק כפי שיוצרים אותו עבור כל ארגון חדש. במאמר הצטרפות לארגון אפשר לקרוא מידע נוסף.
תהליך קליטה נוסף כדי להפעיל מונטיזציה בארגון
כדי להשלים את תהליך ההצטרפות למונטיזציה בארגון, עליכם:
- יוצרים את קבוצת המונטיזציה: mxgroup.
- מוסיפים Qpid לקבוצה.
- להפעיל מונטיזציה בארגון.
- הפעלה של הגדרת התראות בארגון.
- חוזרים על התהליך הזה עבור כל הארגונים שרוצים להפעיל בהם מונטיזציה.
כדי לבצע את כל המשימות האלה, צריך להשתמש בפקודה הפעלת מונטיזציה. הסקריפט הזה לוקח קובץ תצורה המכיל את המאפיינים הבאים:
MSIP=IPorDNSofManagementServer APIGEE_PORT_HTTP_MS=8080 # Default is 8080. ADMIN_EMAIL=your@email.com APIGEE_ADMINPW=yourPassword # If omitted, you are prompted for it. # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1" # Space-separated list IP/DNS names of all Qpid nodes in the data center being configured. QPID_HOST="$IP6 $IP7" QPID_PORT=8083 # Default is 8083. REGION=dc-1 ORG_NAME=myorg # The Edge org where you want to enable monetization. MX_GROUP=mxgroup # Default Monetization group.
הערות:
- מגדירים את CASS_HOSTS ואת REGION לאותם ערכים שהשתמשת בהם כשהתקנת את המונטיזציה.
- אם מפעילים מונטיזציה בכמה הגדרות של מרכז נתונים:
- צריך לחזור על תהליך ההצטרפות לשרת הניהול בכל מרכז נתונים.
- קובץ התצורה צריך לפרט רק את צומתי ה-Qpid במרכז הנתונים שהוגדר.
כדי להריץ את הסקריפט:
- מפעילים את הסקריפט:
> /opt/apigee/apigee-service/bin/apigee-service apigee-provision enable-monetization -f configFile
קובץ התצורה צריך להיות נגיש או קריא למשתמש ה-API.
אם יש לכם כמה שרתי ניהול, צריך להריץ את הסקריפט הזה רק באחד מהם.
הסקריפט הזה משכפל את הארגון, המוצרים, המפתחים והאפליקציות ממסד הנתונים של Cassandra למסד הנתונים של Monetize PostgreSQL. אחרי ששירותי המונטיזציה יתקינו בהצלחה, הנתונים יסתנכרנו אוטומטית. - חוזרים על התהליך הזה בכל ארגון שבו רוצים להפעיל מונטיזציה.
- אם משתמשים בכמה סביבות של מרכז נתונים, צריך לחזור על התהליך בשרת הניהול במרכז הנתונים השני. יש לוודא שבקובץ התצורה רשומים רק צומתי ה-Qpid במרכז הנתונים שהוגדר.
בפעם הבאה שתתחברו לממשק המשתמש של Edge, תוצג לכם האפשרות 'מונטיזציה' בתפריט ברמה העליונה של הארגון:
הגדרה של פורטל השירותים למפתחים
כדי להגדיר את פורטל השירותים למפתחים כך שיתמוך במונטיזציה, כדאי לעיין בכתובת http://apigee.com/docs/monetization/content/configure-monetization-developer-portal.
הוספת צומת של שרת ניהול להתקנה של מונטיזציה
אם מוסיפים שרת ניהול להתקנת Edge קיימת, צריך להקפיד להוסיף שירותי מונטיזציה לשרת הניהול החדש ולהגדיר את כל שרתי הניהול כדי שהם יוכלו לתקשר.
כדי להוסיף שרת ניהול:
- מתקינים את שרת הניהול החדש.
- מתקינים את מונטיזציה בשרת הניהול החדש.
- בשרת הניהול המקורי, מפעילים את הקוד הבא:
> /opt/apigee/apigee-service/bin/apigee-service edge-mint-management-server mint-configure-mgmt-cluster - מפעילים מחדש את שרת הניהול המקורי:
> /opt/apigee/apigee-service/bin/apigee-service edge-management-server הפעלה מחדש - בשרת הניהול החדש, צריך לבצע קריאה הבאה:
> /opt/apigee/apigee-service/bin/apigee-service edge-mint-management-server mint-configure-mgmt-cluster - מפעילים מחדש את שרת הניהול החדש:
> /opt/apigee/apigee-service/bin/apigee-service edge-management-server הפעלה מחדש
הגדרות אישיות נוספות
שליחה של מסמכי חיוב כקובצי PDF
המונטיזציה מציגה למשתמשי הקצה מסמכי חיוב בפורמט HTML. כדי לספק מסמכי חיוב כקובצי PDF, אפשר לשלב את המונטיזציה עם מערכת חיוב שמספקת יצירת קובצי PDF או רישיון לספריית PDF נתמכת של צד שלישי.
קביעת ההגדרות של הארגון
הגדרות קצה עורפי: בטבלה הבאה מפורטים המאפיינים ברמת הארגון שזמינים להגדרת ארגון של הנפקה. אפשר להשתמש בקריאה ל-PUT כדי להוסיף או לעדכן את המאפיינים האלה, כפי שמוצג כאן:
> curl -u ${ADMIN_EMAIL}:${ADMINPW} -v http://<management-ip>:8080/v1/organizations/{orgId} -d '{org object with attributes}' -X PUT
לדוגמה, הפלט של הפקודה CURL שלמעלה ייראה בערך כך:
{
...
"displayName": "Orgnization name",
"name": "org4",
"properties": {
"property": [
...
{
"name": "MINT_CURRENCY",
"value": "USD"
},
{
"name": "MINT_COUNTRY",
"value": "US"
},
{
"name": "MINT_TIMEZONE",
"value": "GMT"
}
]
}
}
מאפיינים |
תיאור |
---|---|
MINT_TAX_MODEL |
הערכים הקבילים הם DISCLOSED, לא סגור, היברידי (ברירת המחדל היא אפס) |
MINT_CURRENCY |
קוד מטבע ISO (ברירת המחדל היא אפס) |
MINT_TAX_NEXUS |
זיקה לצורכי מס (ברירת המחדל היא אפס) |
MINT_DEFAULT_PROD_TAX_CATEGORY |
קטגוריית ברירת המחדל של מס המוצר (ברירת המחדל היא null) |
MINT_IS_GROUP_ORG |
ארגון קבוצת IS (ברירת המחדל היא False) |
MINT_HAS_BROKER |
לא תקין (ברירת המחדל היא False) |
MINT_TIMEZONE |
אזור זמן (ברירת המחדל היא אפס) |
MINT_TAX_ENGINE_EXTERNAL_ID |
מזהה מנגנון המס (ברירת המחדל היא אפס) |
MINT_COUNTRY |
המדינה של הארגון (ברירת המחדל היא null) |
MINT_REG_NO |
מספר הרישום של הארגון, בריטניה מספק מספר שונה ממזהה מס (ברירת המחדל היא null) |
MINT_BILLING_CYCLE_TYPE |
PRORATED, CALENDAR_MONTH (ברירת המחדל היא CALENDAR_MONTH) |
MINT_SUPPORTED_BILLING_TYPE |
תשלום מראש/תשלום מראש/שניהם (ברירת המחדל היא 'תשלום מראש') |
MINT_IS_SEPARATE_INV_FOR_FEES |
שדה זה מציין אם יש להפיק חשבונית עמלה נפרדת (ברירת המחדל היא false) |
MINT_ISSUE_NETTING_STMT |
שדה זה מציין אם יש להנפיק הצהרת רשת (ברירת המחדל היא False) |
MINT_NETTING_STMT_PER_CURRENCY |
שדה זה מציין אם יש ליצור הצהרת רשת לכל מטבע (ברירת המחדל היא false) |
MINT_HAS_SELF_BILLING |
מציין אם לארגון יש חיוב עצמי (ברירת המחדל היא False) |
MINT_SELF_BILLING_FOR_ALL_DEV |
שדה זה מציין אם לארגון יש חיוב עצמי לכל המפתחים(ברירת המחדל היא false) |
MINT_HAS_SEPARATE_INV_FOR_PROD |
מציין אם לארגון יש חשבונית נפרדת לכל מוצר (ברירת המחדל היא False) |
MINT_HAS_BILLING_ADJUSTMENT |
שדה זה מציין אם הארגון תומך בהתאמות חיוב (ברירת המחדל היא False) |
features.isMonetizationEnabled |
משמש את ממשק המשתמש לניהול כדי להציג תפריט ספציפי למונטיזציה (ברירת המחדל היא False) |
ui.config.isOperator |
משמש את ממשק המשתמש לניהול כדי להציג את הספק כגורם שפועל מול 'ארגון' (ברירת המחדל היא TRUE) |
למידע על קביעת הגדרות הארגון העסקי באמצעות ממשק המשתמש לניהול, ניתן לעיין בכתובת http://apigee.com/docs/monetization-services/content/get-started-using-monetization-services.
הערה: אם בחרת להשתמש בתכונות של התראות ומגבלות של שירותי מונטיזציה, עליך להנחות את המפתחים לצרף מדיניות מגבלה בתהליך של שרת ה-proxy אחרי מדיניות האימות של אסימון הגישה.
מדיניות המגבלה היא מדיניות מפורשת שמטרתה לחסום קריאה ל-API במקרה של חריגה ממגבלה מסוימת. המדיניות בודקת את המגבלות על העסק, ומציגה שגיאות אם יש מגבלות שחורגות מהערך שהוגדר. המדיניות הזו היא המשך של המדיניות להעלאת טעויות, אבל התנאים נגזרים ממשתנים עסקיים.
תבנית של ממשק משתמש זמינה בממשק המשתמש לניהול עבור מפתחי שרתי proxy. מפתח שרת ה-proxy צריך לצרף מדיניות הנפקה לתהליך ההודעה. לאחר יישום המדיניות הזו, תגדל התגובה לתקלה בהתאם למדיניות. אם הערך של ContinueOnError מוגדר כ-True, לא תתבצע העלאה של תקלה והמשתנים 'mint.limitsViolated', 'mint.isDevelopersuspendeded' ו-'mint.limitsPolicyError' יוגדרו. אפשר להשתמש בהם לטיפול נוסף בחריגות במקרה הצורך.