本頁適用於 Apigee 和 Apigee Hybrid。
查看
Apigee Edge 說明文件。
您必須先部署 API Proxy,才能叫用該 Proxy。建立新的 API Proxy 或變更現有 API Proxy 後,即可將其部署至叢集。
建立 API Proxy 的新修訂版本時,如果不變更其基礎路徑,然後將其部署至已部署的環境,系統就會取消部署先前的修訂版本,並在該位置部署新修訂版本。
部署 API Proxy
請按照下列任一方法所述,部署 API Proxy 修訂版本。
Cloud 控制台中的 Apigee UI
如何部署 API Proxy:
- 開啟 Cloud 控制台中的 Apigee UI
- 依序選取「Proxy development」>「API proxies」。
按一下要部署的 API Proxy。UI 會顯示「總覽」頁面:
- 如要部署變更,請先按一下「Deploy」,顯示「Deploy」對話方塊:
- 輸入下列內容:
- 修訂版本:要部署的 Proxy 修訂版本。
- 環境:要部署 Proxy 的環境。
- 服務帳戶 (選用):Proxy 的服務帳戶。
- 按一下 [Deploy] (部署)。
UI 會開始部署所選修訂版本的程序。
代理程式部署完成後,「部署」部分的「狀態」欄會顯示綠色圖示,表示已部署代理程式的修訂版本 1。
傳統 Proxy 編輯器
如要在 Apigee UI 中部署 API Proxy,請按照下列步驟操作:
- 登入 Apigee UI。
- 依序選取「Develop」>「API Proxies」。
使用者介面會顯示 API Proxy 清單及其部署狀態:
- 在「Environment」下拉式清單中,選取要部署 API 代理程式的環境。
按一下要部署的 API 代理程式。
UI 會顯示「API Proxy 總覽」分頁。這個檢視畫面包含「Deployments」、「Proxy Endpoints」和「Target Endpoints」部分:
如果這是您尚未部署過的新 API Proxy (或您未部署的 API Proxy),修訂版本欄會顯示「未部署」。
- 在「修訂版本」欄中,展開下拉式選取器。
如果這是從未部署過的新 API 代理,下拉式選單只會顯示「1」和「Undeploy」:
如果 API 代理程式有多個修訂版本,下拉式清單會顯示可供選擇的所有修訂版本,以及「Undeploy」。
- 從下拉式清單中選取要部署的修訂版本。
UI 會提示您確認部署作業:
- 按一下「Deploy」。
UI 會開始部署所選修訂版本的程序。
將滑鼠游標懸停在「狀態」欄中的「詳細資料」連結上,即可查看部署狀態。如果已部署一或多個修訂版本,您可以監控其取消部署的狀態,如下圖所示。詳情請參閱「零停機時間部署」。
部署完成後,「狀態」詳細資料會顯示修訂版本已完全部署:
請注意,部署並非即時程序。Apigee 的最終一致性部署模型表示,新部署作業會在短時間內推出至叢集,而非立即推出。詳情請參閱「關於部署」一文。
如要瞭解狀態指標的意義,以及如何查看狀態,請參閱「查看部署狀態」。
或者,您也可以在「Develop」分頁中部署目前正在編輯的修訂版本。這樣做時,Apigee 會為您建立新修訂版本。
- 按一下「部署至:」env_name 下拉式清單
使用者介面會顯示環境清單。在「Revision」欄中,UI 會列出目前已部署的修訂版本 (如果沒有,則會列出「‑‑」)。
- 按一下「Deploy revision」,即可部署最近編輯的修訂版本。
使用者介面會提示您確認部署作業。
- 按一下「Deploy」。
UI 會開始部署所選修訂版本的程序。
Apigee API
以下各節提供使用 Apigee API 部署 API Proxy 修訂版本,以及列出機構部署作業的範例。
另請參閱「查看部署狀態」。
在部署前建立部署變更報告
在同一個環境群組中,在多個環境中部署 Proxy 可能會導致未定義的行為。如要判斷是否會發生這種情況,您可以使用
generateDeployChangeReport
方法產生報表,如下所示:
curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/apis/$API/revisions/$REV/deployments:generateDeployChangeReport" \ -X POST \ -H "Authorization: Bearer $TOKEN"
這會傳回 部署變更報告,如果您要部署的 Proxy 中的基本路徑無法接收流量,因為現有部署已使用該基本路徑,系統會發出警告。
使用 API 部署 API Proxy 修訂版本
如要部署 API Proxy 修訂版本,請使用下列 API 呼叫:
curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/apis/$API/revisions/$REV/deployments" \ -X POST \ -H "Authorization: Bearer $TOKEN"
其中 $TOKEN
會設為您的 OAuth 2.0 存取權憑證,如取得 OAuth 2.0 存取權憑證一文所述。如要瞭解本範例中使用的 curl
選項,請參閱「使用 curl」。如要瞭解所使用的環境變數,請參閱「為 Apigee API 要求設定環境變數」。
以下是回應輸出的範例。在這個範例中,helloworld
API proxy 的修訂版本 1
已成功部署至 test
環境:
{ "environment": "test", "apiProxy": "helloworld", "revision": "1", "deployStartTime": "1559149080457" }
詳情請參閱「部署 API proxy 修訂版 API」。
使用 API 列出部署作業
如要列出貴機構的所有 API Proxy 和共用流程部署作業,請輸入下列 API 呼叫:
curl "https://apigee.googleapis.com/v1/organizations/$ORG/deployments" \ -X GET \ -H "Authorization: Bearer $TOKEN"
其中 $TOKEN
會設為您的 OAuth 2.0 存取權憑證,如取得 OAuth 2.0 存取權憑證一文所述。如要瞭解本範例中使用的 curl
選項,請參閱「使用 curl」。如要瞭解所使用的環境變數,請參閱「為 Apigee API 要求設定環境變數」。
以下提供回應範例。在本範例中,有三個已部署的 API 代理程式,包括上一節中部署的 helloworld
。
{ "deployments": [ { "environment": "test", "apiProxy": "helloworld", "revision": "1", "deployStartTime": "1559149080457" }, { "environment": "test", "apiProxy": "weather", "revision": "1", "deployStartTime": "1558620435217" }, { "environment": "test", "apiProxy": "testproxy", "revision": "2", "deployStartTime": "1558635113086" } ] }
gcloud
下列各節提供使用 gcloud apigee
CLI 指令部署 API 代理程式修訂版本,以及列出貴機構的部署作業範例。
另請參閱「查看部署狀態」。
如需進一步瞭解範例中使用的環境變數,以及相關說明,請參閱「開始使用 Apigee 搭配 gcloud」。
使用 gcloud CLI 部署 API Proxy 修訂版本
如要部署 API Proxy 修訂版本,請使用下列 gcloud
指令:
gcloud apigee apis deploy $REV --api=$API --environment=$ENV
以下是回應輸出的範例。在這個範例中,helloworld
API proxy 的修訂版本 1
已成功部署至 test
環境:
Using Apigee organization 'my-org' apiProxy: helloworld deployStartTime: '1598032332802' environment: test revision: '1'
詳情請參閱「部署 API proxy 修訂版本 CLI」一文。
使用 gcloud CLI 列出部署
如要列出貴機構的所有 API Proxy 和共用流程部署作業,請使用下列 gcloud
指令:
gcloud apigee deployments list
以下提供回應範例。在本範例中,有三個已部署的 API 代理,包括上一節中部署的 helloworld
。
Using Apigee organization `my-org` - apiProxy: helloworld deployStartTime: 1598032332802 environment: test revision: 1 - apiProxy: weather deployStartTime: 1558620435217 environment: test revision: 1 - apiProxy: testproxy deployStartTime: 1558635113086 environment: test revision: 2
詳情請參閱「列出部署作業的 CLI」一文。
疑難排解
如果無法部署 API 代理程式,請檢查是否符合下列常見情境。
環境群組的命名限制
如果環境群組名稱不符合命名限制,Proxy 就無法部署。在某些情況下,您可以建立環境群組並新增環境,而無須符合這些限制。但這會導致 Proxy 無法部署。
如要瞭解命名規範和限制,請參閱「建立環境群組」。
使用先前使用的環境名稱建立的環境
如果您建立的環境名稱與先前刪除的環境相同,Proxy 就不會部署。舉例來說,如果您先前建立並刪除 prod-1
環境,接著建立名為 prod-1
的環境,就必須移除該環境。您可以按照下列步驟解決這個問題: