Instalowanie usług zarabiania

Usługi zarabiania są rozszerzeniem Apigee Edge, dlatego nie działają jako samodzielny proces. Działają w ramach dowolnej istniejącej konfiguracji Apigee Edge, z wyjątkiem konfiguracji All-In-One (AIO) . Nie możesz zainstalować usług zarabiania w konfiguracji AIO.

Wymagania dotyczące zarabiania

  • Jeśli instalujesz zarabianie w topologii Edge, która korzysta z wielu węzłów serwera zarządzania takich jak instalacja z 13 węzłami, przed zainstalowaniem zarabiania musisz zainstalować oba węzły serwera zarządzania Edge.
  • Aby zainstalować zarabianie w Edge, gdzie instalacja Edge ma wiele węzłów Postgres, węzły Postgres muszą być skonfigurowane w trybie główny/rezerwowy. Nie możesz zainstalować zarabiania w Edge, jeśli masz wiele głównych węzłów Postgres. Więcej informacji znajdziesz w artykule Konfigurowanie replikacji głównej i rezerwowej w Postgres.
  • Zarabianie nie jest dostępne w konfiguracji All-In-One (AIO).

Omówienie instalacji

Poniższe czynności pokazują, jak dodać usługi zarabiania do istniejącej instalacji Apigee Edge:

  • Użyj narzędzia apigee-setup, aby zaktualizować węzeł serwera zarządzania Apigee i włączyć usługi zarabiania, np. zarządzanie katalogiem, konfigurację limitów i powiadomień konfiguracji, rozliczeń i raportowania.

    Jeśli masz wiele węzłów serwera zarządzania, np. w instalacji z 13 węzłami, przed zainstalowaniem zarabiania musisz zainstalować oba węzły serwera zarządzania Edge.

  • Użyj narzędzia apigee-setup, aby zaktualizować procesor komunikatów Apigee i włączyć komponenty środowiska wykonawczego usług zarabiania, np. zasadę rejestrowania transakcji i egzekwowanie limitów. Jeśli masz wiele procesorów komunikatów, zainstaluj zarabianie na wszystkich z nich.
  • Przeprowadź proces wdrażania zarabiania w organizacjach Edge.
  • Skonfiguruj portal usług dla deweloperów Apigee (lub po prostu portal), aby obsługiwał zarabianie. Więcej informacji znajdziesz w artykule Konfigurowanie zarabiania w portalu dla programistów.

Tworzenie cichego pliku konfiguracyjnego na potrzeby zarabiania

Poniżej znajdziesz przykład cichego pliku konfiguracyjnego na potrzeby instalacji zarabiania. W razie potrzeby edytuj ten plik. Aby uwzględnić ten plik, użyj opcji -f w setup.sh.

# Edge configuration properties
# Specify IP address or DNS name of node.
IP1=192.168.1.1  # Management Server, SymasLDAP, New Edge 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>"

Uwagi:

  • Jeśli plik konfiguracyjny Edge nie zawiera informacji o SMTP, dodaj je. Zarabianie wymaga serwera SMTP.
  • W instalacji z jednym centrum danych wszystkie węzły ZooKeeper są domyślnie skonfigurowane jako węzły główne. Gdy instalujesz Edge w wielu centrach danych, niektóre węzły ZooKeeper będą skonfigurowane jako węzły obserwatorów. Upewnij się, że właściwość ZK_HOSTS powyżej określa węzeł główny w instalacji z wieloma centrami danych.
  • Jeśli włączysz uwierzytelnianie Cassandra, możesz przekazać nazwę użytkownika i hasło Cassandra za pomocą tych właściwości:
    CASS_USERNAME
    CASS_PASSWORD

Integracja usług zarabiania ze wszystkimi serwerami zarządzania

Aby zintegrować zarabianie z węzłami serwera zarządzania, wykonaj te czynności.

  1. Jeśli instalujesz zarabianie w topologii Edge, która korzysta z wielu węzłów serwera zarządzania , np. w instalacji z 13 węzłami, przed zainstalowaniem zarabiania 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, że należy zintegrować zarabianie.

    Plik konfiguracyjny musi być dostępny lub czytelny dla użytkownika „apigee”.

  3. Jeśli instalujesz zarabianie w wielu węzłach serwera zarządzania, powtórz krok 2 w drugim węźle serwera zarządzania.

Po pomyślnej konfiguracji w bazie danych PostgreSQL zostanie utworzony schemat RDBMS dla usług zarabiania. W ten sposób zakończysz integrację usług zarabiania i powiązanych z nimi komponentów z serwerem Postgres.

Integracja usług zarabiania ze wszystkimi procesorami komunikatów

Aby zintegrować zarabianie ze wszystkimi węzłami procesora komunikatów, wykonaj tę procedurę.

  1. W pierwszym węźle procesora komunikatów w wierszu poleceń uruchom skrypt konfiguracyjny:
    /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile

    Opcja -p mo określa, że należy zintegrować zarabianie.

    Plik konfiguracyjny musi być dostępny lub czytelny dla użytkownika „apigee”.

  2. Powtórz tę procedurę we wszystkich węzłach procesora komunikatów.

Po pomyślnej konfiguracji procesor komunikatów zostanie zaktualizowany o usługi zarabiania. W ten sposób zakończysz integrację usług zarabiania i powiązanych z nimi komponentów z procesorami wiadomości.

Wdrażanie zarabiania

Aby utworzyć nową organizację i włączyć zarabianie:

  1. Utwórz organizację tak jak każdą inną nową organizację. Więcej informacji znajdziesz w artykule Wdrażanie organizacji.
  2. Użyj interfejsu API do udostępniania zarabiania zgodnie z opisem w artykule Włączanie zarabiania w organizacji. Aby to zrobić, musisz mieć uprawnienia administratora systemu.

Gdy następnym razem zalogujesz się w nowym interfejsie Edge, w menu najwyższego poziomu organizacji zobaczysz pozycję Zarabianie:

Menu Zarabianie w nowym interfejsie Edge

Aby skonfigurować portal tak, aby obsługiwał zarabianie, przeczytaj artykuł Konfigurowanie zarabiania w portalu dla programistów.

Dodawanie węzła serwera zarządzania do instalacji zarabiania

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

Aby dodać serwer zarządzania:

  1. Zainstaluj nowy serwer zarządzania.
  2. Zainstaluj zarabianie na nowym serwerze zarządzania za pomocą tego polecenia:
    /opt/apigee/apigee-setup/bin/setup.sh -p mo -f /opt/silent.conf

Dodatkowa konfiguracja

Przesyłanie dokumentów rozliczeniowych jako plików PDF

Zarabianie wyświetla dokumenty rozliczeniowe użytkownikom w formacie HTML. Aby udostępniać dokumenty rozliczeniowe jako pliki PDF, możesz zintegrować zarabianie z systemem rozliczeniowym, który umożliwia generowanie plików PDF lub licencjonować obsługiwaną bibliotekę PDF innej firmy.

Konfigurowanie ustawień organizacji

Aby dodać lub zaktualizować atrybuty organizacji, możesz użyć żądania PUT, jak pokazano w tym przykładzie:

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

Zarabianie odpowiada ustawieniami organizacji. Na przykład:

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

W tabeli poniżej znajdziesz listę atrybutów na poziomie organizacji, które można skonfigurować w organizacji Mint.

Atrybuty Opis
MINT_TAX_MODEL

Akceptowane wartości to „DISCLOSED”, „UNDISCLOSED”, „HYBRID” (domyślnie null)

MINT_CURRENCY

Kod waluty ISO (domyślnie null)

MINT_TAX_NEXUS

Nexus podatkowy (domyślnie null)

MINT_DEFAULT_PROD_TAX_CATEGORY

Domyślna kategoria podatku od produktu (domyślnie null)

MINT_IS_GROUP_ORG

Organizacja grupy IS (domyślnie „false”)

MINT_HAS_BROKER

Ma brokera (domyślnie false)

MINT_TIMEZONE

Strefa czasowa (domyślnie null)

MINT_TAX_ENGINE_EXTERNAL_ID

Identyfikator silnika podatkowego (domyślnie null)

MINT_COUNTRY

Kraj organizacji (domyślnie null)

MINT_REG_NO

Numer rejestracyjny organizacji. W Wielkiej Brytanii jest to inny numer niż identyfikator podatkowy (domyślnie null).

MINT_BILLING_CYCLE_TYPE

„PRORATED”, „CALENDAR_MONTH” (domyślnie „CALENDAR_MONTH”)

MINT_SUPPORTED_BILLING_TYPE

„PREPAID” / „POSTPAID” / „BOTH” (domyślnie „PREPAID”)

MINT_IS_SEPARATE_INV_FOR_FEES

Wskazuje, czy należy wygenerować osobną fakturę za opłaty (domyślnie „false”)

MINT_ISSUE_NETTING_STMT

Wskazuje, czy należy wystawić wyciąg z salda (domyślnie „false”)

MINT_NETTING_STMT_PER_CURRENCY

Wskazuje, czy należy wygenerować wyciąg z salda dla każdej waluty (domyślnie "false")

MINT_HAS_SELF_BILLING

Wskazuje, czy organizacja ma samodzielne rozliczenia (domyślnie „false”)

MINT_SELF_BILLING_FOR_ALL_DEV

Wskazuje, czy organizacja ma samodzielne rozliczenia dla wszystkich deweloperów (domyślnie "false")

MINT_HAS_SEPARATE_INV_FOR_PROD

Wskazuje, czy organizacja ma osobną fakturę za każdy produkt (domyślnie "false")

MINT_HAS_BILLING_ADJUSTMENT

Wskazuje, czy organizacja obsługuje korekty rozliczeń (domyślnie "false")

features.isMonetizationEnabled

Używane przez nowy interfejs Edge do wyświetlania menu związanego z zarabianiem (domyślnie jest "false")

ui.config.isOperator

Używane przez nowy interfejs Edge do wyświetlania dostawcy jako operatora, a nie organizacji (domyślnie "true")

Informacje o konfigurowaniu ustawień organizacji biznesowej za pomocą nowego interfejsu Edge znajdziesz w artykule Rozpoczęcie korzystania z zarabiania.

Limity zarabiania

Aby egzekwować limity zarabiania, dołącz zasadę sprawdzania limitów zarabiania do serwerów proxy interfejsu API. Zasada jest uruchamiana w tych sytuacjach:

  • Deweloper, który uzyskuje dostęp do interfejsu API z zarabianiem, nie jest zarejestrowany lub nie ma subskrypcji planu taryfowego.
  • Deweloper przekroczył limit transakcji w ramach subskrybowanego planu taryfowego.
  • Deweloper osiągnął limit środków na koncie przedpłaconym lub limit kredytowy na koncie z płatnością po wykonaniu usługi.

Zasada sprawdzania limitów zarabiania zgłasza błędy i blokuje wywołania interfejsu API w sytuacjach takich jak wymienione powyżej. Zasada rozszerza zasadę zgłaszania błędów i umożliwia dostosowanie zwracanej wiadomości. Obowiązujące warunki są określane na podstawie zmiennych biznesowych.

Więcej informacji znajdziesz w artykule Egzekwowanie limitów zarabiania w serwerach proxy interfejsu API.