步驟 3:建立環境群組

在這個步驟中,您將建立環境和環境群組。

在 Apigee 中,API Proxy 會部署至環境,為 Proxy 提供隔離的內容。環境會分成環境群組,為部署至群組內環境的所有 Proxy 提供主機名稱。您必須至少擁有一個環境和一個環境群組。詳情請參閱「關於環境和環境群組」。

建立環境

請先建立環境,再建立環境群組。您可以使用 Apigee UI 或 API 建立環境。建議您使用這些步驟的 UI 來熟悉使用方式。

Cloud 控制台中的 Apigee

如要在 Cloud 控制台中透過 Apigee 建立新環境,請按照下列步驟操作:

  1. 在瀏覽器中開啟 Cloud 控制台中的 Apigee UI
  2. 在左側導覽窗格中,依序選取「管理」>「環境」
  3. 在「環境」窗格中,按一下「+ 建立環境」
  4. 在「Create an environment」窗格中,輸入以下內容:
    • 名稱:程式輔助環境名稱。名稱建立後即無法變更。

      名稱必須包含 2 至 32 個字元,可使用小寫英文字母、數字或連字號。名稱開頭須為英文字母,結尾不得為連字號。名稱不得與貴機構的任何其他環境名稱相同。

    • 顯示名稱:在 UI 中顯示的環境名稱。
    • 說明:選填。環境說明。
    • Instance:將「Instance」欄位留空。執行個體不適用於 Apigee Hybrid 安裝作業。
    • 環境群組:暫時將「環境群組」欄位留空。您將在後續程序中建立環境群組。
    • 部署類型:對於大多數 Apigee Hybrid 安裝作業,請選取部署個別 API 代理的選項。您可以選擇部署 API Proxy 設定環境的封存檔。詳情請參閱「支援的部署類型」。
  5. 按一下 [建立]。

完成後,新環境就會顯示在「Environments」窗格中的表格中。

傳統版 Apigee UI

如要存取 UI 並新增環境,請執行下列步驟:

  1. 開啟 Apigee UI。如果您是首次登入,Hybrid 會顯示同意對話方塊。如果系統提示您從多個帳戶中選取一個,請選擇擁有您用於安裝 Apigee hybrid 的 Google Cloud 專案的帳戶。然後按一下「允許」
  2. 瀏覽器會前往 UI 主要到達網頁:

    Apigee UI 中的到達網頁,包含左側導覽和連結的大型圖片。

  3. 請確認您已從機構下拉式清單中選取機構。 如果未選取,請從下拉式選單中選取,如以下範例所示:

    已啟用混合型服務的機構清單

  4. 依序點選「管理」>「環境」>「總覽」

    Apigee UI 選單,顯示「Admin」、「Environments」、「Overview」已展開

    系統會顯示「環境」檢視畫面,但目前沒有任何環境:

  5. 按一下「+ 環境」

    系統會顯示「New environment」對話方塊:

    新的環境對話方塊

  6. 在「New Environment」對話方塊中輸入以下資訊:
    1. 顯示名稱 (必填):在 UI 中使用的環境名稱。 例如「My First Environment」或「test」。與環境名稱不同,顯示名稱可以包含大寫字母和其他特殊字元。
    2. 環境名稱 (必填):環境的程式輔助名稱,也稱為環境 ID

      例如「my-environment」或「test」。

      顯示名稱環境名稱可以不同。

    3. 說明 (選填):您想新增的環境相關額外資訊,用於提醒環境的用途。例如「Created during initial installation」。
  7. 保留其他預設值,然後按一下「建立」

    Apigee 會建立新環境。

    您現在需要建立環境群組,並將新環境加入群組。

Apigee API

如要使用 Create environments API 建立環境,請執行下列步驟:

  1. 在用來管理 Apigee 的裝置上開啟終端機。
  2. 在指令列中,使用下列指令取得 gcloud 驗證憑證:

    Linux / macOS

    export TOKEN=$(gcloud auth print-access-token)

    如要確認權杖是否已填入,請使用 echo,如以下範例所示:

    echo $TOKEN

    權杖應會以編碼字串的形式顯示。

    Windows

    for /f "tokens=*" %a in ('gcloud auth print-access-token') do set TOKEN=%a

    如要確認權杖是否已填入,請使用 echo,如以下範例所示:

    echo %TOKEN%

    權杖應會以編碼字串的形式顯示。

  3. 建立下列環境變數:

    Linux / macOS

    export ENV_NAME="YOUR_ENV_NAME"

    Windows

    set ENV_NAME="YOUR_ENV_NAME"

    其中:

    • ENV_NAME (必填) 環境名稱可包含小寫英文字母、連字號和數字,但開頭必須是小寫英文字母。這個名稱會用做 ID,且在建立環境後即無法變更。
  4. 呼叫下列 Apigee API:

    沒有資料落地

    curl -H "Authorization: Bearer $TOKEN" -X POST -H "content-type:application/json"   -d '{
        "name": "'"$ENV_NAME"'"
      }'   "https://apigee.googleapis.com/v1/organizations/$ORG_NAME/environments"

    資料落地

    curl -H "Authorization: Bearer $TOKEN" -X POST -H "content-type:application/json"   -d '{
        "name": "'"$ENV_NAME"'"
      }'   "https://$CONTROL_PLANE_LOCATION-apigee.googleapis.com/v1/organizations/$ORG_NAME/environments"

    在建立要求成功後,Environments API 應回應類似以下的訊息:

    {
      "name": "organizations/hybrid-example/operations/c2aee040-7e79-4fd4-b0cf-79ca1b7098a8",
      "metadata": {
        "@type": "type.googleapis.com/google.cloud.apigee.v1.OperationMetadata",
        "operationType": "INSERT",
        "targetResourceName": "organizations/hybrid-example/environments/example-env",
        "state": "IN_PROGRESS"
      }
    }

    如回應中的 state 屬性所示,Apigee 已開始建立新環境,因此其狀態為 IN_PROGRESS

  5. 檢查環境是否已成功建立:

    沒有資料落地

    curl -H "Authorization: Bearer $TOKEN" \
              "https://apigee.googleapis.com/v1/organizations/$ORG_NAME/environments"

    資料落地

    curl -H "Authorization: Bearer $TOKEN" \
              "https://$CONTROL_PLANE_LOCATION-apigee.googleapis.com/v1/organizations/$ORG_NAME/environments"

    在建立要求成功後,Environments API 會傳回類似以下的訊息:

    [
      "your-environment-name"
    ]

建立環境群組

接著建立環境群組,並將剛剛建立的環境指派給該群組。

Cloud 控制台中的 Apigee

如要在 Cloud 控制台中的 Apigee 中建立新的環境群組,請按照下列步驟操作:

  1. 在瀏覽器中開啟 Cloud 控制台中的 Apigee UI
  2. 在左側導覽窗格中,依序選取「管理」>「環境」
  3. 在「環境」窗格中,選取「環境群組」
  4. 按一下「+ 建立環境群組」
  5. 輸入下列資訊:
    • 環境群組名稱:環境群組的名稱。名稱開頭和結尾須為英數字元。最多可包含 63 個半形字元,且只能使用英數字元和連字號。名稱不得與貴機構中任何現有的環境群組名稱相同。
    • Hostames:可用於呼叫 Proxy 的主機名稱清單。每個主機名稱必須獨立成行。

      您也可以點選「使用這些網域設定 Google 負載平衡器」。 這會在 Google Cloud 控制台中開啟「負載平衡」頁面,您可以在其中為主機名稱設定負載平衡。

    • 環境:可選的環境清單,用於納入環境群組。
  6. 按一下 [建立]。

傳統版 Apigee UI

如要使用 Apigee UI 建立環境群組,請執行下列步驟:

  1. 開啟 Apigee UI
  2. 瀏覽器會前往 Apigee UI 的主要到達網頁。

  3. 請確認您已在機構下拉式清單中選取機構。 如果尚未選取,請從下拉式清單中選取。
  4. 依序點選「管理」>「環境」>「群組」

    系統會顯示「環境群組總覽」檢視畫面:

    「環境群組」檢視畫面

  5. 按一下「+ 環境群組」

    系統會顯示「Add an Environment Group」對話方塊。

    「Add Environment Group」對話方塊顯示空白的「Name」欄位

  6. 輸入名稱,然後按一下「新增」
  7. 將游標懸停在新建的環境群組上,然後按一下「編輯」圖示

    新增主機名稱,所有部署至這個群組內環境的 Proxy 都會使用這個主機名稱。這個網域必須是您具備管理存取權的網域。主機名稱可以是網域本身,例如 example.com,也可以包含子網域,例如 my-proxies.example.com

    如需註冊網域,請洽詢 Google Domains 等網域註冊商。

    您可以選擇為網域設定負載平衡器。如要進一步瞭解負載平衡器,請參閱 Cloud Load Balancing 總覽

    「Edit Environment Group」視窗顯示未指派任何環境

  8. 按一下「環境」方塊中的「新增」
  9. 系統會顯示「Add environment」對話方塊。

    顯示可用環境的「新增環境」對話方塊

  10. 從清單中選取環境,然後點選「新增」
  11. 按一下 [儲存]

Apigee API

如要使用 Apigee API 建立環境群組,請按照下列步驟操作:

  1. 在指令列中,使用下列指令取得 gcloud 驗證憑證:

    Linux / macOS

    TOKEN=$(gcloud auth print-access-token)

    Windows

    for /f "tokens=*" %a in ('gcloud auth print-access-token') do set TOKEN=%a
  2. 建立下列環境變數:

    Linux / macOS

    export DOMAIN="YOUR_DOMAIN"
    export ENV_GROUP="YOUR_ENVIRONMENT_GROUP"

    Windows

     data-terminal-prefix=">">set ENV_GROUP="YOUR_ENVIRONMENT_GROUP"
     data-terminal-prefix=">">set DOMAIN="YOUR_DOMAIN"

    其中:

    • DOMAIN (必填) 這是部署至此群組內環境的所有 Proxy 會使用的主機名稱。這個網域必須由您管理。 地址可以是網域本身 (例如 example.com),也可以包含子網域 (例如 my-proxies.example.com)。如果您沒有受管理的網域,可以先輸入預留位置。您日後可以變更網域地址。
    • ENV_GROUP (必填) 環境名稱可包含小寫英文字母、連字號和數字,但開頭必須是小寫英文字母。這個名稱會做為 ID 使用,且建立後即無法變更。
  3. 建立環境群組:

    沒有資料落地

    curl -H "Authorization: Bearer $TOKEN" -X POST -H "content-type:application/json" \
       -d '{
         "name": "'"$ENV_GROUP"'",
         "hostnames":["'"$DOMAIN"'"]
       }' \
       "https://apigee.googleapis.com/v1/organizations/$ORG_NAME/envgroups"
        

    資料落地

    curl -H "Authorization: Bearer $TOKEN" -X POST -H "content-type:application/json" \
       -d '{
         "name": "'"$ENV_GROUP"'",
         "hostnames":["'"$DOMAIN"'"]
       }' \
       "https://$CONTROL_PLANE_LOCATION-apigee.googleapis.com/v1/organizations/$ORG_NAME/envgroups"
        
  4. 將環境指派給新群組:

    沒有資料落地

    curl -H "Authorization: Bearer $TOKEN" -X POST -H "content-type:application/json" \
       -d '{
         "environment": "'"$ENV_NAME"'",
       }' \
       "https://apigee.googleapis.com/v1/organizations/$ORG_NAME/envgroups/$ENV_GROUP/attachments"
        

    資料落地

    curl -H "Authorization: Bearer $TOKEN" -X POST -H "content-type:application/json" \
       -d '{
         "environment": "'"$ENV_NAME"'",
       }' \
       "https://$CONTROL_PLANE_LOCATION-apigee.googleapis.com/v1/organizations/$ORG_NAME/envgroups/$ENV_GROUP/attachments"
        
  5. 使用下列 CURL 指令,確認環境群組是否已成功建立:

    沒有資料落地

    curl -H "Authorization: Bearer $TOKEN" \
      "https://apigee.googleapis.com/v1/organizations/$ORG_NAME/envgroups"

    資料落地

    curl -H "Authorization: Bearer $TOKEN" \
      "https://$CONTROL_PLANE_LOCATION-apigee.googleapis.com/v1/organizations/$ORG_NAME/envgroups"

    在建立要求成功後,Environments Group API 會傳回類似以下的訊息:

          {
            "environmentGroups": [
              {
                "name": "your_envgroup_hybrid",
                "hostnames": [
                  "apigee.hybrid.com"
                ],
                "createdAt": "1677826235324",
                "lastModifiedAt": "1677826235324",
                "state": "ACTIVE"
              }
            ]
          }
        
  6. 使用下列 CURL 指令,擷取新建立環境群組的最新附件:

    沒有資料落地

    curl -H "Authorization: Bearer $TOKEN" \
      "https://apigee.googleapis.com/v1/organizations/$ORG_NAME/envgroups/$ENV_GROUP/attachments"

    資料落地

    curl -H "Authorization: Bearer $TOKEN" \
      "https://$CONTROL_PLANE_LOCATION-apigee.googleapis.com/v1/organizations/$ORG_NAME/envgroups/$ENV_GROUP/attachments"

    如果結果顯示不重複的雜湊值,表示環境群組建立和附加作業成功,如以下回應輸出內容的範例所示:

    
            {
              "environmentGroupAttachments": [
                {
                  "name": "c27046d1-b83e-4cba-xxxx-caaa660b2bd6",
                  "environment": "your_envtest_hybrid",
                  "createdAt": "1677826263567",
                  "environmentGroupId": "your_envgroup_hybrid"
                }
              ]
            }
            

下一步

如要繼續安裝,請參閱「第 2 部分:Hybrid 執行階段設定」一文。