I servizi di monetizzazione sono un'estensione di Apigee Edge, pertanto non vengono eseguiti come processi autonomi. Funziona in qualsiasi configurazione di Apigee Edge esistente, ad eccezione della configurazione All-In-One (AIO). Non puoi installare Monetization Services in una configurazione AIO.
Requisiti per la monetizzazione
- Se stai installando la monetizzazione su una topologia Edge che utilizza più nodi del server di gestione, ad esempio un'installazione di 13 nodi, devi installare entrambi i nodi del server di gestione Edge prima di installare la monetizzazione.
- Per installare la monetizzazione su Edge quando l'installazione di Edge ha più nodi Postgres, i nodi Postgres devono essere configurati in modalità Master/Standby. Non puoi installare Monetizzazione su Edge se hai più nodi master Postgres. Per saperne di più, consulta Configurare la replica master-standby per Postgres.
- La monetizzazione non è disponibile con la configurazione All-In-One (AIO).
Panoramica dell'installazione
I passaggi riportati di seguito illustrano come aggiungere i servizi di monetizzazione a un'installazione di Apigee Edge esistente:
- Utilizza l'utilità
apigee-setup
per aggiornare il nodo di Apigee Management Server in modo da abilitare i servizi di monetizzazione, ad esempio gestione del catalogo, limiti e configurazione delle notifiche, fatturazione e reporting.Se hai più nodi di Management Server, ad esempio un'installazione con 13 nodi, devi installare entrambi i nodi di Edge Management Server prima di installare Monetization.
- Utilizza l'utilità
apigee-setup
per aggiornare il Message Processor di Apigee in modo da attivare i componenti di runtime dei servizi di monetizzazione, ad esempio le norme di registrazione delle transazioni e l'applicazione dei limiti. Se hai più processori di messaggi, installa la monetizzazione su tutti. - Esegui la procedura di onboarding della monetizzazione per le tue organizzazioni Edge.
- Configura il portale Apigee Developer Services (o semplicemente il portale) per supportare la monetizzazione. Per ulteriori informazioni, consulta Configurare la monetizzazione nello Developer Portal.
Creazione di un file di configurazione silenzioso per la monetizzazione
Di seguito è riportato un esempio di file di configurazione invisibile per un'installazione della funzionalità Monetizzazione. Modifica questo file in base alle tue esigenze di configurazione. Utilizza l'opzione -f in setup.sh per includere questo file.
# 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>"
Note:
- Se il file di configurazione di Edge non ha specificato le informazioni SMTP, aggiungile. La monetizzazione richiede un server SMTP.
- In un'installazione in un singolo data center, i numeri dispari di nodi ZooKeeper devono essere configurati come
voters
. Se un numero di nodi ZooKeeper è pari, alcuni nodi verranno configurati comeobservers
. Quando installi Edge in un numero pari di data center, alcuni nodi ZooKeeper devono essere configurati comeobservers
per rendere dispari il numero di nodi degli elettori. Durante l'elezione del leader di ZooKeeper, un nodo votante verrà eletto comeleader
. Assicurati che la proprietàZK_HOSTS
riportata sopra specifichi un nodo leader in un'installazione di più data center. - Se attivi l'autenticazione Cassandra, puoi trasmettere il nome utente e la password Cassandra
utilizzando le seguenti proprietà:
CASS_USERNAME CASS_PASSWORD
Integra i servizi di monetizzazione con tutti i server di gestione
Utilizza la procedura seguente per integrare la monetizzazione nei nodi del server di gestione.
- Se stai installando Monetizzazione su una topologia Edge che utilizza più nodi del server di gestione, ad esempio un'installazione di 13 nodi, assicurati di aver installato entrambi i nodi del server di gestione prima di installare Monetizzazione.
- Sul nodo del server di gestione, esegui lo script di configurazione:
/opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile
L'opzione
-p mo
specifica di integrare la monetizzazione.Il file di configurazione deve essere accessibile o leggibile dall'utente "apigee".
- Se installi la monetizzazione su più nodi del server di gestione, ripeti il passaggio 2 sul secondo nodo del server di gestione.
Al termine della configurazione, nel database PostgreSQL viene creato uno schema RDBMS per i servizi di monetizzazione. Questa operazione completa l'integrazione dei servizi di monetizzazione e dei relativi componenti associati con il server Postgres.
Integra i servizi di monetizzazione con tutti i processori di messaggi
Utilizza la procedura seguente per integrare la monetizzazione su tutti i nodi del Message Processor.
- Sul primo nodo del processore di messaggi, esegui lo script di configurazione al prompt dei comandi:
/opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile
L'opzione
-p mo
specifica di integrare la monetizzazione.Il file di configurazione deve essere accessibile o leggibile dall'utente "apigee".
- Ripeti questa procedura su tutti i nodi di elaborazione dei messaggi.
Al termine della configurazione, il Message Processor viene aggiornato con Monetization Services. In questo modo, viene completata l'integrazione dei servizi di monetizzazione e dei relativi componenti associati con i processori di messaggi.
Onboarding per la monetizzazione
Per creare una nuova organizzazione e attivare la monetizzazione:
- Crea l'organizzazione come faresti con qualsiasi altra nuova organizzazione. Per ulteriori informazioni, consulta Eseguire l'onboarding di un'organizzazione.
- Utilizza l'API di provisioning della monetizzazione come descritto in Attivare la monetizzazione per un'organizzazione. Per farlo, devi disporre dei privilegi di amministratore di sistema.
Al successivo accesso all'interfaccia utente di Edge, vedrai la voce Monetizzazione nel menu di primo livello dell'organizzazione:
Per configurare il portale in modo che supporti la monetizzazione, consulta Configurare la monetizzazione nel portale per gli sviluppatori.
Aggiunta di un nodo del server di gestione a un'installazione di Monetizzazione
Se aggiungi un server di gestione a un'installazione Edge esistente, devi assicurarti di aggiungere i servizi di monetizzazione al nuovo server di gestione e di configurare tutti i server di gestione in modo che possano comunicare.
Per aggiungere un server di gestione:
- Installa il nuovo Management Server.
- Installa la monetizzazione sul nuovo server di gestione.
- Sul server di gestione originale, chiama quanto segue:
/opt/apigee/apigee-service/bin/apigee-service edge-mint-management-server mint-configure-mgmt-cluster
- Riavvia il server di gestione originale:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
- Sul nuovo server di gestione, chiama quanto segue:
/opt/apigee/apigee-service/bin/apigee-service edge-mint-management-server mint-configure-mgmt-cluster
- Riavvia il nuovo server di gestione:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
Configurazione aggiuntiva
Fornisci i documenti di fatturazione come file PDF
La monetizzazione mostra i documenti di fatturazione agli utenti finali in formato HTML. Per fornire i documenti di fatturazione come file PDF, puoi integrare la monetizzazione con un sistema di fatturazione che fornisca la generazione di PDF o acquistare una licenza per una libreria PDF di terze parti supportata.
Configura le impostazioni dell'organizzazione
Per aggiungere/aggiornare gli attributi dell'organizzazione, puoi utilizzare una richiesta PUT
, come illustrato nell'esempio seguente:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \ -v http://ms_IP:8080/v1/organizations/orgId -d 'org object with attributes' -X PUT
La monetizzazione risponde con le impostazioni dell'organizzazione. Ad esempio:
{ ... "displayName": "Orgnization name", "name": "org4", "properties": { "property": [ ... { "name": "MINT_CURRENCY", "value": "USD" }, { "name": "MINT_COUNTRY", "value": "US" }, { "name": "MINT_TIMEZONE", "value": "GMT" } ] } }
La tabella riportata di seguito elenca gli attributi a livello di organizzazione disponibili per configurare un'organizzazione di zecca.
Attributi | Descrizione |
---|---|
MINT_TAX_MODEL
|
I valori accettati sono "DISCLOSED", "UNDISCLOSED", "HYBRID" (il valore predefinito è null) |
MINT_CURRENCY
|
Codice valuta ISO (valore predefinito nullo) |
MINT_TAX_NEXUS
|
Nexus fiscale (valore predefinito nullo) |
MINT_DEFAULT_PROD_TAX_CATEGORY
|
Categoria fiscale del prodotto predefinita (valore predefinito nullo) |
MINT_IS_GROUP_ORG
|
Organizzazione del gruppo di IS (il valore predefinito è "false") |
MINT_HAS_BROKER
|
Non funzionante (il valore predefinito è false) |
MINT_TIMEZONE
|
Fuso orario (valore predefinito null) |
MINT_TAX_ENGINE_EXTERNAL_ID
|
ID motore fiscale (il valore predefinito è null) |
MINT_COUNTRY
|
Paese dell'organizzazione (valore predefinito nullo) |
MINT_REG_NO
|
Numero di registrazione dell'organizzazione, il Regno Unito fornisce un numero diverso dall'ID fiscale (il valore predefinito è null) |
MINT_BILLING_CYCLE_TYPE
|
"PRORATED", "CALENDAR_MONTH" (il valore predefinito è "CALENDAR_MONTH") |
MINT_SUPPORTED_BILLING_TYPE
|
"PREPAID"/"POSTPAID"/"BOTH" (il valore predefinito è "PREPAID") |
MINT_IS_SEPARATE_INV_FOR_FEES
|
Indica se deve essere generata una fattura separata per le commissioni (il valore predefinito è "false") |
MINT_ISSUE_NETTING_STMT
|
Indica se deve essere emesso un'istruzione di compensazione (il valore predefinito è "false") |
MINT_NETTING_STMT_PER_CURRENCY
|
Indica se l'estratto conto di compensazione deve essere generato per valuta (il valore predefinito è "false"). |
MINT_HAS_SELF_BILLING
|
Indica se l'organizzazione ha la fatturazione autonoma (il valore predefinito è "false") |
MINT_SELF_BILLING_FOR_ALL_DEV
|
Indica se l'organizzazione ha l'autofatturazione per tutti gli sviluppatori (il valore predefinito è "false") |
MINT_HAS_SEPARATE_INV_FOR_PROD
|
Indica se l'organizzazione ha una fattura separata per prodotto (il valore predefinito è "false") |
MINT_HAS_BILLING_ADJUSTMENT
|
Indica se l'organizzazione supporta gli aggiustamenti di fatturazione (il valore predefinito è "false") |
features.isMonetizationEnabled
|
Utilizzato dall'interfaccia utente di gestione per visualizzare il menu specifico della monetizzazione (il valore predefinito è "false") |
ui.config.isOperator
|
Utilizzato dall'interfaccia utente di gestione per visualizzare il fornitore come operatore rispetto all'organizzazione (il valore predefinito è "true"). |
Per configurare le impostazioni dell'organizzazione aziendale utilizzando l'interfaccia utente di gestione, consulta Accedere alla monetizzazione in Edge.
Limiti di monetizzazione
Per applicare i limiti di monetizzazione, collega il criterio di controllo dei limiti di monetizzazione ai proxy API. Nello specifico, il criterio viene attivato nelle seguenti condizioni:
- Lo sviluppatore che accede all'API monetizzata non è registrato o non ha sottoscritto il piano tariffario.
- Lo sviluppatore ha superato il volume di transazioni per il piano tariffario sottoscritto.
- È stato raggiunto il saldo dell'account prepagato o il limite di credito postpaid dello sviluppatore.
Il criterio di controllo dei limiti di monetizzazione genera errori e blocca le chiamate API in situazioni come quelle elencate sopra. Il criterio estende il criterio Aumenta errori ed è possibile personalizzare il messaggio restituito. Le condizioni applicabili derivano dalle variabili aziendali.
Per ulteriori informazioni, consulta Applicare i limiti di monetizzazione ai proxy API.