第 5 步:创建环境组

在此步骤中,您将创建环境和环境组。

在 Apigee 中,API 代理会部署到环境,这些环境为代理提供隔离上下文。环境被组织为环境组,环境组为部署到组中环境的所有代理提供主机名。您必须具有至少一个环境和一个环境组。如需了解详情,请参阅环境和环境组简介

创建环境

先创建环境,然后再创建环境组。您可以使用 Apigee Hybrid 界面或使用 CLI 创建环境。您可能需要通过界面执行这些步骤以熟悉界面。

Apigee Hybrid 界面

要访问 Hybrid 界面并添加环境,请执行以下步骤:

  1. 打开 Apigee 界面。如果您是首次登录,Hybrid 界面会显示意见征求对话框。如果系统提示您从多个账号中选择一个账号,请选择您在第 2 步:创建 Google Cloud 项目中创建的项目所属的账号。然后,点击允许
  2. 您的浏览器会导航到混合界面的主着陆页:

    Apigee 混合界面中的着陆页(包含左侧导航栏和大型链接图片)。

  3. 确保从组织下拉列表中选择启用混合模式的组织。 如果尚未选择组织,请从下拉列表中选择组织,如以下示例所示:

    启用混合模式的组织列表

  4. 依次点击管理 > 环境 > 概览

    “Apigee 混合界面”菜单(其中显示了展开的“管理”“环境”和“概览”选项)

    此时将显示环境视图,但其中尚无环境:

    空白的“环境”视图(其中尚无环境)

  5. 点击添加环境

    此时会显示新建环境对话框:

    “新建环境”对话框

  6. 新建环境对话框中输入以下信息:
    1. 显示名(必需):在界面中使用的环境的易记名称。例如,“My First Environment”或“test”。与环境名称不同,显示名可以包含大写字母和其他特殊字符。
    2. 环境名称(必需):环境的程序化名称;也称为环境 ID

      例如,“my-environment”或“test”。

      显示名环境名称可以不同。

    3. 说明可选):要添加的关于环境用途的其他信息。例如“在初始安装期间创建”。
  7. 点击创建

    Apigee 会创建新环境,并指示它正在等待预配

    “正在等待预配”状态消息

    稍等片刻之后,它会变为已预配

    “已预配新环境”消息

    但是,操作尚未完成。您还需要将新环境添加到运行时的 overrides.yaml 文件中,但是首先您必须安装运行时,所以我们不要操之过急。

gcloud CLI

要使用创建环境 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. 确保使用以下命令定义了所需的环境变量:
    echo ${PROJECT_ID}
    echo ${ENV_NAME}
    echo ${ENV_DISPLAY_NAME}
    echo ${ORG_NAME}
    echo ${ENV_DESCRIPTION}

    如果需要,请为环境的元素创建或重新定义以下环境变量。您将在命令中使用以下变量来创建环境变量:

    • ENV_NAME(必需)是您的环境的程序化 ID。环境名称可以包含小写字母、短划线和数字,并且必须以小写字母开头。此名称将用作标识符,创建后便无法更改。
      export ENV_NAME=environment_name
    • ENV_DISPLAY_NAME(必需)是您的环境的易记名称。此值不必是唯一的,并且可以包含空格和特殊字符。例如,“My Example Environment”。
      ENV_DISPLAY_NAME=friendly_name
    • ORG_NAME(必需)是您的组织 ID。确保您已按照第 4 步:创建组织定义 ORG_NAME 环境变量:
      echo $ORG_NAME
    • ENV_DESCRIPTION(可选)是您要用作其用途提醒的环境信息。例如,“Example environment for Apigee Hybrid instructions”。
      ENV_DESCRIPTION=description_text
  4. 向 Create environments API 发送经过身份验证的 POST 请求。

    以下示例显示了使用以下命令创建环境的请求结构:

    curl -H "Authorization: Bearer $TOKEN" -X POST -H "content-type:application/json"   -d '{
        "name": "'"$ENV_NAME"'",
        "displayName": "'"$ENV_DISPLAY_NAME"'",
        "description": "'"$ENV_DESCRIPTION"'"
      }'   "https://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。此过程可能需要几分钟时间。

创建环境组

现在,创建一个环境组,并向其分配您刚刚创建的环境。通过环境组,您可以将环境分组在一起,并提供用于路由部署到环境组中环境的代理的主机名。您必须至少创建一个环境组,并且必须至少为该组分配一个主机名。如需环境群组的概览,请参阅环境和环境群组简介

Apigee Hybrid 界面

要使用 Apigee 界面创建环境组,请执行以下步骤:

  1. 打开 Apigee 界面
  2. 您的浏览器会导航到 Hybrid 界面的主着陆页。

  3. 确保从组织下拉列表中选择启用混合模式的组织。 如果未选择,请从下拉列表中选择。
  4. 依次点击管理 > 环境 > 群组

    此时将显示环境组概览视图,其中会显示已创建的所有环境组:

    环境组视图,其中显示所有已创建的群组

  5. 点击 +环境组

    此时会显示添加环境组对话框。

    显示空白名称字段的“添加环境组”对话框

  6. 输入名称,然后点击添加
  7. 将指针悬停在新创建的环境组上,然后点击修改 

    添加一个主机名,部署到此环境组中环境的所有代理都将使用此主机名。这应该是您拥有管理权限的网域。主机名可以是网域本身(例如 example.com),也可以包含子网域(例如 my-proxies.example.com)。

    如果您需要注册网域,请与 Google Domains 之类的网域注册商联系。

  8. 显示未分配任何环境的“修改环境组”窗口

  9. 点击添加 (+)
  10. 此时会显示添加环境对话框。
  11. 列出可用环境的“添加环境”对话框

  12. 从列表中选择一个环境,然后点击添加

gcloud CLI

要使用命令行创建环境组,请执行以下步骤:

  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. 确保您已设置 DOMAIN 环境变量,如以下示例所示:
    echo $DOMAIN

    这是部署到该环境组中环境的所有代理都将使用的主机名。这应该是您拥有管理权限的网域。 主机名可以是网域本身(例如 example.com),也可以包含子网域(例如 my-proxies.example.com)。

    如果尚未设置该环境变量,则使用计划用于 Apigee 混合安装的网域创建该环境变量。 例如:

    export DOMAIN=domain-name.com
  3. 确保您已将 ENV_NAME 环境变量设置为您刚刚在之前的步骤中创建的环境。例如:
    echo $ENV_NAME
  4. 为预期的环境组名称创建环境变量。例如:
    export ENV_GROUP=environment-group-name
  5. 使用以下命令创建环境组:
    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"
        
  6. 使用以下命令将环境分配到新组:
    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"
        

下一步

如需继续安装,请参阅运行时安装:准备工作