Como instalar serviços de monetização

Os Serviços de monetização são uma extensão do Apigee Edge e, portanto, não são executados como um processo independente. Eles são executados em qualquer configuração do Apigee Edge, exceto na configuração All-In-One (AIO) . Não é possível instalar os Serviços de monetização em uma configuração AIO.

Requisitos de monetização

  • 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, instale os dois nós do servidor de gerenciamento do Edge 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, os nós do Postgres 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 mestres do Postgres. Para mais informações, consulte Configurar a replicação mestre-em espera para o 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 os 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 do Apigee e ativar os Serviços de monetização, por exemplo, gerenciamento de catálogo, configuração de limites e notificações configuração, faturamento e relatórios.

    Se você tiver vários nós do servidor de gerenciamento, como uma instalação de 13 nós, então você deve instalar os dois nós do servidor de gerenciamento do Edge antes de instalar a monetização.

  • Use the apigee-setup utilitário para atualizar o processador de mensagens do Apigee e ativar os componentes de ambiente de execução dos Serviços de monetização, por exemplo, política de registro de transações e aplicação de limites. Se você tiver vários processadores de mensagens, instale a monetização em todos eles.
  • Realize o processo de integração da monetização para suas organizações do Edge.
  • Configure o portal de serviços para desenvolvedores do Apigee (ou simplesmente o portal) para oferecer 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 monetização

Confira 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 setup.sh para incluir esse arquivo.

# 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>"

Observações:

  • Se o arquivo de configuração do Edge não tiver especificado informações de SMTP, adicione-as. A monetização exige um servidor SMTP.
  • Em uma instalação de data center único, todos os nós do ZooKeeper são configurados como líderes por padrão. Ao instalar o Edge em vários data centers, alguns nós do ZooKeeper serão configurados como observadores. Verifique se a propriedade ZK_HOSTS acima especifica um nó líder em a 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 servidor de gerenciamento.

  1. 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, instale os dois nós do servidor de gerenciamento antes de instalar a monetização.
  2. 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 estar acessível ou legível para o usuário "apigee".

  3. Se você estiver instalando a monetização em vários nós do servidor de gerenciamento, repita a etapa 2 em o segundo nó do servidor de gerenciamento.

Após a configuração, um esquema de RDBMS para os 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 do 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.

  1. 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 "apigee".

  2. Repita esse procedimento em todos os nós do processador de mensagens.

Após a configuração, o processador de mensagens é 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:

  1. Crie a organização como faria com qualquer outra. Para mais informações, consulte Integrar uma organização.
  2. Use a API de provisionamento de monetização, conforme descrito em Ativar a monetização para uma organização. Para fazer isso, você precisa ter privilégios de administrador do sistema.

Na próxima vez que você fizer login na nova interface do Edge, a entrada "Monetização" vai aparecer no menu de nível superior da organização:

Menu de monetização na nova interface do Edge

Para configurar o portal para oferecer suporte à monetização, consulte Configurar a monetização no portal do desenvolvedor.

Como adicionar um nó do servidor de gerenciamento 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:

  1. Instale o novo servidor de gerenciamento.
  2. Instale a monetização no novo servidor de gerenciamento usando o seguinte comando:
    /opt/apigee/apigee-setup/bin/setup.sh -p mo -f /opt/silent.conf

Configurações avançadas

Fornecer documentos de faturamento como arquivos PDF

A monetização mostra documentos de faturamento aos usuários finais no formato HTML. Para fornecer documentos de faturamento como arquivos PDF, você pode integrar a monetização a um sistema de faturamento que forneça geração de PDF 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 a seguir:

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 cunhagem.

Atributos Descrição
MINT_TAX_MODEL

Os valores aceitos são "DISCLOSED", "UNDISCLOSED", "HYBRID" (o padrão é nulo)

MINT_CURRENCY

Código de moeda ISO (o padrão é nulo)

MINT_TAX_NEXUS

Nexo fiscal (o padrão é nulo)

MINT_DEFAULT_PROD_TAX_CATEGORY

Categoria fiscal padrão do produto (o padrão é nulo)

MINT_IS_GROUP_ORG

É uma organização de grupo (o padrão é "false")

MINT_HAS_BROKER

Tem corretor (o padrão é "false")

MINT_TIMEZONE

Fuso horário (o padrão é nulo)

MINT_TAX_ENGINE_EXTERNAL_ID

ID do mecanismo de impostos (o padrão é nulo)

MINT_COUNTRY

País da organização (o padrão é nulo)

MINT_REG_NO

Número de registro da organização. O Reino Unido fornece um número diferente do ID fiscal (o padrão é nulo)

MINT_BILLING_CYCLE_TYPE

"PRORATED", "CALENDAR_MONTH" (o padrão é "CALENDAR_MONTH")

MINT_SUPPORTED_BILLING_TYPE

"PREPAID"/"POSTPAID"/"BOTH" (o padrão é "PREPAID")

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 (o padrão é "false")

MINT_HAS_SEPARATE_INV_FOR_PROD

Indica se a organização tem uma fatura separada por produto (o padrão é "false")

MINT_HAS_BILLING_ADJUSTMENT

Indica se a organização oferece suporte a ajustes de serviço (o padrão é "false")

features.isMonetizationEnabled

Usado pela nova interface do Edge para mostrar o menu específico de monetização (o padrão é "false")

ui.config.isOperator

Usado pela nova interface do Edge para mostrar o provedor como operador em vez de organização (o padrão é "true")

Para configurar as definições da organização comercial usando a nova interface do Edge, consulte Introdução à monetização.

Limites de monetização

Para aplicar limites de monetização, anexe a política de verificação de 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 assinou o plano de tarifas.
  • O desenvolvedor excedeu o volume de transações do plano de tarifas assinado.
  • O saldo da conta pré-paga ou o limite de crédito pós-pago do desenvolvedor foi atingido.

A política de verificação de 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 de falha de elevação, e você pode 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.