התקנת שירותי מונטיזציה

Edge for Private Cloud גרסה 4.16.05

Monetization Services הוא תוסף ל-Apigee Edge, ולכן הוא לא פועל בתור תהליך עצמאי. הוא פועל בכל הגדרה קיימת של Apigee Edge.

דרישות המונטיזציה

  • אם מתקינים מונטיזציה בטופולוגיית Edge שמשתמשת בכמה צמתים של שרת ניהול, כמו התקנה עם 13 צמתים, צריך להתקין את שני הצמתים של שרת הניהול של Edge לפני שמתקינים את המונטיזציה.
  • כדי להתקין מונטיזציה ב-Edge כאשר התקנת Edge כוללת כמה צמתים של Postgres: את צומתי ה-Postgres צריך להגדיר במצב Master/Standby. אין לך אפשרות להתקין מונטיזציה ב-Edge אם יש כמה צמתים ראשיים של Postgres. למידע נוסף, ראו הגדרת רפליקציית Master-Standby עבור Postgres.

סקירה כללית על ההתקנה

השלבים הבאים ממחישים איך להוסיף שירותי מונטיזציה בממשק Apigee Edge קיים התקנה:

  • משתמשים בכלי apigee-setup כדי לעדכן את הצומת של שרת הניהול של Apigee ולהפעיל את שירותי המונטיזציה, למשל ניהול קטלוגים, הגדרת מגבלות והתראות, חיוב ודוחות.

    אם יש לכם כמה צמתים של שרת ניהול, כמו התקנה עם 13 צמתים, צריך צריך להתקין את שני הצמתים של שרת ניהול הקצה לפני שמתקינים את המונטיזציה.
  • משתמשים ב-apigee-setup לעדכון מעבד ההודעות של Apigee כדי להפעיל את רכיבי זמן הריצה של שירותי מונטיזציה. לדוגמה, המדיניות בנושא הקלטת עסקאות ואכיפת הגבלות. אם יש כמה מעבדי הודעות, צריך להתקין בהם מונטיזציה.
  • מבצעים את תהליך ההצטרפות למונטיזציה עבור ארגוני Edge שלכם.
  • הגדרת פורטל Developer Services לתמיכה בחיוב. מידע נוסף זמין במאמר הבא: 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
הערות:
  • אם בקובץ התצורה של Edge לא צוינו פרטי SMTP, מוסיפים אותם. כדי להפעיל מונטיזציה צריך שרת SMTP.
  • בהתקנה אחת של מרכז נתונים, כל צמתים של ZooKeeper מוגדרים כברירת מחדל כמנהיגים. כשמתקינים את Edge במספר מרכזי נתונים, צמתים מסוימים ב-ZooKeeper מוגדרים כצופים. חשוב לוודא שהמאפיין ZK_HOSTS שלמעלה מציין צומת מוביל בהתקנה עם כמה מרכזי נתונים.
  • אם מפעילים אימות של Cassandra, אפשר להעביר את שם המשתמש והסיסמה של Cassandra באמצעות המאפיינים הבאים:
    CASS_USERNAME
    CASS_PASSWORD

שילוב של שירותי המונטיזציה עם כל שרתי הניהול

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

  1. אם מתקינים מונטיזציה בטופולוגיית Edge שמשתמשת בכמה צמתים של שרת ניהול, כמו התקנה עם 13 צמתים, צריך לוודא שהתקנתם את שני הצמתים של שרת הניהול לפני התקנת המונטיזציה.
  2. בצומת של שרת הניהול, מריצים את סקריפט ההגדרה:
    > /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile

    האפשרות '-p mo' מציינת שצריך לשלב מונטיזציה.

    קובץ התצורה חייב להיות נגיש או קריא באמצעות ה-apigee משתמש. לדוגמה, מציבים הקובץ בספרייה /tmp בצומת.
  3. אם מתקינים את המונטיזציה בכמה צמתים של שרת ניהול, חוזרים על שלב 2 בצומת השני של שרת הניהול.

אם ההגדרה תתבצע בהצלחה, תיווצר סכימה של RDBMS לשירותי מונטיזציה במסד הנתונים של PostgreSQL. השלמת השילוב של שירותי המונטיזציה והשיוך שלהם רכיבים עם שרת Postgres.

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

כדי לשלב מונטיזציה בכל הצמתים של Message Processor, צריך לפעול לפי השלבים הבאים:

  1. בצומת הראשון של מעבד ההודעות, בשורת הפקודה, מריצים את סקריפט ההגדרה:
    > /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile

    האפשרות ' -p mo' מציינת שילוב של מונטיזציה.

    קובץ התצורה חייב להיות נגיש או קריא באמצעות ה-apigee משתמש. לדוגמה, מציבים הקובץ בספרייה /tmp בצומת.
  2. חוזרים על התהליך הזה בכל הצמתים של Message Processor.

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

הדרכה למשתמשים חדשים בנושא מונטיזציה

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

תהליך קליטה נוסף להפעלת מונטיזציה בארגון

כדי להשלים את תהליך ההצטרפות למונטיזציה בארגון, תצטרכו:

  1. יוצרים את קבוצת המונטיזציה: mxgroup.
  2. מוסיפים את Qpid לקבוצה.
  3. מפעילים את המונטיזציה בארגון.
  4. מפעילים את הגדרות ההתראות לארגון.
  5. חוזרים על התהליך הזה בכל הארגונים שבהם רוצים להפעיל מונטיזציה.

משתמשים בenable-monetization. כדי לבצע את כל המשימות האלה. הסקריפט הזה מקבל קובץ תצורה שמכיל את המאפיינים הבאים:

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 רק במרכז הנתונים שמוגדר.

כדי להריץ את הסקריפט:

  1. הפעלת הסקריפט:
    > https://support.google.com/opt/apigee/apigee-service/bin/apigee-service apigee-provision enable-monetization -f configFile

    קובץ התצורה חייב להיות נגיש או קריא באמצעות ה-apigee משתמש. לדוגמה, מציבים הקובץ בספרייה /tmp בצומת.

    אם יש לכם מספר שרתי ניהול, צריך להריץ את הסקריפט הזה רק באחד מהם.

    הסקריפט הזה מעתיק את הארגון, המוצרים, המפתחים והאפליקציות ממסד הנתונים של Cassandra למסד הנתונים של Monetization ב-PostgreSQL. אחרי ההתקנה המוצלחת של שירותי המונטיזציה, הנתונים מסתנכרנים באופן אוטומטי.
  2. חוזרים על התהליך הזה בכל ארגון שבו רוצים להפעיל מונטיזציה.
  3. אם אתם נמצאים בסביבה עם כמה מרכזי נתונים, צריך לחזור על התהליך הזה בשרת הניהול במרכז הנתונים השני. לוודא שקובץ התצורה מציג רק את צמתים ה-Qpid ב- של מרכז נתונים מוגדר.

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

הגדרת פורטל Developer Services

בכתובת http://apigee.com/docs/monetization/content/configure-monetization-developer-portal מוסבר איך להגדיר את פורטל השירותים למפתחים.

הוספת צומת של שרת ניהול להתקנה של מונטיזציה

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

כדי להוסיף שרת ניהול:

  1. מתקינים את שרת הניהול החדש.
  2. מתקינים את המונטיזציה בשרת הניהול החדש.
  3. בשרת הניהול המקורי, קוראים לפונקציה הבאה:
    > /opt/apigee/apigee-service/bin/apigee-service edge-mint-management-server mint-configure-mgmt-cluster
  4. מפעילים מחדש את שרת הניהול המקורי:
    > /opt/apigee/apigee-service/bin/apigee-service edge-management-server מחדש
  5. בשרת הניהול החדש, קוראים את הפקודה הבאה:
    > /opt/apigee/apigee-service/bin/apigee-service edge-mint-management-server mint-configure-mgmt-cluster
  6. הפעלה מחדש של שרת הניהול החדש:
    > /opt/apigee/apigee-service/bin/apigee-service edge-management-server מחדש

הגדרות נוספות

יש לספק מסמכי חיוב בתור קובצי PDF

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

הגדרת הגדרות הארגון

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

UNDISCLOSED,‏ HYBRID (ברירת המחדל היא null)

MINT_CURRENCY

קוד מטבע לפי תקן ISO (ברירת המחדל היא null)

MINT_TAX_NEXUS

זיקה לצורכי מס (ברירת המחדל היא null)

MINT_DEFAULT_PROD_TAX_CATEGORY

קטגוריית המס המוגדרת כברירת מחדל למוצר (ברירת המחדל היא null)

MINT_IS_GROUP_ORG

ארגון קבוצת IS (ברירת המחדל היא false)

MINT_HAS_BROKER

לא תקין (ברירת המחדל היא False)

MINT_TIMEZONE

אזור זמן (ברירת המחדל היא null)

MINT_TAX_ENGINE_EXTERNAL_ID

מזהה מנגנון המס (ברירת המחדל היא null)

MINT_COUNTRY

המדינה של הארגון (ברירת המחדל היא null)

MINT_REG_NO

מספר הרישום של הארגון, בבריטניה, הערך שונה ממזהה המס (ברירת המחדל היא null)

MINT_BILLING_CYCLE_TYPE

PRORATED,‏ CALENDAR_MONTH (ברירת המחדל היא CALENDAR_MONTH)

MINT_SUPPORTED_BILLING_TYPE

PREPAID/POSTPAID/BOTH (ברירת המחדל היא PREPAID)

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

מציינת אם לארגון יש חיוב עצמי לכל המפתחים(ברירת המחדל היא לא נכון)

MINT_HAS_SEPARATE_INV_FOR_PROD

מציינת אם לארגון יש חשבונית נפרדת לכל מוצר (ברירת המחדל היא לא נכון)

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.isDeveloper suspendeded" ו-"mint.limitsPolicyError" יוגדרו משתנים שיכול לשמש לטיפול נוסף בחריגות במקרה הצורך.