Cómo instalar servicios de monetización

Edge for Private Cloud v. 4.16.05

Monetization Services es una extensión de Apigee Edge, por lo que no se ejecuta como un proceso independiente. Se ejecuta dentro de cualquier configuración existente de Apigee Edge.

Requisitos para la monetización

  • Si instalas Monetización en una topología de Edge que usa varios nodos del servidor de administración, como una instalación de 13 nodos, debes instalar ambos nodos del servidor de administración de Edge antes de instalar Monetización.
  • Para instalar Monetización en Edge, en el que la instalación de Edge tiene varios nodos de Postgres, estos deben configurarse en modo principal o en modo de espera. No puedes instalar Monetización en Edge si tienes varios nodos principales de Postgres. Para obtener más información, consulta Cómo configurar la replicación maestra-en espera para Postgres.

Descripción general de instalación

En los siguientes pasos, se muestra cómo agregar servicios de monetización a un entorno de Apigee Edge existente instalación:

  • Usa la utilidad apigee-setup para actualizar el nodo del servidor de administración de Apigee y habilitar los servicios de monetización, por ejemplo, la administración de catálogos, la configuración de límites y notificaciones, la facturación y los informes.

    Si tienes varios nodos de un servidor de administración, como una instalación de 13 nodos, debes instalar ambos nodos del servidor de administración perimetral antes de instalar la monetización.
  • Usa la utilidad apigee-setup para actualizar el procesador de mensajes de Apigee y habilitar los componentes del entorno de ejecución de los servicios de monetización, por ejemplo, la política de registro de transacciones y la aplicación de límites. Si tienes varios Message Processors, instala Monetization en todos ellos.
  • Realizar el proceso de integración de monetización para tus organizaciones de Edge.
  • Configura el portal de Servicios para desarrolladores para admitir la monetización. Para obtener más información, consulta http://apigee.com/docs/monetization/content/configure-monetization-developer-portal.

Cómo crear un archivo de configuración silencioso para la monetización

A continuación, se muestra un ejemplo de un archivo de configuración silenciosa para una instalación de monetización. Editar esta archivo según sea necesario para tu configuración. Usa la opción -f en setup.sh para incluir este archivo.

Nota: Por lo general, agregas estas propiedades al mismo archivo de configuración que usaste para instalar Edge, como se muestra en Cómo instalar componentes de Edge en 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
Notas:
  • Si en el archivo de configuración de Edge no se especificó información de SMTP, agrégalo. La monetización requiere un servidor SMTP.
  • En una única instalación de centro de datos, todos los nodos de ZooKeeper se configuran de forma predeterminada como y líderes de la industria. Cuando instales Edge en varios centros de datos, algunos nodos de ZooKeeper configurar como observadores. Asegúrate de que la propiedad ZK_HOSTS anterior especifique un nodo líder en una instalación de varios centros de datos.
  • Si habilitas la autenticación de Cassandra, puedes pasar el nombre de usuario y la contraseña de Cassandra mediante las siguientes propiedades:
    CASS_USERNAME
    CASS_PASSWORD

Integra los servicios de monetización con todos los servidores de administración

Usa el siguiente procedimiento para integrar la monetización en los nodos del servidor de administración.

  1. Si instalas la monetización en una topología perimetral que usa varios servidores de administración como una instalación de 13 nodos, y asegúrate de haber instalado ambos antes de instalar la monetización.
  2. En el nodo del servidor de administración, ejecuta la secuencia de comandos de configuración:
    > /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile

    La opción "-p mo" especifica que se debe integrar la Monetización.

    El usuario "apigee" debe poder acceder al archivo de configuración o leerlo. Por ejemplo, coloca el archivo en el directorio /tmp del nodo.
  3. Si instalas Monetización en varios nodos del servidor de administración, repite el paso 2 en el segundo nodo del servidor de administración.

Si la configuración se realiza correctamente, se crea un esquema de RDBMS para los servicios de monetización en la base de datos de PostgreSQL. Esto completa la integración de los Servicios de Monetización y sus servicios componentes con Postgres Server.

Integra los servicios de monetización con todos los procesadores de mensajes

Usa el siguiente procedimiento para integrar la monetización en todos los nodos del procesador de mensajes.

  1. En el primer nodo de Message Processor, en el símbolo del sistema, ejecuta la secuencia de comandos de configuración:
    . > /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile

    La opción "-p mo" especifica que se debe integrar la Monetización.

    El usuario "apigee" debe poder acceder al archivo de configuración o leerlo. Por ejemplo, pon el archivo en el directorio /tmp en el nodo.
  2. Repite este procedimiento en todos los nodos del procesador de mensajes.

Si la configuración se realiza correctamente, el procesador de mensajes se actualiza con los servicios de monetización. Esta completa la integración de los Servicios de Monetización y sus componentes asociados con el Mensaje Procesadores.

Integración de monetización

Para crear una organización nueva con la monetización habilitada, primero crea la organización como lo harías con cualquier organización nueva. Para obtener más información, consulta Integra una organización.

Integración adicional para habilitar la monetización en una organización

Sigue estos pasos para completar la integración de la monetización de una organización:

  1. Crea el grupo de monetización mxgroup.
  2. Agrega Qpid al grupo.
  3. Habilitar la monetización para la organización
  4. Habilita la configuración de notificaciones para la organización.
  5. Repite este proceso para todas las organizaciones en las que quieras habilitar la Monetización.

Usa el comando enable-monetization para realizar todas estas tareas. Esta secuencia de comandos toma un archivo de configuración que contiene los siguientes propiedades:

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.

Notas:

  • Configura CASS_HOSTS y REGION con los mismos valores que que usaste cuando instalaste la monetización.
  • Si habilita la monetización en una configuración de varios centros de datos, tenga en cuenta lo siguiente:
    • Debes repetir el proceso de integración en el servidor de administración en cada centro de datos.
    • El archivo de configuración solo debe enumerar los nodos de Qpid en el centro de datos que se está configurando.

Para ejecutar la secuencia de comandos, sigue estos pasos:

  1. Invoca la secuencia de comandos:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-provision enable-monetization -f configFile

    El usuario "apigee" debe poder acceder al archivo de configuración o leerlo. Por ejemplo, pon el archivo en el directorio /tmp en el nodo.

    Si tienes varios servidores de administración, solo tienes que ejecutar esta secuencia de comandos en uno de ellos.

    Esta secuencia de comandos replica la organización, los productos, los desarrolladores y las aplicaciones de la base de datos de Cassandra a la base de datos de PostgreSQL de Monetización. Después de instalar correctamente la monetización Servicios con los que los datos se sincronizan automáticamente.
  2. Repite este procedimiento con cada organización en la que desees habilitar la monetización.
  3. Si estás en un entorno de varios centros de datos, repite este proceso en la página de administración en el otro centro de datos. Asegúrate de que el archivo de configuración enumere solo los nodos Qpid del centro de datos que se está configurando.

La próxima vez que accedas a la IU de Edge, verás la entrada Monetización en el menú de nivel superior de la organización:

Configura el portal de servicios para desarrolladores

Si desea configurar el portal de servicios para desarrolladores a fin de que admita la monetización, consulte http://apigee.com/docs/monetization/content/configure-monetization-developer-portal.

Agrega un nodo de servidor de administración a una instalación con monetización

Si agregas un servidor de administración a una instalación de Edge existente, debes asegurarte de agregar servicios de monetización al nuevo servidor de administración y configurar todos los servidores de administración para que puedan comunicarse.

Para agregar un servidor de administración, sigue estos pasos:

  1. Instala el nuevo servidor de administración.
  2. Instalar la monetización en el nuevo servidor de administración.
  3. En el servidor de administración original, llama a lo siguiente:
    > /opt/apigee/apigee-service/bin/apigee-service edge-mint-management-server mint-configure-mgmt-cluster
  4. Reinicia el servidor de administración original:
    > /opt/apigee/apigee-service/bin/apigee-service Edge-management-server restart
  5. En el nuevo servidor de administración, llama a lo siguiente:
    > /opt/apigee/apigee-service/bin/apigee-service edge-mint-management-server mint-configure-mgmt-cluster
  6. Reinicia el servidor de administración nuevo:
    > /opt/apigee/apigee-service/bin/apigee-service Edge-management-server restart

Configuración adicional

Proporcionar documentos de facturación como Archivos PDF

La monetización muestra documentos de facturación a los usuarios finales en formato HTML. Para proporcionar la facturación, sigue estos pasos: documentos como archivos PDF, puede integrar la Monetización con un sistema de facturación que proporciona generar una licencia o obtener la licencia de una biblioteca de PDF de terceros compatible.

Configura la configuración de la organización

Configuración de backend: La siguiente tabla muestra los atributos a nivel de la organización que están disponibles para configurar una organización de casa de moneda. Puedes usar una llamada PUT para agregarlos o actualizarlos. atributos, como se muestra a continuación:

> curl -u ${ADMIN_EMAIL}:${ADMINPW} -v http://<management-ip>:8080/v1/organizations/{orgId} -d '{org object with attributes}' -X PUT

Por ejemplo, el resultado del comando CURL anterior se verá de la siguiente manera:

{
...
    "displayName": "Orgnization name",
    "name": "org4",
    "properties": {
        "property": [
...
            {
                "name": "MINT_CURRENCY",
                "value": "USD"
            },
            {
                "name": "MINT_COUNTRY",
                "value": "US"
            },
            {
                "name": "MINT_TIMEZONE",
                "value": "GMT"
            }
        ]
    }
}

Atributos

Descripción

MINT_TAX_MODEL

Los valores aceptados son DISCLOSED,

UNDISCLOSED, HYBRID (el valor predeterminado es nulo)

MINT_CURRENCY

Código de moneda ISO (el valor predeterminado es nulo)

MINT_TAX_NEXUS

Nexo fiscal (el valor predeterminado es nulo)

MINT_DEFAULT_PROD_TAX_CATEGORY

Categoría impositiva predeterminada del producto (el valor predeterminado es nulo)

MINT_IS_GROUP_ORG

Organización del grupo IS (el valor predeterminado es falso)

MINT_HAS_BROKER

Se dañó (el valor predeterminado es falso)

MINT_TIMEZONE

Zona horaria (el valor predeterminado es nulo)

MINT_TAX_ENGINE_EXTERNAL_ID

ID del motor de impuestos (el valor predeterminado es nulo)

MINT_COUNTRY

País de la organización (el valor predeterminado es nulo)

MINT_REG_NO

El número de registro de la organización del Reino Unido proporciona un número diferente al ID fiscal (el valor predeterminado es nulo).

MINT_BILLING_CYCLE_TYPE

PROPORCIONADO, CALENDAR_MONTH (el valor predeterminado es CALENDAR_MONTH)

MINT_SUPPORTED_BILLING_TYPE

PREPAID/POSTPAID/BOTH (el valor predeterminado es PREPAID)

MINT_IS_SEPARATE_INV_FOR_FEES

Indica si se debe generar una factura de tarifa independiente (el valor predeterminado es falso)

MINT_ISSUE_NETTING_STMT

Indica si se debe emitir la declaración de compensación (el valor predeterminado es falso).

MINT_NETTING_STMT_PER_CURRENCY

Indica si la declaración de compensación se debe generar por moneda (el valor predeterminado es falso)

MINT_HAS_SELF_BILLING

Indica si la organización tiene autofacturación (el valor predeterminado es falso)

MINT_SELF_BILLING_FOR_ALL_DEV

Indica si la organización tiene autofacturación para todos los desarrolladores(el valor predeterminado es falso)

MINT_HAS_SEPARATE_INV_FOR_PROD

Indica si la organización tiene una factura independiente por producto (el valor predeterminado es "false").

MINT_HAS_BILLING_ADJUSTMENT

Indica si la organización admite ajustes de facturación (el valor predeterminado es falso)

features.isMonetizationEnabled

La IU de administración lo usa para mostrar el menú específico de monetización (el valor predeterminado es falso).

ui.config.isOperator

La IU de administración lo usa para mostrar el proveedor como operador en lugar de organización.

(el valor predeterminado es verdadero)

Para configurar la configuración de la organización comercial con la IU de administración, consulte http://apigee.com/docs/monetization-services/content/get-started-using-monetization-services.

Nota: Si usas los límites y las notificaciones de los servicios de monetización indícales a tus desarrolladores que adjunten una política de límites en el flujo del proxy después de política de validación de token de acceso.

La política de límite es una política explícita diseñada para bloquear una llamada a la API si se alcanzó un límite determinado. La política verifica los límites comerciales y genera una falla si hay límites que superan el valor configurado. Esta es una extensión de la política de aumento de fallas, pero las condiciones se derivan a partir de variables de negocio.

Hay una plantilla de IU disponible en la IU de administración para los desarrolladores de proxy. El desarrollador de proxy debe adjuntar la política de creación en el flujo de mensajes. Cuando se ejecute esta política, se generará la falla con la respuesta de falla según la política. Si ContinueOnError está configurado como verdadero, el error no se generará y las variables de flujo "mint.limitsViolated", "mint.isDeveloperSuspended" y "mint.limitsPolicyError" variables se establecerán que podría usarse para un mayor manejo de excepciones en caso de ser necesario.