Edge for Private Cloud v4.18.01
Monetization Services è un'estensione di Apigee Edge, pertanto non viene eseguito come processo autonomo. Viene eseguito all'interno di qualsiasi configurazione Apigee Edge esistente.
Requisiti per la monetizzazione
- Se stai installando Monetization su una topologia Edge che utilizza più nodi del server di gestione, ad esempio un'installazione con 13 nodi, devi installare entrambi i nodi del server di gestione Edge prima di installare Monetization.
- Per installare Monetizzazione su Edge, se l'installazione di Edge ha più nodi Postgres, questi devono essere configurati in modalità standby. Non puoi installare Monetization su Edge se hai più nodi master Postgres. Per saperne di più, consulta Configura la replica master-standby per Postgres.
Panoramica dell'installazione
I passaggi seguenti illustrano come aggiungere i servizi di monetizzazione a un'installazione Apigee Edge esistente:
- Utilizza l'utilità apigee-setup per aggiornare il nodo del server di gestione Apigee per attivare i servizi di monetizzazione, ad esempio la gestione del catalogo, la configurazione di limiti e notifiche, la fatturazione e i report.
Se hai più nodi del server di gestione, ad esempio un'installazione con 13 nodi, devi installare entrambi i nodi del server di gestione Edge prima di installare Monetizzazione. - Utilizza l'utilità apigee-setup per aggiornare il processore di messaggi Apigee in modo da abilitare i componenti di runtime dei servizi di monetizzazione, ad esempio la policy di registrazione delle transazioni e l'applicazione dei limiti. Se hai più processori di messaggi, installa Monetizzazione su tutti.
- Esegui la procedura di onboarding della monetizzazione per le tue organizzazioni Edge.
- Configura il portale Servizi per sviluppatori per supportare la monetizzazione. Per ulteriori informazioni, consulta http://apigee.com/docs/monetization/content/configure-monetization-developer-portal.
Creazione di un file di configurazione invisibile all'utente per la monetizzazione
Di seguito è riportato un esempio di file di configurazione silenziosa per un'installazione di Monetization. Modifica questo file in base alle tue esigenze di configurazione. Utilizza l'opzione -f per setup.sh per includere questo file.
Nota: in genere, queste proprietà vengono aggiunte allo stesso file di configurazione utilizzato per installare Edge, come mostrato in Installare i componenti Edge su un nodo.
# 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 SMTPMAILFROM="My Company <myco@company.com>"
- Se il file di configurazione di Edge non specifica le informazioni SMTP, aggiungile. La monetizzazione richiede un server SMTP.
- In un'installazione in un singolo data center, tutti i nodi ZooKeeper sono configurati per impostazione predefinita come leader. Quando installi Edge in più data center, alcuni nodi ZooKeeper verranno configurati come osservatori. 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 passare il nome utente e la password di Cassandra utilizzando le seguenti proprietà:
CASS_USERNAME
CASS_PASSWORD
Integra i servizi di monetizzazione con tutti i server di gestione
Utilizza la seguente procedura per integrare la monetizzazione sui nodi del server di gestione.
- Se stai installando Monetization su una topologia Edge che utilizza più nodi del server di gestione, ad esempio un'installazione con 13 nodi, assicurati di aver installato entrambi i nodi del server di gestione prima di installare Monetization.
- 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 l'integrazione della monetizzazione.
Il file di configurazione deve essere accessibile o leggibile dall'utente "apigee". - Se stai installando 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. In questo modo, l'integrazione dei servizi di monetizzazione e dei relativi componenti con il server Postgres è completata.
Integra i servizi di monetizzazione con tutti i processori di messaggi
Utilizza la procedura seguente per integrare la monetizzazione su tutti i nodi del processore di messaggi.
- Sul primo nodo processore di messaggi, al prompt dei comandi, esegui lo script di configurazione:
> /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile
L'opzione "-p mo" specifica l'integrazione della monetizzazione.
Il file di configurazione deve essere accessibile o leggibile dall'utente "apigee". - Ripeti questa procedura su tutti i nodi del processore di messaggi.
Al termine della configurazione, il processore di messaggi viene aggiornato con i servizi di monetizzazione. In questo modo, l'integrazione dei servizi di monetizzazione e dei relativi componenti associati con i processori di messaggi è completata.
Onboarding per la monetizzazione
Per creare una nuova organizzazione con la monetizzazione abilitata, devi prima creare l'organizzazione come faresti per qualsiasi nuova organizzazione. Per saperne di più, consulta Esegui l'onboarding di un'organizzazione.
Onboarding aggiuntivo per attivare la monetizzazione per un'organizzazione
Per completare l'onboarding della monetizzazione di un'organizzazione, devi:
- Crea il gruppo di monetizzazione: mxgroup.
- Aggiungi Qpid al gruppo.
- Attiva la monetizzazione per l'organizzazione.
- Attiva le impostazioni di notifica per l'organizzazione.
- Ripeti questa procedura per tutte le organizzazioni per cui vuoi attivare la monetizzazione.
Utilizza il comando enable-monetization per eseguire tutte queste attività. Questo script accetta un file di configurazione contenente le seguenti proprietà:
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.
Note:
- Imposta CASS_HOSTS e REGION sugli stessi valori utilizzati durante l'installazione della monetizzazione.
- Se attivi Monetizzazione in una configurazione con più data center:
- Devi ripetere la procedura di onboarding sul server di gestione in ogni data center.
- Il file di configurazione deve elencare solo i nodi Qpid nel data center in fase di configurazione.
Per eseguire lo script:
- Richiama lo script:
> /opt/apigee/apigee-service/bin/apigee-service apigee-provision enable-monetization -f configFile
Il file di configurazione deve essere accessibile o leggibile dall'utente "apigee".
Se hai più server di gestione, devi eseguire questo script solo su uno di questi.
Questo script replica l'organizzazione, i prodotti, gli sviluppatori e le applicazioni dal database Cassandra al database PostgreSQL di Monetizzazione. Dopo l'installazione dei servizi di monetizzazione, i dati vengono sincronizzati automaticamente. - Ripeti questa procedura per ogni organizzazione in cui vuoi attivare la monetizzazione.
- Se ti trovi in un ambiente con più data center, ripeti questa procedura sul server di gestione nell'altro data center. Assicurati che il file di configurazione elenchi solo i nodi Qpid nel data center in fase di configurazione.
Al successivo accesso alla UI di Edge, vedrai la voce Monetizzazione nel menu di primo livello dell'organizzazione:

Configura il portale dei servizi per sviluppatori
Per configurare il portale dei servizi per sviluppatori in modo che supporti la monetizzazione, consulta http://apigee.com/docs/monetization/content/configure-monetization-developer-portal.
Aggiunta di un nodo del server di gestione a un'installazione di Monetization
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 server di gestione.
- Installa 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 funzionalità di monetizzazione mostra i documenti di fatturazione agli utenti finali in formato HTML. Per fornire i documenti di fatturazione come file PDF, puoi integrare Monetizzazione con un sistema di fatturazione che fornisce la generazione di PDF o concedere in licenza una libreria PDF di terze parti supportata.
Configura le impostazioni dell'organizzazione
Impostazioni di backend: la tabella seguente elenca gli attributi a livello di organizzazione disponibili per configurare un'organizzazione Mint. Puoi utilizzare una chiamata PUT per aggiungere/aggiornare questi attributi come mostrato di seguito:
> curl -u ${ADMIN_EMAIL}:${ADMINPW} -v http://<management-ip>:8080/v1/organizations/{orgId} -d '{org object with attributes}' -X PUT
Ad esempio, l'output del comando CURL riportato sopra sarà simile al seguente:
{
...
"displayName": "Orgnization name",
"name": "org4",
"properties": {
"property": [
...
{
"name": "MINT_CURRENCY",
"value": "USD"
},
{
"name": "MINT_COUNTRY",
"value": "US"
},
{
"name": "MINT_TIMEZONE",
"value": "GMT"
}
]
}
}|
Attributi |
Descrizione |
|---|---|
|
MINT_TAX_MODEL |
I valori accettati sono DISCLOSED, UNDISCLOSED, HYBRID (il valore predefinito è null) |
|
MINT_CURRENCY |
Codice valuta ISO (il valore predefinito è null) |
|
MINT_TAX_NEXUS |
Nesso fiscale (il valore predefinito è null) |
|
MINT_DEFAULT_PROD_TAX_CATEGORY |
Categoria fiscale predefinita del prodotto (il valore predefinito è null) |
|
MINT_IS_GROUP_ORG |
Organizzazione del gruppo IS (il valore predefinito è false) |
|
MINT_HAS_BROKER |
Has broken (il valore predefinito è false) |
|
MINT_TIMEZONE |
Fuso orario (il valore predefinito è null) |
|
MINT_TAX_ENGINE_EXTERNAL_ID |
ID motore fiscale (il valore predefinito è null) |
|
MINT_COUNTRY |
Paese dell'organizzazione (il valore predefinito è null) |
|
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 estratto conto 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 l'autofatturazione (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 dalla UI di gestione per visualizzare il menu specifico per la monetizzazione (il valore predefinito è false) |
|
ui.config.isOperator |
Utilizzato dalla UI di gestione per visualizzare il provider come operatore o organizzazione (Impostazione predefinita: true) |
Per configurare le impostazioni dell'organizzazione aziendale utilizzando la UI di gestione, consulta http://apigee.com/docs/monetization-services/content/get-started-using-monetization-services.
Nota: se utilizzi le funzionalità Limiti e notifiche dei servizi di monetizzazione, chiedi agli sviluppatori di allegare una policy sui limiti nel flusso del proxy dopo la policy di convalida del token di accesso.
La policy di limite è una policy esplicita progettata per bloccare una chiamata API se è stato raggiunto un determinato limite. La policy controlla i limiti aziendali e genera un errore se sono presenti limiti che superano il valore configurato. Si tratta di un'estensione della policy Raise Fault, ma le condizioni sono derivate da variabili aziendali.
Un modello di UI è disponibile nell'interfaccia utente di gestione per gli sviluppatori di proxy. Lo sviluppatore del proxy deve collegare la policy di conio nel flusso di messaggi. Al momento dell'esecuzione di questa policy, l'errore verrà generato con la risposta di errore in base alla policy. Se ContinueOnError è impostato su true, l'errore non verrà generato e verranno impostate le variabili di flusso "mint.limitsViolated", "mint.isDeveloperSuspended" e "mint.limitsPolicyError", che potrebbero essere utilizzate per un'ulteriore gestione delle eccezioni, se necessario.