You need to enable JavaScript to run this app.
导航
创建容器服务类型 Upstream
最近更新时间:2024.07.30 11:15:06首次发布时间:2022.09.16 11:25:36

API 网关支持对接火山引擎的容器服务 VKE,将 Upstream 来源中,所有 VKE 集群下的同名 Kubernetes Service 抽象为一个 Upstream,作为网关的路由后端。业务采用 VKE 部署,希望通过网关将业务能力开放出来,需创建 VKE 类型 Upstream。本文为您介绍如何创建 VKE 类型 Upstream。

前提条件

容器服务支持 Flannel 和 VPC-CNI 两种网络类型的集群。

  • 对接 Flannel 集群,需完成以下准备工作:

    1. 该功能当前为白名单功能,如需体验,请 提交工单 申请。
    2. 已创建 API 网关实例,且已配置待对接 Flannel 集群的 Pod CIDR 信息。详细操作可参见 创建实例
    3. 已将待对接集群添加为 Upstream 来源,具体操作可参见 创建 Upstream 来源
  • 对接 VPC-CNI 集群,需完成以下准备工作:

    1. 已创建 API 网关实例,具体操作可参见 创建实例
    2. 已将待对接集群添加为 Upstream 来源,具体操作可参见 创建 Upstream 来源

使用限制

仅支持添加与网关实例处于同一 VPC 下的 VKE 集群 Service。

操作步骤

  1. 登录 API 网关控制台

  2. 在顶部导航栏,选择目标地域。

  3. 在左侧导航栏选择 后端管理 > Upstream 列表

  4. 在 Upstream 列表页面,单击 创建 Upstream

  5. 在创建 Upstream 页面,按要求填写参数信息。

    • 基本信息

      配置项说明
      所属实例Upstream 属于实例级别的资源,请选择当前 Upstream 所属的网关实例。
      Upstream 名称自定义 Upstream 名称。同一实例下的 Upstream 名称唯一。
      备注填写当前 Upstream 的备注信息,可以为空。
    • 后端配置

    配置项说明

    后端服务

    选择 Upstream 对接的后端服务类型。本场景选择 容器服务。API 网关会自动聚合 Upstream 来源中所有集群下的同名 Namespace、Service 及 Port,将其看作一个应用。

    • 命名空间:选择目标 Kubernetes Service 所在的命名空间。
    • 服务名称:选择目标 Kubernetes Service 名称。
    • 端口:选择目标 Kubernetes Service 开放的端口。
    协议选择协议类型。支持 HTTP1.1HTTP2HTTP2/GRPC

    TLS 设置

    配置 TLS。支持 关闭 TLS单向 TLS

    • 关闭 TLS:网关访问后端 Upstream 使用 HTTP 协议。

    • 单向 TLS:网关访问后端 Upstream 使用 HTTPS 协议,需要选择对应证书。

    负载均衡算法

    选择负载均衡算法,默认为轮询。

    • 轮询:将所有请求依次分发到 Kubernetes Service 关联的各个 Pod,适合 Pod 规格相同的场景。

    • 随机:请求随机分配到各个 Pod。

    • 最小连接数:将请求分配到目前处理请求数最少的 Pod。

    • 一致性哈希:基于 header/querystring 信息进行负载均衡,在后端服务数量不变的情况下,确保携带信息相同的用户可固定访问同一 Pod。

    服务熔断选择是否开启熔断。开启后,API 网关可以通过设置熔断器以提高路由的命中率,不消耗额外流量。详情请参见 配置服务熔断策略
  6. 单击 确定,创建完成 VKE 类型 Upstream。

后续操作

  • 创建路由
  • 放行 APIG 安全组
    • 当 API 网关对接 VPC-CNI 集群时,默认已放行,无需执行放行操作。
    • 当 API 网关对接 Flannel 集群时, 需要为待对接 Flannel 集群下的所有节点开放 APIG 安全组(命名为apig-sg-<accountID>),确保网关可以正常访问集群中的资源。容器服务中所有节点均绑定了命名为<集群ID>-common的默认安全组,您只需在默认安全组中添加一条入规则,放行 APIG 安全组。具体操作如下:
      1. 登录容器服务控制台,在左侧导航栏选择 集群,在集群列表页面单击目标 Flannel 集群,进入当前集群管理页面。

      2. 在左侧导航栏选择 节点,在节点列表页面单击任一节点名称,进入当前节点详情页面。

      3. 在基本信息区域,寻找命名为<集群ID>-common的容器服务默认安全组,并单击进入当前安全组。

      4. 切换至 访问规则 页签,在 入向规则 区域单击 添加规则

      5. 添加入方向规则 对话框,按要求配置 APIG 安全组信息。表格中未提到的参数保持默认配置。

        alt

        配置项说明
        协议类型选择 ALL ,允许所有通信协议的访问。
        源地址选择 安全组,选择命名为apig-sg-<accountID>的 APIG 安全组。
      6. 配置完成后,单击 确定