Os serviços de monetização são uma extensão do Apigee Edge, portanto, não são executados como um processo independente. Ele é executado em qualquer configuração do Apigee Edge, exceto a configuração All-In-One (AIO). Não é possível instalar os Serviços de monetização em uma configuração de AIO.
Requisitos de monetização
- Se você estiver instalando a Monetização em uma topologia de borda que usa vários nós do servidor de gerenciamento, como uma instalação de 13 nós, instale os dois nós do servidor de gerenciamento de borda antes de instalar a Monetização.
- Para instalar a monetização no Edge em que a instalação do Edge tem vários nós do Postgres, eles precisam ser configurados no modo mestre/em espera. Não é possível instalar a Monetização no Edge se você tiver vários nós principais do Postgres. Para mais informações, consulte Configurar a replicação mestre-standby para Postgres.
- A monetização não está disponível com a configuração All-in-One (AIO).
Visão geral da instalação
As etapas a seguir ilustram como adicionar serviços de monetização a uma instalação do Apigee Edge:
- Use o utilitário
apigee-setup
para atualizar o nó do servidor de gerenciamento da Apigee e ativar os serviços de monetização, por exemplo, gerenciamento de catálogo, configuração de limites e notificações, faturamento e relatórios.Se você tiver vários nós do servidor de gerenciamento, como uma instalação de 13 nós, instale os dois nós do servidor de gerenciamento de borda antes de instalar a Monetização.
- Use o utilitário
apigee-setup
para atualizar o processador de mensagens da Apigee e ativar os componentes do ambiente de execução dos Serviços de monetização, por exemplo, a política de gravação de transações e a aplicação de limites. Se você tiver vários processadores de mensagens, instale a monetização em todos eles. - Conclua o processo de integração da monetização para suas organizações do Edge.
- Configure o portal Apigee Developer Services (ou simplesmente o portal) para dar suporte à monetização. Para mais informações, consulte Configurar a monetização no Portal do Desenvolvedor.
Como criar um arquivo de configuração silenciosa para a monetização
Veja abaixo um exemplo de arquivo de configuração silenciosa para uma instalação de monetização. Edite esse arquivo conforme necessário para sua configuração. Use a opção -f para incluir o arquivo setup.sh.
# 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>"
Observações:
- Se o arquivo de configuração do Edge não especificou as informações do SMTP, adicione-as. A monetização requer um servidor SMTP.
- Em uma única instalação de data center, os números ímpares de nós do ZooKeeper precisam ser configurados como
voters
. Se um número de nós do ZooKeeper for par, alguns nós serão configurados comoobservers
. Quando você instala o Edge em um número par de data centers, alguns nós do ZooKeeper precisam ser configurados comoobservers
para tornar o número de nós eleitores ímpar. Durante a eleição do líder do ZooKeeper, um nó de eleitor será eleito como umleader
. Verifique se a propriedadeZK_HOSTS
acima especifica um nó líder em uma instalação de vários data centers. - Se você ativar a autenticação do Cassandra, poderá transmitir o nome de usuário e a senha do Cassandra
usando as seguintes propriedades:
CASS_USERNAME CASS_PASSWORD
Integrar os serviços de monetização a todos os servidores de gerenciamento
Use o procedimento a seguir para integrar a monetização nos nós do Management Server.
- Se você estiver instalando a Monetização em uma topologia do Edge que usa vários nós do servidor de gerenciamento, como uma instalação de 13 nós, verifique se você instalou os dois nós do servidor de gerenciamento antes de instalar a Monetização.
- No nó do servidor de gerenciamento, execute o script de configuração:
/opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile
A opção
-p mo
especifica a integração da monetização.O arquivo de configuração precisa ser acessível ou legível pelo usuário "apigee".
- Se você estiver instalando a monetização em vários nós do servidor de gerenciamento, repita a etapa 2 no segundo nó do servidor de gerenciamento.
Se a configuração for bem-sucedida, um esquema RDBMS para serviços de monetização é criado no banco de dados PostgreSQL. Isso conclui a integração dos Serviços de monetização e dos componentes associados ao servidor Postgres.
Integrar os serviços de monetização a todos os processadores de mensagens
Use o procedimento a seguir para integrar a monetização em todos os nós do processador de mensagens.
- No primeiro nó do processador de mensagens, no prompt de comando, execute o script de configuração:
/opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile
A opção
-p mo
especifica a integração da monetização.O arquivo de configuração precisa estar acessível ou legível para o usuário da "apigee".
- Repita esse procedimento em todos os nós do processador de mensagens.
Se a configuração for bem-sucedida, o processador de mensagens será atualizado com os serviços de monetização. Isso conclui a integração dos serviços de monetização e dos componentes associados aos processadores de mensagens.
Integração da monetização
Para criar uma organização e ativar a monetização:
- Crie a organização como você faria com qualquer nova. Para mais informações, consulte Integrar uma organização.
- Use a API de provisionamento de monetização, conforme descrito em Ativar a monetização para uma organização. Para isso, você precisa ter privilégios de administrador do sistema.
Na próxima vez que você fizer login na interface do Edge, a entrada "Monetização" vai aparecer no menu de nível superior da organização:
Para configurar o portal para oferecer suporte à monetização, consulte Configurar a monetização no portal do desenvolvedor.
Como adicionar um nó do Management Server a uma instalação de monetização
Se você adicionar um servidor de gerenciamento a uma instalação do Edge, adicione os serviços de monetização ao novo servidor de gerenciamento e configure todos os servidores de gerenciamento para que eles possam se comunicar.
Para adicionar um servidor de gerenciamento:
- Instale o novo servidor de gerenciamento.
- Instale a monetização no novo servidor de gerenciamento.
- No servidor de gerenciamento original, chame o seguinte:
/opt/apigee/apigee-service/bin/apigee-service edge-mint-management-server mint-configure-mgmt-cluster
- Reinicie o servidor de gerenciamento original:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
- No novo servidor de gerenciamento, chame o seguinte:
/opt/apigee/apigee-service/bin/apigee-service edge-mint-management-server mint-configure-mgmt-cluster
- Reinicie o novo servidor de gerenciamento:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
Configurações avançadas
Fornecer documentos de faturamento como arquivos PDF
A monetização mostra documentos de faturamento para os usuários finais em formato HTML. Para fornecer documentos de faturamento como arquivos PDF, é possível integrar a Monetização a um sistema de faturamento que ofereça a geração de PDFs ou licenciar uma biblioteca de PDF de terceiros compatível.
Definir as configurações da organização
Para adicionar/atualizar atributos da organização, use uma solicitação PUT
, conforme
mostrado no exemplo abaixo:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \ -v http://ms_IP:8080/v1/organizations/orgId -d 'org object with attributes' -X PUT
A monetização responde com as configurações da organização. Exemplo:
{ ... "displayName": "Orgnization name", "name": "org4", "properties": { "property": [ ... { "name": "MINT_CURRENCY", "value": "USD" }, { "name": "MINT_COUNTRY", "value": "US" }, { "name": "MINT_TIMEZONE", "value": "GMT" } ] } }
A tabela a seguir lista os atributos no nível da organização que estão disponíveis para configurar uma organização de criação.
Atributos | Descrição |
---|---|
MINT_TAX_MODEL
|
Os valores aceitos são "DISCLOSED", "UNDISCLOSED" e "HYBRID" (o padrão é nulo). |
MINT_CURRENCY
|
Código ISO de moeda (o padrão é nulo) |
MINT_TAX_NEXUS
|
Domicílio fiscal (o padrão é nulo) |
MINT_DEFAULT_PROD_TAX_CATEGORY
|
Categoria fiscal do produto padrão (o padrão é nulo) |
MINT_IS_GROUP_ORG
|
Organização do grupo de IS (padrão: "false") |
MINT_HAS_BROKER
|
Quebrado (padrão é "false") |
MINT_TIMEZONE
|
Fuso horário (padrão: null) |
MINT_TAX_ENGINE_EXTERNAL_ID
|
ID do mecanismo fiscal (padrão: nulo) |
MINT_COUNTRY
|
País da organização (padrão: nulo) |
MINT_REG_NO
|
O número de registro da organização no Reino Unido fornece um número diferente do CPF/CNPJ (o padrão é nulo) |
MINT_BILLING_CYCLE_TYPE
|
"PRORATED", "CALENDAR_MONTH" (padrão é "CALENDAR_MONTH") |
MINT_SUPPORTED_BILLING_TYPE
|
"PRÉ-PAGADO"/"PÓS-PAGAMENTO"/"AMBOS" (o padrão é "PRÉ-PAGO") |
MINT_IS_SEPARATE_INV_FOR_FEES
|
Indica se uma fatura de taxa separada precisa ser gerada (o padrão é "false") |
MINT_ISSUE_NETTING_STMT
|
Indica se a declaração de compensação precisa ser emitida (o padrão é "false") |
MINT_NETTING_STMT_PER_CURRENCY
|
Indica se a declaração de compensação precisa ser gerada por moeda (o padrão é "false"). |
MINT_HAS_SELF_BILLING
|
Indica se a organização tem autofaturamento (o padrão é "false") |
MINT_SELF_BILLING_FOR_ALL_DEV
|
Indica se a organização tem autofaturamento para todos os desenvolvedores (padrão é "false") |
MINT_HAS_SEPARATE_INV_FOR_PROD
|
Indica se a organização tem faturas separadas por produto (o padrão é "false") |
MINT_HAS_BILLING_ADJUSTMENT
|
Indica se a organização oferece suporte a ajustes de faturamento (o padrão é "falso") |
features.isMonetizationEnabled
|
Usado pela interface de gerenciamento para mostrar o menu específico de monetização (padrão é "false") |
ui.config.isOperator
|
Usado pela interface de gerenciamento para mostrar o provedor como operador ou organização (padrão é "true") |
Para configurar as configurações de organização empresarial usando a interface de gerenciamento, consulte Monetização de acesso no Edge.
Limites de monetização
Para aplicar os limites de monetização, anexe a política "Verificação dos limites de monetização" aos proxies de API. Especificamente, a política é acionada nas seguintes condições:
- O desenvolvedor que acessa a API monetizada não está registrado ou não se inscreveu no plano de tarifas.
- O desenvolvedor excedeu o volume de transações para o plano de preços inscrito.
- O limite de crédito pré-pago ou pós-pago da conta do desenvolvedor foi atingido.
A política de verificação dos limites de monetização gera falhas e bloqueia chamadas de API em situações como as listadas acima. A política estende a política "Aumentar a falha", e é possível personalizar a mensagem retornada. As condições aplicáveis são derivadas de variáveis de negócios.
Para mais informações, consulte Aplicar limites de monetização em proxies de API.