Instalowanie usług zarabiania

Edge for Private Cloud wer. 4.16.05

Usługi generowania przychodu są rozszerzeniem Apigee Edge, dlatego nie działają jako samodzielny proces. Działa w ramach dowolnej istniejącej konfiguracji Apigee Edge.

Wymagania dotyczące zarabiania

  • Jeśli instalujesz funkcję Monetization w topologii brzegowej, która korzysta z wielu węzłów serwera zarządzania, np. w instalacji z 13 węzłami, przed zainstalowaniem funkcji Zarabianie musisz zainstalować oba węzły serwera zarządzania brzegiem.
  • Aby zainstalować funkcję Monetization w Edge, gdy instalacja Edge ma wiele węzłów Postgres, węzły Postgres muszą być skonfigurowane w trybie głównym/gotowym. Nie możesz zainstalować funkcji zarabiania na Edge, jeśli masz wiele węzłów głównych Postgres. Więcej informacji znajdziesz w artykule Konfigurowanie replikacji master-Standby dla Postgres.

Omówienie instalacji

Poniższe kroki pokazują, jak dodać usługi zarabiania w istniejącej instalacji Apigee Edge:

  • Za pomocą narzędzia apigee-setup zaktualizuj węzeł serwera zarządzania Apigee w celu włączenia usług zarabiania, na przykład zarządzania katalogiem, konfiguracji limitów i powiadomień oraz rozliczeń i raportowania.

    Jeśli masz wiele węzłów serwera zarządzania, na przykład instalacja z 13 węzłami, przed zainstalowaniem funkcji Zarabianie musisz zainstalować oba węzły serwera zarządzania brzegiem.
  • Za pomocą narzędzia apigee-setup zaktualizuj procesor wiadomości Apigee w celu włączenia komponentów środowiska wykonawczego Usług zarabiania, na przykład zasad rejestrowania transakcji i egzekwowania limitów. Jeśli korzystasz z kilku podmiotów przetwarzających wiadomości, zainstaluj zarabianie na nich wszystkich.
  • Przeprowadź proces wdrażania funkcji zarabiania w swoich organizacjach Edge.
  • Skonfiguruj portal usług dla deweloperów, aby umożliwić zarabianie. Więcej informacji znajdziesz na stronie http://apigee.com/docs/monetization/content/configure-monetization-developer-portal.

Tworzenie cichego pliku konfiguracji na potrzeby zarabiania

Poniżej znajduje się przykładowy dyskretny plik konfiguracji instalacji z funkcją zarabiania. Zmodyfikuj ten plik zgodnie z potrzebami konfiguracji. Aby dołączyć ten plik, użyj opcji „-f” w pliku setup.sh.

Uwaga: zwykle dodajesz te właściwości do tego samego pliku konfiguracji, który został użyty do zainstalowania Edge, zgodnie z opisem w sekcji Instalowanie komponentów Edge w węźle.

# 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
Uwagi:
  • Jeśli plik konfiguracyjny Edge nie zawiera informacji SMTP, dodaj je. Generowanie przychodu wymaga serwera SMTP.
  • W pojedynczej instalacji centrum danych wszystkie węzły ZooKeeper są domyślnie skonfigurowane jako węzły wiodące. Gdy instalujesz Edge w wielu centrach danych, niektóre węzły ZooKeeper zostaną skonfigurowane jako obserwatorzy. Sprawdź, czy powyższa właściwość ZK_HOSTS wskazuje węzeł wiodący w instalacji z wieloma centrami danych.
  • Jeśli włączysz uwierzytelnianie Cassandra, będziesz mieć możliwość przekazywania nazwy użytkownika i hasła Cassandra, korzystając z tych właściwości:
    CASS_USERNAME
    CASS_PASSWORD

Integracja usług zarabiania ze wszystkimi serwerami zarządzania

Wykonaj czynności opisane poniżej, aby zintegrować zarabianie w węzłach serwera zarządzania.

  1. Jeśli instalujesz funkcję Monetization w topologii brzegowej, która korzysta z wielu węzłów serwera zarządzania, np. w instalacji z 13 węzłami, przed zainstalowaniem funkcji Monetization musisz zainstalować oba węzły serwera zarządzania.
  2. W węźle serwera zarządzania uruchom skrypt konfiguracji:
    > /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile

    Opcja „-p mo” określa integrację funkcji Zarabianie.

    Plik konfiguracji musi być dostępny i czytelny dla użytkownika „apigee”. Na przykład umieść plik w katalogu /tmp w węźle.
  3. Jeśli instalujesz funkcję Zarabianie w wielu węzłach serwera zarządzania, powtórz krok 2 w drugim węźle serwera zarządzania.

Po udanej konfiguracji w bazie danych PostgreSQL tworzony jest schemat RDBMS dla usług zarabiania. Na tym kończy się integracja usług zarabiania i powiązanych z nimi komponentów z serwerem Postgres.

Integracja usług zarabiania ze wszystkimi systemami do przetwarzania wiadomości

Wykonaj poniższe czynności, aby zintegrować zarabianie we wszystkich węzłach procesora wiadomości.

  1. W pierwszym węźle procesora wiadomości w wierszu polecenia uruchom skrypt konfiguracji:
    > /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile


    Opcja „-p mo” określa integrację funkcji Zarabianie.

    Plik konfiguracji musi być dostępny i czytelny dla użytkownika „apigee”. Na przykład umieść plik w katalogu /tmp w węźle.
  2. Powtórz tę procedurę we wszystkich węzłach procesora wiadomości.

Po udanej konfiguracji usługa przetwarzania wiadomości zostanie zaktualizowana do usług zarabiania. Na tym kończy się integracja usług zarabiania i powiązanych z nimi składników z podmiotami przetwarzającymi wiadomości.

Wprowadzenie do zarabiania

Aby utworzyć nową organizację z włączoną funkcją zarabiania, najpierw utwórz ją tak samo jak każdą nową organizację. Więcej informacji znajdziesz w artykule Rejestrowanie organizacji.

Dodatkowe wprowadzenie umożliwiające zarabianie w organizacji

Aby dokończyć proces włączania funkcji zarabiania w organizacji, musisz:

  1. Utwórz grupę zarabiania: mxgroup.
  2. Dodaj Qpid do grupy.
  3. Włącz zarabianie na koncie organizacji.
  4. Włącz ustawienia powiadomień w organizacji.
  5. Powtórz te czynności dla wszystkich organizacji, w których chcesz włączyć zarabianie.

Aby wykonać wszystkie te zadania, użyj polecenia enable-monetization. Skrypt pobiera plik konfiguracji z tymi właściwościami:

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.

Uwagi:

  • Ustaw te same wartości dla CASS_HOSTS i REGION, które zostały użyte podczas instalacji funkcji Zarabianie.
  • Jeśli włączasz funkcję zarabiania w konfiguracji wielu centrów danych:
    • Musisz powtórzyć proces wprowadzania na serwerze zarządzania w każdym centrum danych.
    • Plik konfiguracji powinien zawierać tylko listę węzłów Qpid w konfigurowanym centrum danych.

Aby uruchomić skrypt:

  1. Wywołaj skrypt:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-provision enable-monetization -f configFile

    Plik konfiguracji musi być dostępny i czytelny dla użytkownika „apigee”. Na przykład umieść plik w katalogu /tmp w węźle.

    Jeśli masz kilka serwerów zarządzania, możesz uruchomić ten skrypt tylko na jednym z nich.

    Ten skrypt replikuje dane organizacji, usług, programistów i aplikacji z bazy danych Cassandra do bazy danych Monetization PostgreSQL. Po zainstalowaniu Usług zarabiania dane zostaną automatycznie zsynchronizowane.
  2. Powtórz tę procedurę dla każdej organizacji, w której chcesz włączyć zarabianie.
  3. Jeśli pracujesz w środowisku wielu centrów danych, powtórz ten proces na serwerze zarządzania w innym centrum danych. Sprawdź, czy plik konfiguracyjny zawiera tylko węzły Qpid w konfigurowanym centrum danych.

Po kolejnym zalogowaniu się w interfejsie Edge zobaczysz w menu najwyższego poziomu wpis Zarabianie:

Skonfiguruj portal usług dla programistów

Informacje o tym, jak skonfigurować portal usług dla programistów do obsługi zarabiania, znajdziesz na stronie http://apigee.com/docs/monetization/content/configure-monetization-developer-portal.

Dodawanie węzła serwera zarządzania do instalacji służącej do generowania przychodu

Jeśli dodasz serwer zarządzania do istniejącej instalacji brzegowej, musisz dodać do nowego serwera zarządzania usługi generowania przychodu i skonfigurować wszystkie serwery zarządzania tak, aby mogły się komunikować.

Aby dodać serwer zarządzania:

  1. Zainstaluj nowy serwer zarządzania.
  2. Zainstaluj funkcję Zarabianie na nowym serwerze zarządzania.
  3. Na oryginalnym serwerze zarządzania wywołaj to polecenie:
    > /opt/apigee/apigee-service/bin/apigee-service Edge-mint-management-server mint-configure-mgmt-cluster
  4. Ponownie uruchom oryginalny serwer zarządzania:
    > /opt/apigee/apigee-service/bin/apigee-service Edge-management-server restart
  5. Na nowym serwerze zarządzania wywołaj to polecenie:
    > /opt/apigee/apigee-service/bin/apigee-service Edge-mint-management-server mint-configure-mgmt-cluster
  6. Ponownie uruchom nowy serwer zarządzania:
    > /opt/apigee/apigee-service/bin/apigee-service Edge-management-server restart

Dodatkowa konfiguracja

Prześlij dokumenty rozliczeniowe w postaci plików PDF

Generowanie przychodu wyświetla użytkownikom dokumenty rozliczeniowe w formacie HTML. Aby udostępnić dokumenty rozliczeniowe w postaci plików PDF, możesz zintegrować funkcję Zarabianie z systemem rozliczeniowym, który generuje pliki PDF lub licencjonuje obsługiwaną bibliotekę PDF innej firmy.

Skonfiguruj ustawienia organizacji

Ustawienia backendu: w tabeli poniżej znajdziesz atrybuty na poziomie organizacji, które można skonfigurować przy tworzeniu organizacji. Do dodawania/aktualizowania tych atrybutów możesz użyć wywołania PUT, jak pokazano poniżej:

> curl -u ${ADMIN_EMAIL}:${ADMINPW} -v http://<management-ip>:8080/v1/organizations/{orgId} -d '{org object with attributes}' -X PUT

Na przykład dane wyjściowe powyższego polecenia CURL będą wyglądać np. tak:

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

Atrybuty

Opis

MINT_TAX_MODEL

Akceptowane wartości to DISCLOSED,

UNDISCLOSED, HYBRID (wartość domyślna to null)

MINT_CURRENCY

Kod ISO waluty (wartość domyślna to null)

MINT_TAX_NEXUS

Placówka podatkowa (wartość domyślna to null)

MINT_DEFAULT_PROD_TAX_CATEGORY

Domyślna kategoria podatku od produktu (wartość domyślna to null)

MINT_IS_GROUP_ORG

Organizacja grupy udziału w wyśw. (wartość domyślna to fałsz)

MINT_HAS_BROKER

ma uszkodzoną wartość (wartość domyślna to fałsz),

MINT_TIMEZONE

Strefa czasowa (wartość domyślna to null)

MINT_TAX_ENGINE_EXTERNAL_ID

Identyfikator podatkowy wyszukiwarki (domyślnie jest to wartość null)

MINT_COUNTRY

Kraj organizacji (domyślnie jest to wartość null)

MINT_REG_NO

Numer rejestracyjny organizacji w Wielkiej Brytanii zawiera inny numer niż identyfikator podatkowy (wartość domyślna to null).

MINT_BILLING_CYCLE_TYPE

PRORATED, CALENDAR_MONTH (wartość domyślna to CALENDAR_MONTH)

MINT_SUPPORTED_BILLING_TYPE

PREPAID/POSTPAID/BOTH (PRZEGLĄDANE)/POSTPAID/BOTH (OBOWIĄZANE) – wartość domyślna to PREPAID (PRZETWARZONA)

MINT_IS_SEPARATE_INV_FOR_FEES

Wskazuje, czy należy wygenerować oddzielną fakturę za opłatę (wartość domyślna to fałsz)

MINT_ISSUE_NETTING_STMT

Wskazuje, czy należy wykonać instrukcję sieciową (wartość domyślna to fałsz)

MINT_NETTING_STMT_PER_CURRENCY

Wskazuje, czy instrukcja netowania powinna być wygenerowana dla każdej waluty (wartość domyślna to fałsz)

MINT_HAS_SELF_BILLING

Wskazuje, czy organizacja rozlicza się samodzielnie (wartość domyślna to fałsz)

MINT_SELF_BILLING_FOR_ALL_DEV

Wskazuje, czy organizacja rozlicza wszystkich deweloperów w imieniu wszystkich deweloperów(wartość domyślna to fałsz).

MINT_HAS_SEPARATE_INV_FOR_PROD

Wskazuje, czy organizacja ma oddzielną fakturę na usługę (wartość domyślna to false)

MINT_HAS_BILLING_ADJUSTMENT

Wskazuje, czy organizacja obsługuje wyrównania płatności (wartość domyślna to fałsz)

features.isMonetizationEnabled

Używane przez interfejs zarządzania do wyświetlania menu konkretnego zarabiania (wartość domyślna to fałsz)

ui.config.isOperator

Używane przez interfejs zarządzania do wyświetlania dostawcy jako operatora zamiast organizacji

(wartość domyślna to true)

Informacje o konfigurowaniu ustawień organizacji biznesowej przy użyciu interfejsu zarządzania znajdziesz na stronie http://apigee.com/docs/monetization-services/content/get-started-using-monetization-services.

Uwaga: jeśli korzystasz z funkcji związanych z limitami usług zarabiania i powiadomieniami, poproś deweloperów, aby dołączyli zasady limitu w procesie serwera proxy po zastosowaniu zasad weryfikacji tokena dostępu.

Zasada limitu to jawna zasada blokująca wywołanie interfejsu API po osiągnięciu określonego limitu. Zasada sprawdza limity biznesowe i zgłasza błąd w przypadku przekroczenia określonej wartości. Jest to rozszerzenie zasady zgłaszania błędów, ale warunki są pobierane ze zmiennych biznesowych.

Szablon interfejsu użytkownika jest dostępny w interfejsie zarządzania dla programistów serwerów proxy. Deweloper proxy powinien dołączyć do przepływu wiadomości zasadę tworzenia. Po wykonaniu tej zasady błąd zostanie zgłoszony z odpowiedzią o błędzie zgodnie z zasadą. Jeśli ContinueOnError ma wartość „true” (prawda), błąd nie będzie zgłaszany i ustawione zostaną zmienne przepływu „mint.limitsViolated”, „mint.isDevelopersuspended” i „mint.limitsPolicyError”, które w razie potrzeby mogą służyć do dalszej obsługi wyjątków.