4.15.07.00 - 适用于私有云的 Apigee Edge 版本说明

您正在查看 Apigee Edge 文档。
前往 Apigee X 文档。
info

我们在 2015 年 9 月 8 日(星期二)发布了 Apigee Edge for Private Cloud 的主要功能版本。

自上一个 Edge for Private Cloud 季度版本 (4.15.04.00) 以来,已发布以下版本,并包含在此季度版本中:

哪些 Edge 版本可以升级到 4.15.07.00

根据您当前的 Edge 版本,您可以执行以下任一操作:

  • 直接升级到 4.15.07.00
  • 逐步升级,这意味着您必须从当前版本升级到另一个 Edge 版本,然后再升级到 4.15.07.00。

如需了解详情,请参阅哪些 Edge for Private Cloud 版本可以升级到 4.15.07.00。

从 4.15.01.x 版或更早版本升级之前

在升级之前,请确保您已在每个 Cassandra 节点上升级 Cassandra SSTable:
  1. 检查 Cassandra SSTable 版本:
    1. 将目录更改为 /<install-root>/apigee4/data/cassandra/data。
    2. 运行 find 命令,
      > find . -name *-ic-*
      如果您运行的是 Cassandra 1.2 SSTable,则结果应返回一组 .db 文件。
    3. 运行以下 find 命令:
      > find . -name *-hf-*
      结果应为空,这意味着没有 .db 文件采用 hf 格式。如果您没有看到 hf 格式的文件,则表示您已完成操作,可以升级到 4.15.07.00。

      hf 格式适用于 Cassandra 1.0 SSTable。如果您有任何 hf 格式的 *.db 文件,则必须按照本过程的其余部分所述升级 SSTable。
  2. 如果您发现任何 hf 格式的 *.db 文件,请在每个 Cassandra 节点上运行以下命令来升级 SSTable,直到您升级了所有 Cassandra 节点:
    > /<install-root>/apigee4/share/apache-cassandra/bin/nodetool -h localhost upgradesstables -a
  3. 重复第 1 步,检查所有 *.db 文件是否都采用 Cassandra 1.2 版本的 ic 格式。
  4. 在 Edge 安装中的每个 Cassandra 节点上重复第 1 步到第 3 步。
  5. 升级到 Edge 4.15.07.00。
  6. 升级到 4.15.07.00 后,请检查 *.db 文件,确保它们都已升级到 C* 2.0 样式 sstable:
    > cd /<install-root>/apigee4/data/cassandra/data
    > find . -name *-jb-*

    如果您运行的是 Cassandra 2.0,此命令应返回一组 .db 文件。

新功能和增强功能

以下是此版本中的新功能和增强功能。

安装和升级

选择性组件升级和卸载

apigee-upgrade.sh 和 apigee-uninstall.sh 脚本现在可让您选择要升级或卸载的 Edge 组件。以前,它会升级或卸载节点上的所有组件。 (OPDK-1377、OPDK-1175)

升级回滚

如果 apigee-upgrade.sh 在升级期间失败,您现在可以使用 apigee-rollback.sh 脚本回滚升级。解决所有升级问题后,您可以重试升级。 (OPDK-1275)

简短的安装程序脚本选项

安装脚本不再接受长格式选项,例如 --help。现在,它们仅接受单字母选项,例如 -h。(OPDK-1356)

SmartDocs 安装

使用 setup-smartdocs.sh 脚本安装 SmartDocs 时,系统会提示您输入组织、环境和虚拟主机,以确保将 SmartDocs 安装在预期位置。之前,这些值是在脚本中硬编码的。(OPDK-1310)

在不提示的情况下运行 update-cass-pwd-in-config.sh

如果您设置了 ENABLE_CASS_AUTH、CASS_USERNAME 和 CASS_PASSWORD 环境变量,则 update-cass-pwd-in-config.sh 脚本可以在没有提示的情况下运行。(OPDK-1309)

Edge 平台

以下是此版本中包含的新 Edge 平台功能。

Edge 私有云支持的 OpenJDK 1.7

此版本的 Edge 支持 Oracle JDK 1.7 和 OpenJDK 7,并移除了对 JDK 1.6 的支持。 (OPDK-1187)

操作系统支持

Apigee Edge for Private Cloud 扩大了其操作系统支持范围,现已支持 Red Hat Enterprise Linux 6.6 和 7.0(64 位)、CentOS 6.5、6.6 和 7.0(64 位)以及 Oracle Linux 6.5。

OPDK 15.07 中包含的 Cassandra 2.0.15

此版本会安装 Cassandra 2.0.15。如果您要从先前版本升级,则 Cassandra 版本将会更新。(OPDK-1197)

支持 SHA2 进行 OAuth 令牌哈希处理

为了在发生数据库安全漏洞时更好地保护 OAuth 令牌,Edge 支持使用 SHA2 算法对 OAuth 令牌进行哈希处理(除了 SHA1 之外)。借助新的组织级属性,您可以为新令牌启用和配置哈希处理,并对在此新功能推出之前存在的任何令牌保留旧版哈希处理。以前,在 Edge for Private Cloud 中,keymanagement.properties 文件(位于管理服务器和消息处理器上)中名为 hash.oauth.tokens.enabled 的属性可启用 OAuth 令牌的自动 SHA1 哈希处理。此属性现已弃用。

如果您之前使用 hash.oauth.tokens.enabled 属性启用了 SHA1 哈希,则此版本的升级脚本会自动为您生成新的组织级属性。如需在升级后进行验证,请以系统管理员身份使用以下 API 执行 GET 操作:https://{host}:{port}/v1/o/{your_org}。

  • 如需了解如何使用新属性在组织中启用令牌哈希,请参阅请求访问令牌主题中的“在数据库中对令牌进行哈希处理”。
  • 如需了解如何批量哈希现有令牌,请参阅 Edge for Private Cloud 操作指南。(APIRT-1389)

日志文件的平面目录结构

您可以通过在 message-logging.properties 文件中将新的 enable.flat.directory.structure 属性设置为 true,将 Edge 配置为在平面目录结构中存储日志文件。如需了解详情,请参阅消息日志记录政策。 (APIRT-1394)

环境缓存性能

为了更好地管理和利用内存缓存,环境缓存资源上的“内存中的最大元素数”设置已被弃用。所有缓存资源(包括默认缓存)中存在的元素总数取决于分配给缓存的总内存。默认情况下,为给定消息处理器上的内存缓存分配的总内存是可用总内存的 40%,由消息处理器 cache.properties 文件中的缓存属性设置决定。只有在缓存内存不足或元素过期时,系统才会从内存缓存中逐出元素。

如需还原为使用“内存中的元素数量上限”属性进行缓存管理的旧行为,请在 cache.properties 文件中设置 overrideMaxElementsInCacheResource=false 属性。(APIRT-1140)


API 服务

以下是此版本中包含的新 API 服务功能。

新版代理编辑器作为默认编辑器

默认情况下,管理界面中会启用新版 API 代理编辑器。新版编辑器包含许多易用性改进,包括在“概览”页面上更全面地查看条件流和端点、在“开发”页面上进行所有配置、更直观地添加条件流、端点和政策、更完整的 XML 视图(而不是小代码段)、抓取文件名和文本的搜索等。(MGMT-2279)

新的“删除 OAuth v2.0 信息”政策

借助新的“删除 OAuth v2.0 信息”政策,您可以删除 OAuth v2 访问令牌和授权代码。该政策取代了之前由 Management API 提供的功能。如需了解详情,请参阅删除 OAuthV2 信息政策。(MGMT-2257)

新增了“删除 OAuth v1.0 信息”政策

借助新的“删除 OAuth v1.0 信息”政策,您可以删除 OAuth v1.0 请求令牌、访问令牌和验证方代码。该政策取代了 Management API 之前提供的功能。如需了解详情,请参阅删除 OAuth V1 信息政策。 (APIRT-1351)

访问权限控制政策

访问权限控制政策已得到增强,当 IP 地址包含在 X-FORWARDED-FOR HTTP 标头中时,可以对 IP 地址进行更精细的评估,以进行许可清单和拒绝清单。

在标头上启用多 IP 地址检查后(请与支持团队联系以设置 feature.enableMultipleXForwardCheckForACL),政策中的新 <ValidateBasedOn> 元素可让您检查标头中的第一个 IP、最后一个 IP 或所有 IP。如需了解详情,请参阅访问权限控制政策。

访问实体政策中的新实体

Access Entity 政策提供对以下新实体的访问权限:consumerkey-scopes、authorizationcode、requesttoken 和 verifier。如需了解详情,请参阅访问实体政策。

统计信息收集器政策:自动将统计信息名称转换为小写

在 API 代理编辑器(“开发”页面 >“工具”>“自定义分析集合”)中创建自定义分析集合时,收集器变量(统计信息)“名称”必须为小写。如果您输入包含大写字母的名称,该工具会自动在 Statistics Collector 政策中将统计信息名称转换为小写。(MGMT-740)

从 API 代理编辑器中移除传统跟踪记录

API 代理编辑器中的最新版 Trace 功能已从 Beta 版升级为正式版。无法再通过“访问传统版 Trace”链接访问“传统版 Trace”。

从管理界面“帮助”菜单访问 Apigee 社区

您可以从管理界面的“帮助”菜单访问 Apigee 社区。

管理界面中的出错提示

以下是管理界面中的出错提示增强功能:

  • 管理界面过去会在整个登录会话期间在界面上对所有出错提示进行分组和显示,除非您将其关闭。此次更新后,当您离开发生出错提示的页面时,出错提示会自动清除。(MGMT-2254)
  • 管理界面不再隐藏重复的出错提示。(MGMT-2242)

界面性能和错误增强功能

对管理界面的不同方面进行了常规增强,包括页面显示性能和出错提示清理。

在管理界面中的“组织用户”页面(“管理”>“组织用户”)上,角色名称现在带有超链接,可让您快速前往角色页面。(MGMT-1055)

消息流中的新目标变量

消息流中的新变量为目标端点和目标服务器提供了更完整的网址信息:

  • TargetEndpoint:request.url 替换 target.basepath.with.query。
  • TargetServer:loadbalancing.targetserver 取代了 targetserver.name。 此外,仅当在 TargetEndpoint 的 HTTPTargetConnection <LoadBalancer> 元素中使用 <Path> 元素时,才会填充 target.basepath。

服务器名称指示 (SNI) 支持

Edge 支持在南向(从消息处理器到目标端点)使用服务器名称指示。如果您想使用 SNI,请与 Apigee Edge 支持团队联系。

需要 Java 1.7。

借助 SNI(TLS/SSL 的扩展),多个 HTTPS 目标可以从同一 IP 地址和端口提供服务,而无需所有这些目标都使用同一证书。

无需进行 Edge 专用配置。如果您的环境配置为南向 SNI(Edge 云默认如此),则 Edge 支持该功能。

Edge 会自动从请求网址中提取主机名,并将其添加到 SSL 握手请求中。例如,如果目标主机为 https://example.com/request/path,则 Edge 会添加 server_name 扩展程序,如下所示:

如需详细了解 SNI,请参阅 http://en.wikipedia.org/wiki/Server_Name_Indication。

SSL 证书详细信息中的“签名算法”

SSL 证书详细信息中添加了新的“签名算法”字段,可在管理界面(“管理”>“SSL 证书”)和 Management API(从密钥库或 truststore 获取证书详细信息)中查看。该字段会显示“sha1WithRSAEncryption”或“sha256WithRSAEncryption”,具体取决于用于生成证书的哈希算法类型。

显示即将到期的 SSL 证书

管理界面中的“SSL 证书”页面(“管理”>“SSL 证书”)会显示 SSL 证书将在 10 天、15 天、30 天或 90 天内过期,具体取决于您在新的过期时间下拉字段中的选择。

威胁防范错误配置

默认情况下,如果消息未通过 JSON 或 XML 威胁防范政策,Edge 会抛出 HTTP 500 内部服务器错误状态代码和 ExecutionFailed 错误。您可以使用新的组织级属性更改错误行为。将组织属性 features.isPolicyHttpStatusEnabled 设置为 true 时,会发生以下行为:

  • 请求:将威胁防范政策附加到任何请求流后,无效消息会返回 400 状态代码以及对应的政策出错提示。
  • 响应:将威胁防范政策附加到任何响应流后,无效消息仍会返回 500 状态代码,并会抛出其中一个对应的出错提示(而不仅仅是 ExecutionFailed)。

Cloud 客户必须联系 Apigee Edge 支持来设置组织属性。此功能将在下一个 Private Cloud 季度版本中向 Edge 私有云客户提供。

更新了端点、代理和其他实体的架构

非政策实体(例如 TargetEndpoint、ProxyEndpoint、APIProxy 等)的参考架构已更新。请参阅 https://github.com/apigee/api-platform-samples/tree/master/schemas。 (APIRT-1249)


开发者服务

以下是此版本中包含的开发者服务新功能。

SmartDocs 正式版

SmartDocs 即将从 Beta 版升级为正式版。更新和新功能包括:

  • 支持 Swagger 2.0,包括按文件或网址导入,以及支持自定义命名的安全对象。
  • 改进了生成 SmartDocs 的模板的视觉设计。
  • 开发者门户中的易用性和工作流增强功能,可通过 Drupal 中的“内容”>“SmartDocs”菜单访问。
  • 以前称为“自定义令牌”的身份验证方式现在称为“API 密钥”。
  • 在修订版本级别定义的身份验证“安全”对象。
  • 模板级客户端身份验证配置。新修订版本不再重置任何预配置的 SmartDocs 客户端凭据。

如需了解更多功能说明,请参阅这篇博文。

如需查看 SmartDocs 文档,请参阅使用 SmartDocs 记录 API。

管理界面中显示的开发者应用名称

Edge 中的开发者应用既有不会更改的内部名称,也有可以更改的显示名称。在管理界面中的“开发者应用”页面(“发布”>“开发者应用”> 应用名称)上,应用内部“名称”会与“显示名称”一起显示,以便您更轻松地通过内部名称直观地识别应用,从而进行问题排查和 API 管理。


分析服务

以下是此版本中包含的新 Analytics Services 功能。

保留的数据的时间限制

使用管理界面或 API 生成分析报告时,默认情况下无法获得从当前日期起 6 个月之前的数据。如果您需要访问 6 个月之前的数据,请与 Apigee Edge 支持团队联系。

管理界面中将不再提供传统版自定义报告

管理界面中不再提供可选的传统版自定义分析报告。

开发者互动微件性能

主分析信息中心(“开发者互动”部分)上的漏斗微件已得到增强,可提供更好的性能。


创收

以下是此版本中包含的新创收功能。

费率方案邮件通知

借助新的费率方案电子邮件通知类型,您可以在开发者达到其购买的分层费率方案或捆绑费率方案中的特定交易或金额上限时通知他们。如需了解详情,请参阅使用通知模板设置通知。

周期性费用和汇总基础周期的同步

在费率方案中,可能有两种不同的时间段生效:

  • 在费率方案的“费用”标签页上配置的周期性费用周期,用于确定何时向开发者收取周期性费用。
  • 在阶梯式用量方案或捆绑包方案的价目表上定义的汇总基准期,用于确定何时为开发者重置捆绑包用量。

这两个时间段现已同步。如果费率方案中同时存在非零周期性费用和分级价目表或捆绑价目表,则两者都使用周期性费用周期。例如,如果存在每月周期性费用,则价目表捆绑包也会每月重置(默认在月初)。

如果不存在周期性费用,则系统会根据价目表上定义的汇总依据重置捆绑包。例如,如果开发者在当月 19 日开始使用价目表,并且汇总基准为每月,则套装使用量会在 19 日之后的一个月重置。

“汇总依据”已被弃用,并将在未来版本中从创收功能中移除。如需了解详情,请参阅指定价目表方案详情。

收入报告中的自定义属性

通过交易记录政策,您可以选择从交易中捕获自定义属性数据,现在您可以在摘要收入报告中包含这些自定义交易属性。通过向组织添加 MINT.SUMMARY_CUSTOM_ATTRIBUTES 属性,您可以指明将哪些自定义属性添加到数据库表中,以便在报告中使用。

Apigee Edge for Private Cloud 客户可以使用以下 API 调用和系统管理员凭据设置该标志。

curl -u email:password -X PUT -H "Content-type:application/xml" http://host:8080/v1/o/myorg -d \
"<Organization type="trial" name="MyOrganization">
    <Properties>
        <Property name="features.isMonetizationEnabled">true</Property>
        <Property name="MINT.SUMMARY_CUSTOM_ATTRIBUTES">[&quot;my_attribute_1&quot;,&quot;my_attribute_2&quot;]</Property>
        <Property name="features.topLevelDevelopersAreCompanies">false</Property>
    </Properties>
</Organization>"

请注意,API 调用中的自定义属性数组已经过网址编码。


SmartDocs 升级流程

如果您在 Beta 版期间已经使用过 SmartDocs,则正式版中的新功能和特性要求您在开发者门户中升级 SmartDocs。

已在开发者门户中发布的任何 SmartDocs 页面都将继续正常运行,但在修改或发布对现有页面或新页面的任何更改之前,您必须遵循更新流程。

请注意,虽然您可以在开发者门户中呈现和发布 SmartDocs,但 SmartDocs 是根据 Apigee 的 Edge API 管理服务中的 API 模型生成的。您在 Edge 中对 API 模型所做的任何更改在所有 Pantheon 环境中都相同(类似于开发者在 Pantheon 环境中的存在方式)。

从 SmartDocs Beta 版升级到正式版

  1. 在 Pantheon 上的开发或测试环境中更新和测试 15.05.27 版本。
  2. 创建一个新模型,以替换您一直在使用的任何现有 API 模型。
    • 如果您一直在导入 Swagger 或 WADL 文档,请再次将其导入到新修订版本中。
    • 如果您一直通过 SmartDocs 模块维护 API 模型,请导出为 SmartDocs JSON,然后使用文件附件导入到新模型中。
  3. 设置模型修订版本的安全属性。在内容 > SmartDocs > 模型页面上,选择安全设置。
  4. 在模型设置页面(内容 > SmartDocs)中,点击“操作”列中的设置,检查是否有任何预配置的身份验证。
  5. 更新所有自定义模板,以使用 CSS 和 JS 素材资源的 v6 版本,并进行更改以反映任何新的对象名称,例如 authSchemes 和 apiSchema。如需了解如何更新 SmartDocs 模板,请参阅使用 SmartDocs 记录 API。
  6. 重新渲染并发布模型修订版本。
  7. 验证新文档后,将生产门户更新到 15.05.27 版本。

如果您是 Edge 企业客户,并且对升级流程有任何疑问或疑虑,请发送电子邮件至 marsh@apigee.com 和 cnovak@apigee.com。否则,请使用 Apigee 社区以获得最佳回复。


未来的功能变更和增强功能

本部分预览了未来预期的功能变更和增强功能:

响应缓存政策行为变更

在未来的版本(待定)中,响应缓存政策的 <ExcludeErrorResponse> 元素的默认行为将发生变化。

当前行为:响应缓存政策中的 <ExcludeErrorResponse> 元素默认为 false。这意味着,默认情况下,响应缓存政策会缓存具有任何可能 HTTP 状态代码(包括 3xx)的响应。

未来行为:响应缓存政策中的 <ExcludeErrorResponse> 元素将默认为 true。这意味着,默认情况下,系统只会缓存 HTTP 状态代码为 200 到 205 的响应。如需替换此行为并缓存所有状态代码的响应,您需要将 <ExcludeErrorResponse> 元素显式设置为 true。

当前解决方法:对于私有云 4.15.07.00 及更低版本,如果您只想缓存状态代码为 200 到 205 的响应,则必须将元素 <ExcludeErrorResponse> 明确设置为 true。


修复了 bug

此版本中修复了以下 Bug。

问题 ID 说明
OPDK-1521 密码加密问题
OPDK-1201 无法恢复界面数据
OPDK-1112 自定义 LDAP 密码政策未应用于 Apigee 管理员用户
OPDK-1097 OPDK 升级期间出现键空间异常
OPDK-1068 如果管理员密码在安装期间失效,可以更改该密码
OPDK-1053 Zookeeper 以根用户身份运行
OPDK-967 使用 set-autostart.sh 将 OpenLDAP 设置为自动启动时,all-status.sh 会将其报告为已停止运行
OPDK-905 Smartdocs prod 已在群组 axgroup001 中注册
OPDK-899 初始配置期间出错
OPDK-847 在初始配置期间创建的用户不会收到用于重置密码的邮件
OPDK-817 init.d 脚本抛出错误
OPDK-815 ax-purge.sh 脚本需要清除抽样表
MGMT-2246 “创建自定义报告”页面在管理界面中无法正确显示
MGMT-2235 对于即将到期的 SSL 证书,到期相对时间可能会被四舍五入,从而造成混淆
对于即将到期的 SSL 证书,如果证书在 90 天或更短时间内到期,则到期日期的相对时间始终以天为单位显示,而不是四舍五入到月。
MGMT-2193 修改 API 时的加载旋转图标
MGMT-2173 Trace 界面不允许使用合法网址
现在,您可以通过 Trace 界面发送包含嵌套查询参数的查询参数值的请求。
MGMT-2162 JavaScript 编译问题
MGMT-2124 在界面中保存权限时,客户角色的权限会重置
MGMT-2114 MessageLogging 政策中的 Syslog IP 无效,应在部署期间抛出适当的错误
MGMT-2067 Trace:如果 API 代理修订版本部署在 2 个环境中,则选择修订版本和环境无法正常工作
MGMT-2061 “忘记密码”功能应仅向注册用户发送电子邮件
管理界面登录页面上的“忘记密码?”链接仅向注册的 Apigee 用户发送电子邮件。
MGMT-2048 具有自定义角色的用户(该角色将部署权限限制为一个环境)可以在其他环境中部署
MGMT-2041 从默认连接模板中移除 FaultRules 元素
FaultRules 元素未在政策或 API 代理步骤中使用,因此在您创建 API 代理或添加政策时,系统不会再自动添加该元素。
MGMT-2034 提取 WSDL 返回失败:“提取 WSDL 错误:处理 WSDL 时出错。”
MGMT-1986 添加开发者时出现界面错误
MGMT-1983 “获取 OAuth 2.0 授权代码”API 返回错误的状态
MGMT-1962 使用安全系数高的密码登录管理界面时出错
使用某些特殊字符(例如百分号)登录界面不再失败。
MGMT-1947 管理界面中的角色不直观
如果用户无权创建或修改事务记录政策,则用于创建和修改事务记录政策的界面按钮现在处于停用状态。
MGMT-1899 保存产品设置后删除的资源路径
修改 API 产品时,如果用户双击“保存”按钮,则产品的资源路径可能会被删除。此问题已解决。
MGMT-1894 “开发者应用”页面始终未能完成加载(针对开发者列)
MGMT-1882 通过 WSDL 创建的新 API 代理仅显示最后一个参数的详细信息
MGMT-1878 如果将多个修订版本部署到某个环境,Trace 只会显示其中一个修订版本
MGMT-1872 无法下载自定义报告
MGMT-1863 无法在管理界面中查看 Node.js 日志
MGMT-1843 API 代理无法打开
MGMT-1833 sysadmin 用户不应在 OPDK 的界面中更改密码
MGMT-1825 跨站脚本攻击 (XSS) 漏洞
MGMT-1824 导入扩展名为 .xml 的 WSDL 文件时出现提取 WSDL 错误
MGMT-1812 在导入期间添加 TargetEndpoint 验证
与 ProxyEndpoint 类似,在 API 代理导入期间,系统会验证 TargetEndpoint 是否使用了正确的架构和条件表达式。
MGMT-1804 Node.js API 在某些情况下会发送无效的 JSON
如果 JSON 数据包含无效字符,Node.js 日志屏幕过去会显示未设置格式的日志。此问题已在此版本中修复,界面现在会显示格式正确的 node.js 日志。
MGMT-1802 重设密码网址 #118
如果管理界面位于 SSL 终止服务器后面,则管理界面现在会正确生成一封重设密码电子邮件,其中包含指向 HTTPS 网址(而非 HTTP 网址)的链接。
MGMT-1799 在 Trace 中发送请求时存在界面安全漏洞
MGMT-1777 无法添加电子邮件地址的顶级域名 (TLD) 为 .acn 的用户
MGMT-1735 品牌信息“提取 W 时出错”
我们已立即移除 Edge OPDK 中的自定义品牌信息支持。虽然我们知道这可能会让少数使用该功能的客户感到失望,但该功能并不能直接提升 Edge 的 API 管理功能。
MGMT-1569 将 API 代理附加到现有 API 产品时出现问题
修复了当 API 代理具有“/”路径的资源时,在管理界面中将 API 代理附加到 API 产品的问题。
MGMT-1563 如果遇到错误,Trace 上的“发送”按钮仍处于停用状态
MGMT-1362 如果电子邮件地址包含“_”,则“忘记密码”电子邮件不起作用
修复了 OPDK 中包含下划线的电子邮件地址的重设密码问题。
MGMT-1345 导入具有多个命名空间的 WSDL 会导致“构建 SOAP”步骤不正确
MGMT-1193 将代理另存为新修订版本会意外更改路由规则
MGMT-1061 SmartDocs:Swagger 定义中的正文类型参数说明未显示在文档界面中
MGMT-800 创建名为“default”的资源会导致界面损坏
MGMT-787 界面提醒易用性问题
在管理界面中,当您点击“+ API 代理”且“新建 API 代理”对话框出现时,您可以按 Esc 键关闭该对话框。
MGMT-619 在 API 代理界面页面中启用分页功能
MGMT-602 API 代理“开发”视图:当端点没有 PreFlow/PostFlow 时,添加响应缓存政策会导致错误
MGMT-460 重命名政策会导致行为异常,并产生无法移除的重复政策
DEVRT-1644 按名称查找通知导致发送错误的电子邮件
DEVRT-1583 创收界面针对当前费率方案显示“未来”标记
DEVRT-1546 方案限制不起作用
DEVRT-1511 现有开发者的 mint.resourceDoesNotExist 错误
CORERT-639 TCPSysLogSocket 必须是异步的
CORERT-613 由于“unrecognized_name”导致 SSL 握手失败
AXAPP-1728 忽略分析中的变现变量
AXAPP-1708 Analytics API 似乎会根据我的提问方式,为同一统计信息生成不同的数字
AXAPP-1707 提升免费 Pod 分析性能
AXAPP-1690 自定义报告中出现“API 无效错误”
AXAPP-1533 Google Analytics 地理分布图抛出“API 调用无效”错误
AXAPP-1493 缓存性能统计信息不正确
APIRT-1436 创建工具/脚本,对未经过哈希处理的令牌进行哈希处理
APIRT-1425 在 JavaCallout 政策中,将 continueOnError 属性设置为“true”不会产生任何影响
APIRT-1346 OAuth2.0 - 当 hash.oauth.tokens.enabled 为 true 时,访问令牌响应中会返回哈希值
APIRT-1206 target_ip 未记录在 503 和大多数 504 的事实表中
APIRT-1170 缺少资源文件导致 MP 无法加载环境
APIRT-1148 在 ResponseFlow 中对 Node.js 目标的 {message.version} 变量执行 GET 操作会抛出 NPE
APIRT-1054 尝试记录到默认目录以外的其他目录时,消息日志记录失败
APIRT-387 让 OrganizationService 在 MP 上的“others”变体中运行
APIRT-67 OAuth GenerateAccessToken 政策未正确设置 oauthV2.failed 变量
APIRT-52 自定义报告:许多 API 的响应状态代码为 null

已知问题

此版本存在以下已知问题。

问题 ID 说明
OPDK-1586

如果未启用 IPV6 支持,API BaaS 门户将无法启动
解决方法是在 /<install-dir>/apigee4/conf/nginx/conf.d/loadbalancer.conf 中注释掉以下 IPV6 行,以使 API BaaS 门户正常运行,或启用 IPV6 支持:

# listen [::]:8080;

OPDK-1785

在升级后的 Edge 安装环境中安装变现组件
如果您将 Edge 安装升级到 4.15.07.00,并且在升级之前尚未使用变现功能,则无法在 4.15.07.00 版本的 Edge 上安装变现功能。

解决方法是在尝试安装 Monetization 之前,在 apigee-env.sh 文件中设置正确的 Monetization 版本。如需获取 4.15.07 中的变现版本(在您已升级到 Edge 4.15.07 之后),请运行以下命令:
> source /{install-dir}/apigee4/bin/apigee-env.sh

> VER=`basename $(find $SHARE_DIR/installer/monetization -name "mint-*.zip") | cut -d "-" -f 2,3,4`
默认情况下,install-dir 为 /opt。
需要在 apigee-env.sh 中设置上述 VER 的值:
> sed -i "s/^MONETIZATION_VERSION=.*/MONETIZATION_VERSION=$VER/" /install-dir/apigee4/bin/apigee-env.sh
如果您尝试在不执行上述步骤的情况下安装变现功能,则安装会失败,并且共享目录中可能会出现死符号链接。您需要移除该符号链接:
> rm /install-dir/apigee4/share/monetization
移除符号链接后,请执行上述步骤来设置创收版本,然后重试创收安装。
OPDK-1857 bin/qpid-stat.sh 和 bin/qpid-config.sh 中硬编码的 Python 2.6 版本

在 CentOS 和 RedHat 7.0 上,bin/qpid-stat.sh 和 bin/qpid-config.sh 中的多个脚本被硬编码为使用 Python 2.6 版。

此问题的解决方法是更改 apigee4/bin 目录中 qpid-stat.sh 和 qpid-config.sh 中导出 PYTHONPATH 的行。

export PYTHONPATH="${QPID_DIR}/lib/python2.6/site-packages"

如需确定系统上的 Python 版本,请检查 /opt/apigee4/share/apache-qpid/lib 目录中的 Python 版本。该目录很可能是 python2.7。

然后,您需要使用正确的路径更新 qpid-stat.sh 和 qpid-config.sh 中的 PYTHONPATH 设置。例如:

export PYTHONPATH="${QPID_DIR}/lib/python2.7/site-packages"

DEVRT-1574 具有多个有效费率方案的开发者的余额和用量不一致
在创收功能中,如果开发者在多个具有按 API 调用收费的费率方案中处于活跃状态,则货币余额用量有时可能会不一致。
APIBAAS-1647 以系统管理员身份登录后,BaaS 界面会发出“获取角色时出错”出错提示
从 4.15.01 升级到 4.15.07 后,系统管理员首次登录系统时会显示此出错提示。您可以忽略此消息。
DEVRT-1834 创收功能升级到 4.15.07
apigee-upgrade.sh 脚本会在末尾输出以下消息,提示您执行另一个脚本:
**************************************
In order to complete the monetization upgrade please run:
sudo /opt/apigee4/share/monetization/schema/migration/MOPDK4.15.04.00/
365-create-notification-condition.sh
**************************************

您可以忽略此消息。该脚本不是必需的,无法执行。

DEVRT-1951 全新安装的创收功能缺少通知配置
在全新安装 Apigee Edge for Private Cloud 4.15.07.00 版时,缺少以下创收通知配置。这些对应于管理界面中“管理”>“通知”页面上的通知类型。
mint.scheduler.${ORG_ID}.adhocnotify@@@management
mint.scheduler.${ORG_ID}.expiringrateplannotify@@@management
mint.scheduler.${ORG_ID}.newpkgnotify@@@management
mint.scheduler.${ORG_ID}.newproductnotify@@@management
mint.scheduler.${ORG_ID}.newrateplannotify@@@management
mint.scheduler.${ORG_ID}.tncacceptancenotify@@@management
如需解决此问题,请按以下步骤操作。您需要 Cassandra 实例的 IP 地址。如需查找该文件,请查看 <installation-root>/apigee4/conf/cassandra/cassandra.yaml 或 <installation-root>/apigee4/conf/cassandra/cassandra-topology.properties。
  1. 运行以下命令。保留 {ORG_ID} 变量,但替换 <org_name>、<installation-root> 和 <cassandra_ip_address>。
    sed -e "s/\${ORG_ID}/<org_name>/g" <installation-root>/apigee4/share/monetization/schema/cassandra/org/ui/mint-org-specific-ui-schedulers.txt > /tmp/mint-org-specific-ui-schedulers.txt
    
    <installati>on-root/apigee4/share/apache-cassandra/bin/cassandra-cli -h <cassandra_ip_address> -f /tmp/mint-org-specific-ui-schedulers.txt
  2. 重启管理服务器。
DEVRT-1952 从 4.14.07.00 升级获利功能时缺少通知配置
在 Apigee Edge for Private Cloud 从 4.14.07.00 版升级到 4.15.07.00 版时,缺少以下创收通知配置,这会导致创收报告无法正常运行。
mint.scheduler.${ORG_ID}.chargedaily@@@management
mint.scheduler.${ORG_ID}.chargehourly@@@management
如需解决此问题,请按以下步骤操作。您需要 Cassandra 实例的 IP 地址。如需查找该文件,请查看 <installation-root>/apigee4/conf/cassandra/cassandra.yaml 或 <installation-root>/apigee4/conf/cassandra/cassandra-topology.properties。
  1. 运行以下命令。保留 {ORG_ID} 变量,但替换 <org_name>、<installation-root> 和 <cassandra_ip_address>。
    sed -e "s/\${ORG_ID}/<org_name>/g" <installation-root>/apigee4/share/monetization/schema/cassandra/org/system/mint-org-specific-system-schedulers.txt > /tmp/mint-org-specific-system-schedulers.txt
    
    <installati>on-root/apigee4/share/apache-cassandra/bin/cassandra-cli -h <cassandra_ip_address> -f /tmp/mint-org-specific-system-schedulers.txt
  2. 重启管理服务器。
OPDK-1878 无法在多数据中心安装中设置 Pod 名称
Edge 安装指南指定在多数据中心安装的静默安装文件中将 Pod 名称设置为“gateway-1”和“gateway-2”。不过,重命名 Pod 会导致路由器和消息处理器无法正确注册和访问。此问题还会导致 setup-org.sh 脚本无法找到可用的消息处理器。

解决方法是在两个数据中心的静默安装文件中,使用 MP_POD 属性将 Pod 名称设置为“gateway”。
OPDK-1886

节点无法访问本地 IP 地址,例如 192.168.x.y
尝试访问本地 IP 地址时,您会看到“connect EINVAL”错误。
解决方法是修改消息处理器节点上的 /<install_dir>/apigee4/conf/apigee/message-processor/nodejs.properties 文件,以注释掉以下行:

connect.ranges.denied=10.0.0.0/8,192.168.0.0/16,127.0.0.1/32

然后,重启消息处理器节点:

<install_dir>/apigge4/bin/apigee-service message-processor restart 
OPDK-1958 升级时,所有节点都需要访问管理服务器上的端口 8080
在运行时,以下组件需要访问管理服务器上的端口 8080:路由器、消息处理器、界面、Postgres 和 Qpid。但是,在升级时,所有节点(包括 Cassandra 和 ZooKeeper 节点)都需要访问管理服务器上的端口 8080。
OPDK-1962 升级后必须为 Edge API 重新配置 SSL
如果您在升级到 4.15.07.00 之前已将 Edge API 配置为使用 SSL,则必须在升级后重新配置 SSL。如需了解为 Edge API 配置 SSL 的过程,请参阅 Edge 操作指南。