Como instalar serviços de monetização

Os serviços de monetização são uma extensão do Apigee Edge. Por isso, eles não são executados de forma independente. de desenvolvimento de software. Ele é executado em qualquer configuração atual do Apigee Edge, com exceção do All-In-One (AIO) configuração do Terraform. Não é possível instalar os Serviços de monetização em uma configuração do AIO.

Requisitos de monetização

  • Se você estiver instalando a monetização em uma topologia de borda que usa vários servidores de gerenciamento nós, 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, faça o seguinte: 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 Configure a replicação Master-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 Apigee Edge instalação:

  • Use o utilitário apigee-setup para atualizar o nó do servidor de gerenciamento da Apigee para ativar os Serviços de monetização, por exemplo, gerenciamento de catálogo, limites e notificações configuração, faturamento e relatórios.

    Se você tiver vários nós do Management Server, como uma instalação de 13 nós, será preciso instalar os dois nós do Edge Management Server antes de instalar a Monetização.

  • Usar a apigee-setup para atualizar o processador de mensagens da Apigee a fim de ativar os componentes do ambiente de execução do 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.
  • Executar o processo de integração de monetização nas suas organizações de Edge.
  • Configure o portal Apigee Developer Services (ou simplesmente o portal) para dar suporte à monetização. Para mais informações, consulte Configure a monetização no Portal do desenvolvedor.

Como criar um arquivo de configuração silencioso para monetização

Veja abaixo um exemplo de arquivo de configuração silenciosa para uma instalação de monetização. Editar conforme necessário para a configuração. Use a opção -f para setup.sh e incluir esse arquivo.

# 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 tiver especificado as informações de 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 precisa ser configurado como voters. Se vários usuários do ZooKeeper são pares, alguns nós serão configurados como observers: Quando você instala o Edge em um número par de data centers, alguns nós do ZooKeeper devem ser configurados como observers para tornar o número de eleitores ímpar. Durante Eleição do líder do ZooKeeper um nó de eleitor será eleito como um leader: Confira se a propriedade ZK_HOSTS acima especifica um nó líder em uma instalação de data center em vários.
  • Se você ativar a autenticação do Cassandra, poderá passar 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 de borda que usa vários servidores de gerenciamento nós, como uma instalação de 13 nós, verifique se você instalou o servidor de gerenciamento nós 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 ser acessível ou legível para a "apigee" usuário.

  3. 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 os serviços de monetização é criado no PostgreSQL. Isso conclui a integração dos Serviços de monetização e dos respectivos com o Postgres Server.

Integrar os serviços de monetização a todos os processadores de mensagens

Use o procedimento a seguir para integrar a monetização em todo o processador de mensagens nós.

  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 ser acessível ou legível para a "apigee" usuário.

  2. 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 seus componentes associados com o Processadores.

Integração da monetização

Para criar uma nova organização e ativar a monetização:

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

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

Para configurar o portal para oferecer suporte à monetização, confira Configurar 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 de borda atual, será preciso adicionar Serviços de monetização para o novo servidor de gerenciamento e configurar todos os servidores de gerenciamento para que eles conseguem se comunicar.

Para adicionar um servidor de gerenciamento:

  1. Instale o novo Management Server.
  2. Instale a monetização no novo servidor de gerenciamento.
  3. No servidor de gerenciamento original, chame o seguinte:
    /opt/apigee/apigee-service/bin/apigee-service edge-mint-management-server mint-configure-mgmt-cluster
  4. Reinicie o servidor de gerenciamento original:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
  5. No novo Management Server, chame o seguinte:
    /opt/apigee/apigee-service/bin/apigee-service edge-mint-management-server mint-configure-mgmt-cluster
  6. Reinicie o novo Management Server:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

Configurações avançadas

Forneça documentos de faturamento como arquivos PDF

A monetização exibe documentos de faturamento para os usuários finais no formato HTML. Para fornecer faturamento documentos como arquivos PDF, você pode integrar a monetização com um sistema de faturamento que fornece 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, da seguinte maneira: exemplo mostra:

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 da Casa da moeda.

Atributos Descrição
MINT_TAX_MODEL

Os valores aceitos são "DISCLOSED", "UNDISCLOSED", "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 (o padrão é "false")

MINT_HAS_BROKER

Corrompeu (o padrão é falso)

MINT_TIMEZONE

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

MINT_TAX_ENGINE_EXTERNAL_ID

ID do mecanismo fiscal (o padrão é nulo)

MINT_COUNTRY

País da organização (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", "AGENDA_MÊS" (o padrão é "AGENDA_MONTH")

MINT_SUPPORTED_BILLING_TYPE

&quot;PREPAID&quot;/&quot;POSTPAID&quot;/&quot;BOTH&quot; (o padrão é "PRÉ-PAGAMENTO")

MINT_IS_SEPARATE_INV_FOR_FEES

Indica se uma fatura de tarifa separada precisa ser gerada (o padrão é "false")

MINT_ISSUE_NETTING_STMT

Indica se a declaração de compensação deve ser emitida (o padrão é "false")

MINT_NETTING_STMT_PER_CURRENCY

Indica se o extrato deve ser gerado por moeda (o padrão é "falso")

MINT_HAS_SELF_BILLING

Indica se a organização tem faturamento próprio (o padrão é "false")

MINT_SELF_BILLING_FOR_ALL_DEV

Indica se a organização tem faturamento próprio para todos os desenvolvedores (o padrão é "falso")

MINT_HAS_SEPARATE_INV_FOR_PROD

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

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 exibir um menu específico de monetização (o padrão é "falso")

ui.config.isOperator

Usado pela interface de gerenciamento para mostrar o provedor em relação ao operador em relação à organização (o padrão é "verdadeiro")

Para definir as configurações da organização empresarial usando a IU de gerenciamento, consulte Acessar a monetização no Edge

Limites de monetização

Para impor limites de monetização, anexe a política de verificação de limites de monetização aos proxies da 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 a taxa de um plano eficaz de resposta a incidentes.
  • O desenvolvedor excedeu o volume de transações para o plano de preços assinado.
  • O saldo pré-pago da conta 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 os listados acima. A política estende a política Aumentar falha, e você pode personalizar a mensagem retornados. As condições aplicáveis são derivadas de variáveis de negócios.

Para mais informações, consulte Aplicar e os limites de monetização em proxies de API.