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

שירותי המונטיזציה הם תוסף של Apigee Edge, ולכן הם לא פועלים כתהליך עצמאי. הוא פועל בכל הגדרה קיימת של Apigee Edge, מלבד הגדרות All-In-One (AIO). אי אפשר להתקין את שירותי המונטיזציה בתצורת AIO.

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

  • אם מתקינים את המונטיזציה בטופולוגיה של Edge שמשתמשת במספר צמתים של שרת ניהול, למשל התקנה של 13 צמתים, צריך להתקין את שני הצמתים של שרת ניהול Edge לפני התקנת המונטיזציה.
  • כדי להתקין את המונטיזציה ב-Edge, כאשר להתקנת Edge יש כמה צומתי Postgres, צריך להגדיר את צומתי Postgres במצב ראשי/המתנה. אי אפשר להתקין את המונטיזציה ב-Edge אם יש לך כמה צמתים ראשיים ב-Postgres. למידע נוסף, תוכלו לקרוא את המאמר הגדרת שכפול של שרת בהמתנה ל-Postgres.
  • מונטיזציה אינה זמינה בתצורת All-In-One (AIO).

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

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

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

    אם יש לך כמה צמתים של שרת ניהול, כמו התקנה של 13 צמתים, צריך להתקין את שני הצמתים של שרת ניהול Edge לפני התקנת המונטיזציה.

  • אפשר להשתמש בכלי העזר apigee-setup כדי לעדכן את מעבד ההודעות של Apigee כך שיאפשר את רכיבי זמן הריצה של שירותי המונטיזציה, למשל, מדיניות הקלטת העסקאות והגבלת האכיפה. אם יש לך כמה מעבדי הודעות, עליך להתקין את המונטיזציה בכולם.
  • מבצעים את תהליך ההצטרפות למונטיזציה עבור ארגוני Edge שלך.
  • צריך להגדיר את פורטל Apigee Developer Services (או פשוט, את הפורטל) כדי לתמוך במונטיזציה. למידע נוסף, ראו הגדרת מונטיזציה בפורטל למפתחים.

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

לפניכם דוגמה לקובץ תצורה שקט להתקנה של מונטיזציה. עורכים את הקובץ הזה לפי הצורך. כדי לכלול את הקובץ צריך להשתמש באפשרות -f כדי setup.sh.

# 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.
# If your password uses special characters, wrap it in single quotes.
# 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 כ-voters. אם כמה צמתים שלzoKeeper הם זוגיים, אז חלק מהצמתים יוגדרו כ-observers. כשמתקינים את Edge במספר זוגי של מרכזי נתונים, צריך להגדיר חלק מהצמתים שלzoKeeper כ-observers כדי שמספר צמתים של המצביעים יהיה אי-זוגי. במהלך הבחירות למנהיג גן גן החיות ייבחר צומת אחד של מצביע כleader. יש לוודא שהנכס 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".

  3. אם בחרת להתקין את המונטיזציה במספר צמתים של שרתי ניהול, צריך לחזור על שלב 2 בצומת השני של שרת הניהול.

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

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

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

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

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

    קובץ התצורה חייב להיות נגיש או קריא למשתמש "apigee".

  2. חוזרים על התהליך בכל הצמתים של מעבד ההודעות.

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

תהליך ההצטרפות למונטיזציה

כדי ליצור ארגון חדש ולהפעיל מונטיזציה:

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

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

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

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

אם מוסיפים שרת ניהול להתקנת 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 restart
  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 restart

הגדרות אישיות נוספות

שליחה של מסמכי חיוב כקובצי PDF

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

קביעת ההגדרות של הארגון

כדי להוסיף או לעדכן מאפייני ארגון אפשר להשתמש בבקשת PUT, כמו בדוגמה הבאה:

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \
  -v http://ms_IP:8080/v1/organizations/orgId -d 'org object with attributes' -X PUT

המונטיזציה מגיבה בהתאם להגדרות הארגון. לדוגמה:

{
  ...
  "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 (ברירת המחדל היא אפס)

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

"שולם מראש"/"תשלום מראש"/"BOTH" (ברירת המחדל היא "תשלום מראש")

MINT_IS_SEPARATE_INV_FOR_FEES

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

MINT_ISSUE_NETTING_STMT

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

MINT_NETTING_STMT_PER_CURRENCY

שדה זה מציין אם יש ליצור הצהרת רשת לכל מטבע (ברירת המחדל היא 'false')

MINT_HAS_SELF_BILLING

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

MINT_SELF_BILLING_FOR_ALL_DEV

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

MINT_HAS_SEPARATE_INV_FOR_PROD

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

MINT_HAS_BILLING_ADJUSTMENT

שדה זה מציין אם הארגון תומך בהתאמות חיוב (ברירת המחדל היא 'false')

features.isMonetizationEnabled

משמש את ממשק המשתמש לניהול כדי להציג תפריט ספציפי למונטיזציה (ברירת המחדל היא 'false')

ui.config.isOperator

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

במאמר גישה למונטיזציה ב-Edge מוסבר איך משנים את ההגדרות של הארגון העסקי באמצעות ממשק המשתמש לניהול.

מגבלות מונטיזציה

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

  • המפתח שניגש ל-Monetize API לא רשום לתוכנית התעריפים או לא נרשם אליה.
  • המפתח חרג מנפח העסקאות בתוכנית התמחור והתשלומים של המינוי.
  • הגעת ליתרת התשלום מראש בחשבון של המפתח או למסגרת האשראי בתשלום לאחר השימוש (postpay).

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

מידע נוסף זמין במאמר אכיפת מגבלות מונטיזציה בשרתי proxy ל-API.