排解 Apigee 安裝問題

本頁內容適用於 Apigee,但不適用於 Apigee Hybrid

查看 Apigee Edge 說明文件。

本文列出安裝及設定 Apigee 時的常見錯誤,並說明可能的解決方法。

建立新執行個體

本節說明向 Apigee 傳送要求以建立新執行個體後,可能發生的常見錯誤和解決方法:

  • 401 (UNAUTHENTICATED) 表示您的憑證可能已逾時。請嘗試更新授權權杖,如下列範例所示:
    AUTH="Authorization: Bearer $(gcloud auth print-access-token)"
  • RANGES_EXHAUSTED 表示系統無法提供您最初要求的 IP 位址範圍,因此您必須要求新的範圍。您最初在「步驟 2:設定網路」中建立了範圍要求。
    1. 建立這些環境變數
    2. RANGE_NAME_1=YOUR_RANGE_NAME_1
        RANGE_NAME_2=YOUR_RANGE_NAME_2
        NETWORK_NAME=YOUR_NETWORK_NAME
    3. 確認現有地址範圍的詳細資料,並確保不會與新範圍重疊。
    4.  gcloud compute addresses list --global --project=$PROJECT_ID
       gcloud compute addresses describe $RANGE_NAME_1 --global --project=$PROJECT_ID 
    5. 如要要求新範圍,讓 Apigee 從中選擇私人服務連線的 IP 位址,請執行下列 gcloud 指令:
    6.  gcloud compute addresses create $RANGE_NAME_2
                  --project=$PROJECT_ID --global --prefix-length=16
                  --description="additional peering range for Google services" --network=$NETWORK_NAME
                  --purpose=VPC_PEERING 

      這個指令會建立名為 $RANGE_NAME_2 的新範圍。

    7. 驗證新舊位址範圍的詳細資料
    8.  gcloud compute addresses list --global --project=$PROJECT_ID 
       gcloud compute addresses describe $RANGE_NAME_1 --global --project=$PROJECT_ID 
       gcloud compute addresses describe $RANGE_NAME_2 --global --project=$PROJECT_ID 
    9. 確認現有的 VPC 對等互連詳細資料:
    10.  gcloud services vpc-peerings list \
                  --network=$NETWORK_NAME \
                  --service=servicenetworking.googleapis.com \
                  --project=$PROJECT_ID 
    11. 執行下列指令來更新連線要求:
    12.  gcloud services vpc-peerings update
                  --service=servicenetworking.googleapis.com --network=$NETWORK_NAME
                  --ranges=$RANGE_NAME_1,$RANGE_NAME_2 --project=$PROJECT_ID 
    13. 確認現有的 VPC 對等互連詳細資料:
    14.  gcloud services vpc-peerings list \
                  --network=$NETWORK_NAME \
                  --service=servicenetworking.googleapis.com \
                  --project=$PROJECT_ID 

建立 Apigee 機構

以下範例顯示您首次嘗試建立機構時,Apigee 可能會顯示的常見錯誤:

  Apigee API (staging) has not been used in project 59387731598 before or it is disabled. 
  Enable it by visiting https://console.developers.google.com/apis/api/staging-apigee.sandbox.googleapis.com/overview?project=59387731598 then retry. 
  If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry.

這表示您未啟用一或多個必要 API。請查看「步驟 1:啟用必要的 API」中列出的 API,並確認所有 API 都已啟用,再繼續操作。

此外,您可能會收到下列其中一個 HTTP 錯誤:

  • 401 (UNAUTHENTICATED) 表示您的憑證可能已逾時。請嘗試更新授權權杖,如下列範例所示:
    AUTH="Authorization: Bearer $(gcloud auth print-access-token)"
  • 404 (Not Found) 可以是下列任一結果:
    • 您輸入的端點/要求網址有誤。確認您為 API 呼叫的網域指定了 apigee.googleapis.com
    • 您的專案可能尚未佈建。聯絡 Apigee 銷售團隊
  • 409 (Conflict) 通常表示該機構名稱已存在。機構名稱不得重複。請選擇其他機構名稱,然後重新發出指令。(如果您在指令列上建立機構,請在要求酬載中指定名稱。請注意,您必須建立與專案同名的機構,因此除非有錯字,否則應該不會發生這種情況。

檢查新機構要求狀態時,Apigee 可能會傳回下列錯誤:

  • 403 (Permission Denied) 可能表示機構尚未建立。請稍候片刻,然後再試一次。如果您第一次嘗試建立新機構時,Apigee 傳回 403,可能表示您尚未啟用一或多個 API。請務必按照「步驟 1:啟用必要的 API」一節的說明,啟用所有 API。 。

部署範例

負載平衡器健康狀態不佳

部署範例 Proxy 時,Apigee 可能會傳回 502 (Bad Gateway) HTTP 錯誤。 在這種情況下,請嘗試下列做法:

  1. 檢查負載平衡器的健康狀態。「負載平衡器」分頁會顯示專案的所有負載平衡器及其狀態。黃色三角形表示負載平衡器後端服務狀態不佳。

    在 Google Cloud 控制台中,前往「Network services」(網路服務)>「Load balancing」(負載平衡) 頁面。

    前往「Load balancing」(負載平衡) 頁面

  2. 確認負載平衡器有問題後,請檢查執行階段例項中的 VM,確保 VM 正常運作。
  3. 查看記錄檔,找出可能導致問題的錯誤或其他類型問題。如要進一步瞭解如何啟用及查看記錄,請參閱「查看記錄」。
  4. 請嘗試在 Cloud 控制台中對執行個體群組執行輪動式重新啟動:
    1. 在 Google Cloud 控制台中,前往「Compute Engine」>「Instance groups」(執行個體群組) 頁面。

      前往「Instance groups」(執行個體群組) 頁面

    2. 在執行個體群組清單中,按一下「名稱」欄中沒有回應的執行個體群組。
    3. 按一下「輪動式重新啟動/取代」
    4. 在下一個畫面中,按一下「重新啟動」

      這會重新啟動 Envoy 執行個體。

執行個體 IP 不正確

如果您隨時刪除並重新建立 Apigee 執行個體,Apigee 執行個體 IP 會變更,並可能與代管執行個體群組 (MIG) 範本的端點 IP 不同步。舉例來說,MIG 範本仍會保留已刪除執行個體的舊 IP。MIG 範本是在 Apigee 佈建程序期間建立。在這種情況下,請嘗試按照下列步驟,使用正確的 Apigee IP 更新 MIG 範本:

  1. 在 Google Cloud 控制台中,依序前往「Apigee」>「Admin」>「Instances」頁面。

    前往「Instances」(執行個體) 頁面

  2. 記下執行個體的 IP 位址。您會在後續步驟中需要這個 IP。 例如 10.117.200.2
  3. 前往 Google Cloud 控制台的「Instance Templates」(執行個體範本) 頁面。

    前往「Instance templates」(執行個體範本) 頁面

  4. 開啟執行個體範本。您需要開啟對應至負載平衡器的後端所使用的執行個體範本。
  5. 向下捲動,在「Custom metadata」(自訂中繼資料) 部分下方找到 ENDPOINT IP。
  6. 如果端點 IP 與您在 Apigee 使用者介面中記錄的 IP 不同,您必須變更執行個體範本 IP,使其與 Apigee 執行個體 IP 相符。 請參閱「變更執行個體 IP」。