4.16.05 - Edge for Private Cloud 版本資訊

您正在查看 Apigee Edge 說明文件。
查看 Apigee X 說明文件
資訊

我們在 2016 年 5 月 31 日星期二發布了新版 Apigee Edge for Private Cloud。

自舊版的 Private Cloud 功能版本 (4.16.01) 以來,已推出下列版本,這個功能版本包含這些內容:

請參閱「關於版本編號」,瞭解如何確認您的 Edge for Private Cloud 版本是否包含特定雲端版本。

新功能和強化項目

這個版本包含的新功能和強化項目。除了下列強化項目外,這個版本也強化了可用性、效能、安全性和穩定性。

如需更多詳細資料和操作說明,請參閱 Edge for Private Cloud 說明文件。

安裝與作業指南已改為在線上

您現在可以在 4.18.01 版中存取 Edge for Private Cloud 安裝和作業指南。

軟體更新

版本包含下列軟體更新:

  • Java JDK 1.8:為了使用最新的 Java 功能,此版本與 Java 1.8 相容。您的環境中須使用 Oracle JDK 1.8 或 OpenJDK 8。
    在 Java 8 更新中,Oracle JDK 1.8 中不再提供部分傳輸層安全標準 (TLS) 加密。如需完整清單,請參閱「預設停用的加密套件」一節:http://docs.oracle.com/javase/8/docs/technotes/guides/security/SunProviders.html
  • Cassandra 2.1.13 - 從 Cassandra 2.0.15 更新。

安裝、升級、復原

以下是安裝、升級和相關指令碼的變更清單。如需使用說明,請參閱 Edge for Private Cloud 說明文件。

  • 從 4.16.01 更新的新程序 - 這個版本會將 apigee-migrate 公用程式替換為 update.sh 公用程式,以便將安裝作業從 4.16.01 更新至 4.16.05。請參閱將 Apigee Edge 4.16.01 更新至 4.16.05 版
  • 啟動
    • bootstrap.sh (4.16.01 版) 現在是 4.16.05 中的 bootstrap_4.16.05.sh
    • 您不再需要指定 uname:pword,即可下載 bootstrap_4.16.05.sh
  • 復原:如要將更新復原至 4.16.05,您需要解除安裝元件的 4.16.05 版本,並重新安裝先前的版本。已移除先前的 rollback.sh 公用程式。請參閱 4.16.05 復原程序
  • setup.shupdate.sh 可將記錄檔寫入 /tmp:根據預設,setup.shupdate.sh 公用程式會將記錄資訊寫入 /opt/apigee/var/log/apigee-setup。如果執行公用程式的使用者無法存取該目錄,系統會將記錄寫入 /tmp 目錄。如果使用者無法存取 /tmp,公用程式就會失敗。
  • API BaaS 更新程序 - 在 4.16.01 版本中,您必須重新安裝 API BaaS 才能進行遷移。新的 update.sh 公用程式支援更新現有的 API BaaS。請參閱將 Apigee Edge 4.16.01 更新至 4.16.05 版

管理

以下是 Private Cloud 管理與設定的新功能。

  • 安裝驗證 - 用來測試 Edge Private Cloud 安裝項目的 apigee-validate 公用程式現在可從管理伺服器執行。先前必須在訊息處理器上執行指令碼。請參閱「測試安裝」。
  • 區域名稱:區域可以是任何名稱。在先前的版本中,名稱的格式為「dc-#」,其中 # 是整數值。
  • 閘道 Pod:閘道 Pod 可以使用任何名稱。在先前的版本中,Pod 必須命名為「gateway」。
  • 指令碼式管理:新的 apigee-adminapi.sh 指令列公用程式可讓您呼叫 Edge Management API,執行相同的 Edge 設定工作。請參閱使用 apigee-adminapi.sh 公用程式
  • 虛擬主機 SSL 無訊息設定 - 現在建立機構或環境時,您可以傳遞屬性,在虛擬主機上設定 SSL。請參閱「為機構加入」。

API 服務

以下是 Edge API 服務的新功能。這些功能已在先前的雲端版本中提供。

固定的系統記錄檔訊息記錄功能長度前置字串 (Cloud 16.03.30)

訊息記錄政策在 Syslog 設定中加入新的 <FormatMessage> 元素。設定 <FormatMessage>true</FormatMessage> 之後,系統記錄檔訊息的開頭會以固定的字元數開頭,讓您篩除已插入 Apigee 的資料。詳情請參閱訊息記錄政策。(APIRT-1398)

API Proxy 基本路徑中的萬用字元 (Cloud 16.03.09 UI)

管理 UI 支援在 API Proxy 基本路徑中使用一或多個 /*/ 萬用字元。舉例來說,/team/*/members 的基本路徑可讓用戶端使用 https://[host]/team/blue/membershttps://[host]/team/green/members 呼叫 Proxy,而您不必建立新的 Proxy 來支援新團隊。請注意,不允許使用 /**/。(MGMT-3154)

API Proxy 鏈結 (Cloud 16.03.02、Cloud 16.03.09 UI)

Edge 支援本機 API Proxy 鏈結,可讓一個 API Proxy 呼叫部署在 Edge 機構中的另一個 API Proxy,而且不會增加網路負擔。先前,API Proxy 鏈結需要到另一個 API Proxy 進行 http(s) 呼叫,而該 Proxy 會透過負載平衡器、路由器和訊息處理器轉送要求。

API Proxy 的 TargetEndpoint 有新的 LocalTargetConnection 元素,可讓您指定 API Proxy 名稱、API Proxy 中的特定 ProxyEndpoint 名稱,或僅當本機 API Proxy 資源的基本路徑 (例如 /v1/myresource)。當您新增或更新目標端點時,Proxy 編輯器 UI 也會提供這些選項。

服務呼叫政策也提供 Proxy 鏈結。

詳情請參閱將 API Proxy 鏈結在一起。這裡的 XML 結構定義中也會顯示新的 LocalTargetConnection 元素:https://github.com/apigee/api-platform-samples/blob/master/schemas/configuration/configuration_schemas.xsd。(MGMT-3049, MGMT-3050)

修正錯誤

本次更新修正了下列錯誤。這份清單主要是用來確認支援單是否已經解決,無法向所有使用者提供詳細資訊。

私有雲 4.16.05 邊緣

問題 ID 說明
PRC-770 16.01 安裝程式無法在 axgroup 中註冊 Postgres 待命伺服器
PRC-758 具備使用者角色的使用者可編輯自訂報表
PRC-883 在具備主要待命設定的 Postgres 伺服器上更新失敗

Cloud 16.03.30

問題 ID 說明
SECENG-584 驗證檢查中憑證鏈中憑證之間的換行符號,會導致實際工作環境中的部分憑證發生問題
MGMT-3217 如果 KVMap 名稱結尾是「keys」,Management API 呼叫就會失敗
MGMT-3214 在 Java 呼叫期間,導致客戶的 Java 程式碼失敗,可能會發生類別衝突
MGMT-3185 為機構新增機構管理員時發生錯誤
EDGEUI-127 使用新的 Proxy 編輯器取得權限不足
EDGEUI-119 使用者介面工作階段逾時問題
CORESERV-671 系統顯示「未設定環;無法初始化 cps 服務」錯誤訊息
AXAPP-2345 針對非單次轉換出價客戶顯示 AX 自訂報表時發生問題
AXAPP-2302 每日 Apigee 數據分析摘要顯示,開發人員採用率為零
APIRT-2750 特定機構單位的流量失敗次數偏高
APIRT-2516 JavaScript 呼叫的執行階段錯誤指定了錯誤的行數
APIRT-2508 在保管箱回呼中呼叫快速監聽時發生錯誤
APIRT-2336 Node.js 的 Gzip 問題
APIRT-1975 遮罩設定不適用於 message.content

Cloud 16.03.16 UI

問題 ID 說明
MGMT-3142 錯誤分析資訊主頁未載入圖表 (已更新修正)

Cloud 16.03.09 UI

問題 ID 說明
MGMT-3158 透過 API 設定個別 Proxy 上的 RBAC 時,UI 權限不足
MGMT-3142 錯誤分析資訊主頁未載入圖表
MGMT-3118 UI 的「clientAuthEnabled」參數顯示錯誤的 SSL 虛擬主機設定
DEVRT-2344 單日報表定義未在使用者介面中載入交易

Cloud 16.03.02

問題 ID 說明
MGMT-3083 Node.js 記錄的自動重新整理功能過於詳細
DEVRT-2275 自訂屬性費率方案只會顯示 5 項屬性,不會顯示 10 項屬性
DEVRT-1275 「費率方案」下拉式選單中未顯示所有開發人員
DEVRT-1074 餘額為零的預付開發人員在套用抵免額時擲回 NullpointerException

Cloud 16.02.17

問題 ID 說明
MGMT-3083 Node.js 記錄的自動重新整理功能過於詳細
MGMT-3077 UI 是從使用預設命名空間的 WSDL 產生無效的 Proxy 組合
MGMT-1642 自訂使用者角色缺少開發人員應用程式的「取得」權限

已知問題

這個版本有下列已知問題。

問題 ID 說明
APIRT-2978

路由器無法啟動 Nginx,或路由器無法啟動

如果 Edge Router 無法啟動 Nginx,或是完全無法啟動 (如 /opt/apigee/var/log/edge-router/logs/system.log 檔案所示),請刪除 /opt/nginx/conf.d 目錄中的所有檔案,然後重新啟動路由器:

> rm -f /opt/nginx/conf.d/*
> /opt/apigee/apigee-service/bin/apigee-service edge-router restart
APIRT-3364

郵件處理器會對 IPv4 和 IPv6 進行 DNS 查詢

如果您安裝並啟用 NSCD (名稱服務快取 Daemon),可能會發現訊息處理方會進行兩項 DNS 查詢:分別針對 IPv4 和 IPv6。

如何停用 IPv6 的 DNS 查詢:

  1. 在每個訊息處理器節點上編輯 /etc/nscd.conf
  2. 設定下列屬性:

    enable-cache 主機 no
PRC-1118

執行「apigee-service apigee-postgresql pg-data-purge」指令時發生錯誤

如果您執行「apigee-service apigee-postgresql pg-data-purge」指令,並看到錯誤訊息:

錯誤:必須是關係擁有者

編輯 /opt/apigee/apigee-postgresql-4.16.05-0.0.894/lib/actions/pg-data-purge,並將下列屬性設為「apigee」:

POSTGRES_USER=apigee

DOC-1687 由於已知的套件依附元件衝突,在搭載 Qpid Daemon 的 Apigee Edge 主機上,無法使用衛星伺服器 6 的 Katello 代理程式正確安裝。

指派訊息、Java 呼叫和擴充錯誤政策中的 JSON 酬載

Assign Message、Java callout 和 rise Fault 政策可讓您使用 <Set><Payload> 元素產生訊息內容。在這些訊息中,您可以加入變數,其值會在執行階段自動填入。舉例來說,如果您想從 HTTP 標頭輸出日期,可以在訊息中插入 {message.header.date}

如果訊息格式是 JSON,看起來會像這樣:

{"The date is: " : "{message.header.date}"}

不過,您可以看到格式錯誤的 JSON。如要解決這個問題,有以下兩種做法:

  • 使用反斜線逸出左大括號:
    \{"The date is: " : "{message.header.date}"}
    
  • 在酬載元素設定中,使用 variablePrefixvariableSuffix 屬性表示 JSON 酬載中的變數。例如:
    <Payload contentType="application/json" variablePrefix="#" variableSuffix="%">{"The date is: " : "#message.header.date%"}</Payload>
    

在下一個 Edge for Private Cloud 功能版本中,您可以將大括號用於 JSON 訊息中的變數,沒有任何問題。(APIRT-1160)

路由器無法啟動 Nginx,或是路由器無法啟動

如果 Edge Router 無法啟動 Nginx,或是完全無法啟動 (如 /opt/apigee/var/log/edge-router/logs/system.log 檔案所示),請刪除 /opt/nginx/conf.d 目錄中的所有檔案,然後重新啟動路由器:

> rm -f /opt/nginx/conf.d/*
> /opt/apigee/apigee-service/bin/apigee-service edge-router restart