Установка сервисов монетизации

Edge для частного облака v. 4.17.05

Службы монетизации являются расширением Apigee Edge, поэтому они не запускаются как отдельный процесс. Он работает в любой существующей установке Apigee Edge.

Требования к монетизации

  • Если вы устанавливаете монетизацию в пограничной топологии, в которой используется несколько узлов сервера управления, например при установке из 13 узлов, перед установкой монетизации необходимо установить оба узла пограничного сервера управления.
  • Чтобы установить монетизацию на Edge, где установка Edge имеет несколько узлов Postgres, узлы Postgres должны быть настроены в режиме Master/Standby. Вы не можете установить монетизацию на Edge, если у вас есть несколько главных узлов Postgres. Дополнительные сведения см. в разделе Настройка репликации Master-Standby для Postgres .

Обзор установки

Следующие шаги показывают, как добавить службы монетизации в существующую установку Apigee Edge:

  • Используйте утилиту apigee-setup для обновления узла сервера управления Apigee, чтобы включить службы монетизации, например, управление каталогом, настройку ограничений и уведомлений, выставление счетов и отчетность.

    Если у вас есть несколько узлов сервера управления, например установка из 13 узлов, перед установкой монетизации необходимо установить оба узла пограничного сервера управления.
  • Используйте утилиту apigee-setup для обновления процессора сообщений Apigee, чтобы включить компоненты среды выполнения служб монетизации, например, политику записи транзакций и принудительное соблюдение ограничений. Если у вас несколько процессоров сообщений, установите монетизацию на них всех.
  • Выполните процесс адаптации монетизации для своих Edge-организаций.
  • Настройте портал служб разработчиков для поддержки монетизации. Для получения дополнительной информации см. http://apigee.com/docs/monetization/content/configure-monetization-developer-portal .

Создание тихого файла конфигурации для монетизации

Ниже показан пример файла автоматической конфигурации для установки монетизации. Отредактируйте этот файл, если это необходимо для вашей конфигурации. Используйте опцию -f в файле setup.sh, чтобы включить этот файл.

Примечание . Обычно эти свойства добавляются в тот же файл конфигурации, который использовался для установки Edge, как показано в разделе «Установка компонентов Edge на узле» .

# 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>"
Примечания :
  • Если в вашем файле конфигурации Edge не указана информация SMTP, добавьте ее. Для монетизации требуется SMTP-сервер.
  • При установке одного центра обработки данных все узлы ZooKeeper по умолчанию настраиваются как ведущие. Когда вы устанавливаете Edge в нескольких центрах обработки данных, некоторые узлы ZooKeeper будут настроены как наблюдатели. Убедитесь, что указанное выше свойство ZK_HOSTS указывает ведущий узел в установке с несколькими центрами обработки данных.
  • Если вы включите аутентификацию Cassandra, вы можете передать имя пользователя и пароль Cassandra, используя следующие свойства:
    CASS_USERNAME
    CASS_ПАРОЛЬ

Интегрируйте службы монетизации со всеми серверами управления.

Используйте следующую процедуру для интеграции монетизации на узлах Management Server.

  1. Если вы устанавливаете монетизацию в пограничной топологии, в которой используется несколько узлов сервера управления, например при установке из 13 узлов, перед установкой монетизации убедитесь, что вы установили оба узла сервера управления.
  2. На узле Management Server запустите сценарий установки:
    > /opt/apigee/apigee-setup/bin/setup.sh -p mo -f файл конфигурации

    Опция «-p mo» указывает на интеграцию монетизации.

    Файл конфигурации должен быть доступен или доступен для чтения пользователю «apigee».
  3. Если вы устанавливаете монетизацию на нескольких узлах Сервера управления, повторите шаг 2 на втором узле Сервера управления.

При успешной настройке в базе данных PostgreSQL создается схема RDBMS для служб монетизации. На этом интеграция служб монетизации и связанных с ними компонентов с сервером Postgres завершена.

Интегрируйте службы монетизации со всеми процессорами сообщений

Используйте следующую процедуру для интеграции монетизации на всех узлах процессора сообщений.

  1. На первом узле процессора сообщений в командной строке запустите сценарий установки:
    > /opt/apigee/apigee-setup/bin/setup.sh -p mo -f файл конфигурации

    Опция «-p mo» указывает на интеграцию монетизации.

    Файл конфигурации должен быть доступен или доступен для чтения пользователю «apigee».
  2. Повторите эту процедуру на всех узлах процессора сообщений.

При успешной настройке процессор сообщений обновляется службами монетизации. На этом интеграция служб монетизации и связанных с ними компонентов с процессорами сообщений завершена.

Монетизация

Чтобы создать новую организацию с включенной монетизацией, вы сначала создаете ее так же, как и любую новую организацию. Дополнительную информацию см. в разделе Регистрация в организации .

Дополнительная регистрация для включения монетизации в организации

Для завершения монетизации онбординга организации вам необходимо:

  1. Создайте группу монетизации: mxgroup .
  2. Добавьте Qpid в группу.
  3. Включите монетизацию для организации.
  4. Включите настройки уведомлений для организации.
  5. Повторите этот процесс для всех организаций, в которых вы хотите включить монетизацию.

Используйте команду Enable-monetization для выполнения всех этих задач. Этот сценарий принимает файл конфигурации, содержащий следующие свойства:

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.

Примечания:

  • Установите для CASS_HOSTS и REGION те же значения, которые вы использовали при установке монетизации.
  • Если вы включаете монетизацию в конфигурации с несколькими центрами обработки данных:
    • Вам необходимо повторить процесс подключения на сервере управления в каждом центре обработки данных.
    • В файле конфигурации должны быть указаны только узлы Qpid в настраиваемом центре обработки данных.

Чтобы запустить скрипт:

  1. Вызовите скрипт:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-provision Enable-monetization -f configFile

    Файл конфигурации должен быть доступен или доступен для чтения пользователю «apigee».

    Если у вас несколько серверов управления, вам нужно запустить этот сценарий только на одном из них.

    Этот скрипт копирует организацию, продукты, разработчиков и приложения из базы данных Cassandra в базу данных монетизации PostgreSQL. После успешной установки Служб монетизации данные синхронизируются автоматически.
  2. Повторите эту процедуру для каждой организации, в которой вы хотите включить монетизацию.
  3. Если вы находитесь в среде с несколькими центрами обработки данных, повторите этот процесс на сервере управления в другом центре обработки данных. Убедитесь, что в файле конфигурации указаны только узлы Qpid в настраиваемом центре обработки данных.

Когда вы в следующий раз войдете в пользовательский интерфейс Edge, вы увидите запись «Монетизация» в меню верхнего уровня для организации:

Настройка портала служб разработчиков

Чтобы настроить портал служб разработчиков для поддержки монетизации, см. http://apigee.com/docs/monetization/content/configure-monetization-developer-portal .

Добавление узла сервера управления в установку монетизации

Если вы добавляете сервер управления к существующей пограничной установке, вы должны убедиться, что вы добавили службы монетизации на новый сервер управления и настроили все серверы управления, чтобы они могли обмениваться данными.

Чтобы добавить Сервер управления:

  1. Установите новый сервер управления.
  2. Установите монетизацию на новый сервер управления.
  3. На исходном сервере управления вызовите следующее:
    > /opt/apigee/apigee-service/bin/apigee-service Edge-mint-management-server mint-configure-mgmt-cluster
  4. Перезапустите исходный сервер управления:
    > /opt/apigee/apigee-service/bin/apigee-service перезапуск сервера Edge-Management-Server
  5. На новом сервере управления вызовите следующее:
    > /opt/apigee/apigee-service/bin/apigee-service Edge-mint-management-server mint-configure-mgmt-cluster
  6. Перезапустите новый сервер управления:
    > /opt/apigee/apigee-service/bin/apigee-service перезапуск сервера Edge-Management-Server

Дополнительная конфигурация

Предоставление платежных документов в виде PDF-файлов

Монетизация отображает платежные документы конечным пользователям в формате HTML. Чтобы предоставлять платежные документы в виде файлов PDF, вы можете интегрировать монетизацию с системой выставления счетов, которая обеспечивает создание PDF-файлов, или лицензировать поддерживаемую стороннюю библиотеку PDF.

Настройка параметров организации

Настройки серверной части : в следующей таблице перечислены атрибуты уровня организации, доступные для настройки организации монетного двора. Вы можете использовать вызов PUT для добавления/обновления этих атрибутов, как показано ниже:

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

Например, вывод приведенной выше команды CURL будет выглядеть примерно так:

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

Атрибуты

Описание

MINT_TAX_MODEL

Принятые значения РАСКРЫТЫ,

НЕРАСКРЫТО, ГИБРИД (по умолчанию — ноль)

MINT_CURRENCY

Код валюты ISO (по умолчанию — ноль)

MINT_TAX_NEXUS

Налоговая связь (по умолчанию — ноль)

MINT_DEFAULT_PROD_TAX_CATEGORY

Налоговая категория продукта по умолчанию (по умолчанию — ноль)

MINT_IS_GROUP_ORG

Организация группы IS (по умолчанию — false)

MINT_HAS_BROKER

Сломан (по умолчанию — false)

MINT_TIMEZONE

Часовой пояс (по умолчанию — ноль)

MINT_TAX_ENGINE_EXTERNAL_ID

Идентификатор налоговой системы (по умолчанию — ноль)

MINT_COUNTRY

Страна организации (по умолчанию — ноль)

MINT_REG_NO

Регистрационный номер организации, Великобритания дает номер, отличный от идентификатора налогоплательщика (по умолчанию — ноль).

MINT_BILLING_CYCLE_TYPE

PRORATED, CALENDAR_MONTH (по умолчанию CALENDAR_MONTH)

MINT_SUPPORTED_BILLING_TYPE

ПРЕДОПЛАТА/ПОСТОПЛАТА/ОБА (по умолчанию — ПРЕДОПЛАТА)

MINT_IS_SEPARATE_INV_FOR_FEES

Указывает, следует ли создавать отдельный счет за оплату (по умолчанию — false).

MINT_ISSUE_NETTING_STMT

Указывает, следует ли выдавать отчет о неттинге (по умолчанию — false)

MINT_NETTING_STMT_PER_CURRENCY

Указывает, следует ли создавать отчет о неттинге для каждой валюты (по умолчанию — false)

MINT_HAS_SELF_BILLING

Указывает, имеет ли организация самовыставление счетов (по умолчанию — false).

MINT_SELF_BILLING_FOR_ALL_DEV

Указывает, имеет ли организация самовыставление счетов для всех разработчиков (по умолчанию — false).

MINT_HAS_SEPARATE_INV_FOR_PROD

Указывает, имеет ли организация отдельный счет для каждого продукта (по умолчанию — false).

MINT_HAS_BILLING_ADJUSTMENT

Указывает, поддерживает ли организация корректировку счетов (по умолчанию — false).

функции.isMonetizationEnabled

Используется пользовательским интерфейсом управления для отображения специального меню монетизации (по умолчанию — false).

ui.config.isOperator

Используется пользовательским интерфейсом управления для отображения поставщика в качестве оператора, а не организации.

(по умолчанию верно)

Для настройки параметров бизнес-организации с помощью пользовательского интерфейса управления см. http://apigee.com/docs/monetization-services/content/get-started-using-monetization-services .

Примечание . Если вы используете функции «Ограничения и уведомления» служб монетизации, попросите своих разработчиков прикрепить политику ограничений в потоке прокси-сервера после политики проверки токена доступа.

Политика лимитов — это явная политика, предназначенная для блокировки вызова API, если достигнут определенный лимит. Политика проверяет бизнес-лимиты и выдает ошибку, если какие-либо ограничения превышают настроенное значение. Это расширение политики повышения ошибок, но условия выводятся из бизнес-переменных.

Шаблон пользовательского интерфейса доступен в пользовательском интерфейсе управления для разработчиков прокси. Разработчик прокси-сервера должен прикрепить политику mint к потоку сообщений. После выполнения этой политики ошибка будет вызвана реакцией на ошибку в соответствии с политикой. Если для параметра ContinueOnError установлено значение true, то ошибка не будет возникать и будут установлены переменные потока « mint.limitsViolated », « mint.isDeveloperSuspended » и « mint.limitsPolicyError », которые при необходимости можно использовать для дальнейшей обработки исключений.