跳到主要内容
版本:2.13.2304

集群列表

新建集群

以下场景推荐使用多个 API7 网关集群:隔离测试环境和生产环境,可分别创建网关测试集群/网关生产集群等;隔离不同业务,可分别根据业务划分创建网关集群,如内网网关集群/公网网关集群。

  • 每个网关集群对应一个独立的控制面(Control Plane)。
  • 每个网关集群会有一到多个数据面(Data Plane)节点。不同网关集群不能共用数据面节点。
  • 每个网关集群需要独立配置用户的角色权限。
  • 如果某个网关集群发生故障,其他集群不受影响。
  1. 登录 API7 Enterprise 控制台。
  2. 在顶部导航菜单,点击 集群管理
  3. 在左侧菜单,点击 集群列表
  4. 点击 新建 按钮。
  5. 填写表单。
  6. 点击 添加 按钮。
警告

此时集群只有控制面节点,还没有数据面节点,即使创建了上游和路由也无法真正生效。还需要参考“复制集群信息”操作添加数据面节点后,网关集群才可实际运行并接收处理业务流量。

复制集群信息

将集群的 etcd 配置信息写入网关数据面节点,将该数据面节点添加到对应的集群。若集群状态异常,表示无法连接 etcd 资源,此时复制的集群信息无法生效。

  1. 登录 API7 Enterprise 控制台。
  2. 在顶部导航菜单,点击 集群管理
  3. 在左侧菜单,点击 集群列表
  4. 在列表中点击集群对应的 更多 按钮,在下拉菜单中,点击 复制集群信息
  5. [参考文档],在一个新的节点上安装数据面组件 API7-Gateway。
  6. 成功安装 API7-Gateway后,修改配置文件:
cat /usr/local/apisix/conf/config.yaml

etcd:
host:
- "http://api7-dashboard-etcd.api7.svc.cluster.local:2379"
prefix: "/api7/452869103972058061"
timeout: 30

  1. 重启 API7-Gateway:
# RPM 安装
apisix restart

# docker 容器部署
docker restart ${containerID}

# k8s 部署
kubectl delete pod ${podID} -n ${namespace}

授权集群角色

允许某个用户对指定集群进行特定的操作。

  • 每次授权只能操作一个集群,不同集群角色需要分别授权。
  • 每个用户在同一个集群下可以拥有任意多个角色,即使这些角色可操作范围有重叠。
  • 只支持对单个用户进行角色授权,暂不支持对用户组/服务账号进行授权。
  1. 登录 API7 Enterprise 控制台。
  2. 在顶部导航菜单,点击 集群管理
  3. 在左侧菜单,点击 集群列表
  4. 在列表中点击集群对应的 更多 按钮,在下拉菜单中,点击「授权」。
  5. 选择要授权的用户。用户若还不存在,参考对应文档新建用户
  6. 选择要授权的角色。如果默认角色不符合需求,先参考对应文档新建角色
  7. 点击 更新 按钮。

配置集群

编辑集群的名称、备注。不支持修改集群的 etcd 资源。

  1. 登录 API7 Enterprise 控制台。
  2. 在顶部导航菜单,点击 集群管理
  3. 在左侧菜单,点击 集群列表
  4. 点击对应集群的 更多 按钮,在下拉菜单中,点击 配置 按钮。
  5. 编辑集群的名称/备注,或更换集群的 etcd 资源。
  6. 点击 更新 按钮。

删除集群

业务下线,网关集群不再使用。集群删除后不可恢复。

警告

删除集群只是销毁了控制面并清理了 etcd 中集群的所有配置,并没有销毁etcd集群及数据面节点本身。但数据面节点虽在,因无法获取到etcd中的配置,网关集群也无法继续运行。

  1. 登录 API7 Enterprise 控制台。
  2. 在顶部导航菜单,点击 集群管理
  3. 在左侧菜单,点击 集群列表
  4. 点击对应集群的 更多 按钮,在下拉菜单中,点击 删除 按钮。
  5. 确认对业务已无影响,输入集群名称二次确认。
  6. 点击 确定 按钮。