Monetarisierungsdienste installieren

Monetarisierungsdienste sind eine Erweiterung von Apigee Edge und werden daher nicht als eigenständiger Prozess ausgeführt. Sie kann in jeder vorhandenen Apigee Edge-Umgebung ausgeführt werden, mit Ausnahme der All-in-One-Konfiguration (AIO). Monetarisierungsdienste können nicht in einer AIO-Konfiguration installiert werden.

Anforderungen an die Monetarisierung

  • Wenn du die Monetarisierung in einer Edge-Topologie installierst, die mehrere Management-Serverknoten verwendet, z. B. eine Installation mit 13 Knoten, musst du beide Edge-Management-Serverknoten installieren, bevor du die Monetarisierung installierst.
  • Wenn du Monetarisierung auf Edge installieren möchtest, die Edge-Installation aber mehrere Postgres-Knoten hat, müssen die Postgres-Knoten im Master/Standby-Modus konfiguriert sein. Du kannst die Monetarisierung nicht auf Edge installieren, wenn du mehrere Postgres-Masterknoten hast. Weitere Informationen finden Sie unter Master-Standby-Replikation für Postgres einrichten.
  • Die Monetarisierung ist bei der All-in-One-Konfiguration (AIO) nicht verfügbar.

Installation

In den folgenden Schritten wird gezeigt, wie Sie Monetarisierungsdienste zu einer vorhandenen Apigee Edge-Installation hinzufügen:

  • Verwenden Sie das Dienstprogramm apigee-setup, um den Apigee-Verwaltungsserverknoten zu aktualisieren und die Monetarisierungsdienste zu aktivieren, z. B. Katalogverwaltung, Konfiguration von Limits und Benachrichtigungen, Abrechnung und Berichterstellung.

    Wenn Sie mehrere Management-Serverknoten haben, z. B. eine Installation mit 13 Knoten, müssen Sie beide Edge-Management-Serverknoten installieren, bevor Sie die Monetarisierung installieren.

  • Verwenden Sie das Dienstprogramm apigee-setup, um den Apigee Message Processor zu aktualisieren und die Laufzeitkomponenten der Monetarisierungsdienste zu aktivieren, z. B. die Richtlinie für die Transaktionsaufzeichnung und die Erzwingung von Limits. Wenn du mehrere Message Processor hast, musst du die Monetarisierung auf allen installieren.
  • Führe das Monetarisierungs-Onboarding für deine Edge-Organisationen durch.
  • Konfigurieren Sie das Apigee Developer Services-Portal (oder einfach das Portal) für die Monetarisierung. Weitere Informationen finden Sie unter Monetarisierung im Entwicklerportal konfigurieren.

Silent-Konfigurationsdatei für die Monetarisierung erstellen

Unten sehen Sie ein Beispiel für eine stille Konfigurationsdatei für die Monetarisierung. Bearbeiten Sie diese Datei nach Bedarf für Ihre Konfiguration. Verwenden Sie die Option „-f“ für setup.sh, um diese Datei einzubeziehen.

# 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>"

Hinweise:

  • Wenn in Ihrer Edge-Konfigurationsdatei keine SMTP-Informationen angegeben sind, fügen Sie sie hinzu. Für die Monetarisierung ist ein SMTP-Server erforderlich.
  • Bei einer einzelnen Rechenzentrumsinstallation werden alle ZooKeeper-Knoten standardmäßig als Leiter konfiguriert. Wenn Sie Edge in mehreren Rechenzentren installieren, werden einige ZooKeeper-Knoten als Beobachter konfiguriert. Achten Sie darauf, dass in der ZK_HOSTS-Property oben ein Führungsknoten in einer Installation mit mehreren Rechenzentren angegeben ist.
  • Wenn Sie die Cassandra-Authentifizierung aktivieren, können Sie den Cassandra-Nutzernamen und das Cassandra-Passwort mithilfe der folgenden Eigenschaften übergeben:
    CASS_USERNAME
    CASS_PASSWORD

Monetarisierungsdienste in alle Verwaltungsserver einbinden

So integrierst du die Monetarisierung auf Management-Server-Knoten:

  1. Wenn du die Monetarisierung in einer Edge-Topologie installierst, die mehrere Managementserverknoten verwendet, z. B. eine Installation mit 13 Knoten, musst du beide Managementserverknoten installieren, bevor du die Monetarisierung installierst.
  2. Führen Sie auf dem Management-Serverknoten das Setup-Script aus:
    /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile

    Mit der Option -p mo wird die Monetarisierung eingebunden.

    Der Nutzer „apigee“ muss auf die Konfigurationsdatei zugreifen oder sie lesen können.

  3. Wenn du die Monetarisierung auf mehreren Management-Server-Knoten installierst, wiederhole Schritt 2 auf dem zweiten Management-Server-Knoten.

Nach erfolgreicher Konfiguration wird in der PostgreSQL-Datenbank ein RDBMS-Schema für Monetarisierungsdienste erstellt. Damit ist die Integration der Monetarisierungsdienste und der zugehörigen Komponenten in den Postgres-Server abgeschlossen.

Monetarisierungsdienste in alle Message Processors einbinden

So integrierst du die Monetarisierung auf allen Message Processor-Knoten:

  1. Führen Sie auf dem ersten Message Processor-Knoten an der Eingabeaufforderung das Einrichtungsskript aus:
    /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile

    Mit der Option -p mo wird die Monetarisierung eingebunden.

    Der Nutzer „apigee“ muss auf die Konfigurationsdatei zugreifen oder sie lesen können.

  2. Wiederholen Sie diesen Vorgang für alle Nachrichtenverarbeiterknoten.

Nach erfolgreicher Konfiguration wird der Nachrichten-Prozessor mit Monetarisierungsdiensten aktualisiert. Damit ist die Einbindung der Monetarisierungsdienste und der zugehörigen Komponenten in die Nachrichtenabwickler abgeschlossen.

Monetarisierung – Onboarding

So erstellen Sie eine neue Organisation und aktivieren die Monetarisierung:

  1. Erstellen Sie die Organisation wie jede andere neue Organisation. Weitere Informationen finden Sie unter Organisationen einrichten.
  2. Verwenden Sie die Monetarisierungsbereitstellungs-API wie unter Monetarisierung für eine Organisation aktivieren beschrieben. Dazu benötigen Sie Administratorberechtigungen.

Wenn Sie sich das nächste Mal in der Edge-Benutzeroberfläche anmelden, sehen Sie den Eintrag „Monetarisierung“ im Menü der obersten Ebene für die Organisation:

Informationen zum Konfigurieren des Portals für die Monetarisierung finden Sie unter Monetarisierung im Entwicklerportal konfigurieren.

Einem Monetarisierungs-Installation einen Verwaltungsserverknoten hinzufügen

Wenn du einer bestehenden Edge-Installation einen Verwaltungsserver hinzufügst, musst du dem neuen Verwaltungsserver Monetarisierungsdienste hinzufügen und alle Verwaltungsserver so konfigurieren, dass sie miteinander kommunizieren können.

So fügen Sie einen Verwaltungsserver hinzu:

  1. Installieren Sie den neuen Verwaltungsserver.
  2. Installiere die Monetarisierung mit dem folgenden Befehl auf dem neuen Verwaltungsserver:
    /opt/apigee/apigee-setup/bin/setup.sh -p mo -f /opt/silent.conf

Zusätzliche Konfiguration

Abrechnungsdokumente als PDF-Dateien bereitstellen

Bei der Monetarisierung werden Abrechnungsdokumente Endnutzern im HTML-Format angezeigt. Wenn Sie Abrechnungsdokumente als PDF-Dateien bereitstellen möchten, können Sie die Monetarisierung in ein Abrechnungssystem einbinden, das die PDF-Generierung unterstützt, oder eine unterstützte PDF-Bibliothek von Drittanbietern lizenzieren.

Organisationseinstellungen konfigurieren

Um Organisationsattribute hinzuzufügen oder zu aktualisieren, können Sie eine PUT-Anfrage verwenden, wie im folgenden Beispiel gezeigt:

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

Die Monetarisierung antwortet mit den Einstellungen der Organisation. Beispiel:

{
  ...
  "displayName": "Orgnization name",
  "name": "org4",
  "properties": {
    "property": [
      ...
      {
        "name": "MINT_CURRENCY",
        "value": "USD"
      },
      {
        "name": "MINT_COUNTRY",
        "value": "US"
      },
      {
        "name": "MINT_TIMEZONE",
        "value": "GMT"
      }
    ]
  }
}

In der folgenden Tabelle sind die Attribute auf Organisationsebene aufgeführt, die zum Konfigurieren einer Mint-Organisation verfügbar sind.

Attribute Beschreibung
MINT_TAX_MODEL

Zulässige Werte sind „DISCLOSED“, „UNDISCLOSED“ und „HYBRID“ (Standardwert ist „null“).

MINT_CURRENCY

ISO-Währungscode (Standardwert: „null“)

MINT_TAX_NEXUS

Steuerliche Verbindung (Standardwert: „null“)

MINT_DEFAULT_PROD_TAX_CATEGORY

Standardsteuerkategorie für Produkte (Standard ist „null“)

MINT_IS_GROUP_ORG

IS-Gruppenorganisation (Standard ist „false“)

MINT_HAS_BROKER

Ist kaputt (Standardwert ist „false“)

MINT_TIMEZONE

Zeitzone (Standardwert: „null“)

MINT_TAX_ENGINE_EXTERNAL_ID

Steuer-Engine-ID (Standardwert: null)

MINT_COUNTRY

Land der Organisation (Standardwert: „null“)

MINT_REG_NO

Die Registrierungsnummer der Organisation im Vereinigten Königreich ist eine andere als die Steuernummer (Standard ist „null“).

MINT_BILLING_CYCLE_TYPE

„PRORATED“, „CALENDAR_MONTH“ (Standard ist „CALENDAR_MONTH“)

MINT_SUPPORTED_BILLING_TYPE

„PREPAID“/„POSTPAID“/„BOTH“ (Standard ist „PREPAID“)

MINT_IS_SEPARATE_INV_FOR_FEES

Gibt an, ob eine separate Rechnung für Gebühren erstellt werden soll (Standardwert: „false“).

MINT_ISSUE_NETTING_STMT

Gibt an, ob eine Saldierungsabrechnung erstellt werden soll (Standardwert: „false“)

MINT_NETTING_STMT_PER_CURRENCY

Gibt an, ob die Saldierungsabrechnung pro Währung generiert werden soll (Standard ist „false“).

MINT_HAS_SELF_BILLING

Gibt an, ob die Organisation die Abrechnung selbst durchführt (Standard ist „false“).

MINT_SELF_BILLING_FOR_ALL_DEV

Gibt an, ob die Organisation die Abrechnung für alle Entwickler selbst durchführt (Standard ist „false“).

MINT_HAS_SEPARATE_INV_FOR_PROD

Gibt an, ob die Organisation eine separate Rechnung pro Produkt hat (Standard ist „false“).

MINT_HAS_BILLING_ADJUSTMENT

Gibt an, ob die Organisation Abrechnungsanpassungen unterstützt (Standardwert: „false“)

features.isMonetizationEnabled

Wird von der Verwaltungsoberfläche verwendet, um ein Monetarisierungsmenü anzuzeigen (Standard ist „false“).

ui.config.isOperator

Wird von der Verwaltungsoberfläche verwendet, um den Anbieter als „Anbieter“ oder „Organisation“ anzuzeigen (Standardwert: „wahr“)

Informationen zum Konfigurieren der Einstellungen für eine Unternehmensorganisation über die Verwaltungsoberfläche findest du unter Erste Schritte mit der Monetarisierung.

Monetarisierungslimits

Wenn Sie Monetarisierungslimits erzwingen möchten, hängen Sie die Richtlinie „MonetizationLimitsCheck“ an API-Proxys an. Die Richtlinie wird insbesondere unter den folgenden Bedingungen ausgelöst:

  • Der Entwickler, der auf die monetarisierte API zugreift, ist nicht registriert oder hat den Preisplan nicht abonniert.
  • Der Entwickler hat das Transaktionsvolumen für den abonnierten Tarif überschritten.
  • Das Guthaben des Prepaid-Kontos oder das Kreditlimit des Postpaid-Kontos des Entwicklers wurde erreicht.

Die Richtlinie „MonetizationLimitsCheck“ löst Fehler aus und blockiert API-Aufrufe in Situationen wie den oben aufgeführten. Die Richtlinie erweitert die RaiseFault-Richtlinie und Sie können die zurückgegebene Nachricht anpassen. Die anwendbaren Bedingungen werden aus Geschäftsvariablen abgeleitet.

Weitere Informationen finden Sie unter Monetarisierungslimits für API-Proxys erzwingen.