Edge for Private Cloud v. 4.17.05
创收服务是 Apigee Edge 的扩展程序,因此不会作为独立进程运行。它可在任何现有的 Apigee Edge 设置中运行。
变现要求
- 如果您要在使用多个管理服务器节点的 Edge 拓扑(例如 13 节点安装)上安装创收功能,则必须先安装两个 Edge 管理服务器节点,然后再安装创收功能。
- 如需在 Edge 安装具有多个 Postgres 节点的 Edge 上安装变现功能,必须在主/待机模式下配置 Postgres 节点。如果您有多个 Postgres 主节点,则无法在 Edge 上安装变现功能。如需了解详情,请参阅为 Postgres 设置主备复制。
安装概览
以下步骤说明了如何在现有 Apigee Edge 安装中添加创收服务:
- 使用 apigee-setup 实用程序更新 Apigee 管理服务器节点,以启用创收服务,例如目录管理、限制和通知配置、结算和报告。
如果您有多个管理服务器节点(例如 13 节点安装),则必须先安装两个 Edge 管理服务器节点,然后再安装创收功能。 - 使用 apigee-setup 实用程序更新 Apigee 消息处理器,以启用创收服务的运行时组件,例如交易记录政策和限制强制执行。如果您有多个消息处理器,请在所有消息处理器上安装创收功能。
- 为您的 Edge 组织执行 Monetization 初始配置流程。
- 配置开发者服务门户以支持创收。如需了解详情,请参阅 http://apigee.com/docs/monetization/content/configure-monetization-developer-portal。
为创收功能创建静默配置文件
下面显示了创收安装的静默配置文件示例。根据您的配置需要修改此文件。使用 setup.sh 的 -f 选项添加此文件。
注意:通常,您需要将这些属性添加到用于安装 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_PASSWORD
将创收服务与所有管理服务器集成
请按照以下步骤在管理服务器节点上集成创收功能。
- 如果您要在使用多个管理服务器节点的 Edge 拓扑(例如 13 节点安装)上安装变现功能,请确保在安装变现功能之前安装了两个管理服务器节点。
- 在 Management Server 节点上,运行设置脚本:
> /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile
“-p mo”选项指定集成创收功能。
配置文件必须可供“apigee”用户访问或读取。 - 如果您要在多个管理服务器节点上安装变现功能,请在第二个管理服务器节点上重复第 2 步。
配置成功后,系统会在 PostgreSQL 数据库中创建创收服务的 RDBMS 架构。至此,创收服务及其关联组件与 Postgres Server 的集成便完成了。
将创收服务与所有消息处理器集成
请按照以下步骤在所有消息处理器节点上集成变现功能。
- 在第一个消息处理器节点上,在命令提示符处运行设置脚本:
> /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile
“-p mo”选项指定集成创收功能。
配置文件必须可供“apigee”用户访问或读取。 - 在所有消息处理器节点上重复此过程。
配置成功后,消息处理器会更新为变现服务。这样就完成了创收服务及其关联组件与消息处理器的集成。
创收功能初始配置
如需创建启用了变现功能的新组织,您首先需要像创建任何新组织一样创建该组织。如需了解详情,请参阅为组织启用。
为组织启用变现功能的额外初始配置
如需完成组织的变现功能初始配置,您必须:
- 创建创收群组:mxgroup。
- 将 Qpid 添加到群组。
- 为组织启用创收功能。
- 为组织启用通知设置。
- 对要启用变现功能的所有组织重复此过程。
使用 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 节点。
如需运行该脚本,请执行以下操作:
- 调用脚本:
> /opt/apigee/apigee-service/bin/apigee-service apigee-provision enable-monetization -f configFile
配置文件必须可供“apigee”用户访问或读取。
如果您有多个管理服务器,则只需在其中一个服务器上运行此脚本。
此脚本会将组织、产品、开发者和应用从 Cassandra 数据库复制到创收 PostgreSQL 数据库。成功安装创收服务后,数据会自动同步。 - 针对要启用变现功能的每个组织重复此过程。
- 如果您处于多数据中心环境中,请在其他数据中心的 Management Server 上重复此过程。确保配置文件仅列出正在配置的数据中心内的 Qpid 节点。
下次登录 Edge 界面时,您会在组织的顶级菜单中看到“创收”条目:

配置开发者服务门户
如需将开发者服务门户配置为支持创收,请参阅 http://apigee.com/docs/monetization/content/configure-monetization-developer-portal。
向创收安装添加管理服务器节点
如果您向现有 Edge 安装添加 Management Server,则必须确保向新的 Management Server 添加变现服务,并配置所有 Management Server,以便它们可以进行通信。
如需添加 Management Server,请执行以下操作:
- 安装新 Management Server。
- 在新管理服务器上安装创收功能。
- 在原始 Management Server 上,调用以下命令:
> /opt/apigee/apigee-service/bin/apigee-service edge-mint-management-server mint-configure-mgmt-cluster - 重启原始 Management Server:
> /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart - 在新 Management Server 上,调用以下命令:
> /opt/apigee/apigee-service/bin/apigee-service edge-mint-management-server mint-configure-mgmt-cluster - 重启新 Management Server:
> /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
其他配置
以 PDF 文件形式提供结算文档
创收功能会以 HTML 格式向最终用户显示结算文档。如需以 PDF 文件形式提供结算文档,您可以将创收功能与提供 PDF 生成功能的结算系统集成,或为受支持的第三方 PDF 库授予许可。
配置组织设置
后端设置:下表列出了可用于配置 Mint 组织的组织级属性。您可以使用 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 |
接受的值包括 DISCLOSED、 UNDISCLOSED、HYBRID(默认值为 null) |
|
MINT_CURRENCY |
ISO 货币代码(默认值为 null) |
|
MINT_TAX_NEXUS |
纳税关联(默认值为 null) |
|
MINT_DEFAULT_PROD_TAX_CATEGORY |
默认商品税种(默认值为 null) |
|
MINT_IS_GROUP_ORG |
是否为群组组织(默认值为 false) |
|
MINT_HAS_BROKER |
Has broken(默认值为 false) |
|
MINT_TIMEZONE |
时区(默认值为 null) |
|
MINT_TAX_ENGINE_EXTERNAL_ID |
税费引擎 ID(默认值为 null) |
|
MINT_COUNTRY |
组织所在国家/地区(默认值为 null) |
|
MINT_REG_NO |
组织的注册号,英国提供的注册号与税号不同(默认值为 null) |
|
MINT_BILLING_CYCLE_TYPE |
PRORATED、CALENDAR_MONTH(默认值为 CALENDAR_MONTH) |
|
MINT_SUPPORTED_BILLING_TYPE |
PREPAID/POSTPAID/BOTH(默认值为 PREPAID) |
|
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) |
|
features.isMonetizationEnabled |
由管理界面用于显示创收专用菜单(默认值为 false) |
|
ui.config.isOperator |
供管理界面用于将提供商显示为运营商或组织 (默认值为 true) |
如需了解如何使用管理界面配置业务组织设置,请参阅 http://apigee.com/docs/monetization-services/content/get-started-using-monetization-services。
注意:如果您使用的是创收服务限制和通知功能,请指示开发者在访问令牌验证政策之后,在代理流中附加限制政策。
限制政策是一项明确的政策,旨在在达到特定限制时阻止 API 调用。该政策会检查业务限制,如果存在任何超出配置值的限制,则会引发故障。这是引发故障政策的扩展,但条件派生自业务变量。
管理界面中提供了一个界面模板,供代理开发者使用。代理开发者应在消息流中附加 mint 政策。执行此政策后,系统将根据政策引发故障并返回故障响应。如果 ContinueOnError 设置为 true,则不会引发故障,并且会设置流变量“mint.limitsViolated”“mint.isDeveloperSuspended”和“mint.limitsPolicyError”,这些变量可用于进一步的异常处理(如果需要)。