前提条件

本页面介绍了安装 Anthos Service Mesh 的前提条件和要求。

Cloud 项目

准备工作:

GKE Enterprise 许可

GKE

Anthos Service Mesh 包含在 GKE Enterprise 中,也可以作为独立服务使用。Google API 用于确定结算方式。如需将 Anthos Service Mesh 作为独立服务使用,请勿在项目中启用 GKE Enterprise API。asmcli 会为您启用所有其他必需的 Google API。如需了解 Anthos Service Mesh 价格,请参阅价格

  • GKE Enterprise 订阅者务必启用 GKE Enterprise API。

启用该 API

  • 如果您不是 GKE Enterprise 订阅者,您仍然可以安装 Anthos Service Mesh,但 Google Cloud 控制台中的某些界面元素和功能仅供 GKE Enterprise 订阅者使用。如需了解订阅者和非订阅者可以使用的内容,请参阅 GKE Enterprise 和 Anthos Service Mesh 界面差异

  • 如果您启用了 GKE Enterprise API,但想将 Anthos Service Mesh 作为独立服务使用,请停用 GKE Enterprise API

本地

GKE Enterprise 客户无需单独为 Anthos Service Mesh 付费,因为此项费用已包含在 GKE Enterprise 价格内。如需了解详情,请参阅 GKE Enterprise 价格指南

一般要求

  • 如需将服务端口纳入服务网格,必须为服务端口命名,并且名称必须包含以下语法的端口协议:name: protocol[-suffix],其中方括号表示必须以短划线开头的可选后缀。如需了解详情,请参阅为服务端口命名

  • 如果您在组织中创建了服务边界,则可能需要将 Mesh CA 服务添加到边界。如需了解详情,请参阅将 Mesh CA 添加到服务边界

  • 如果要更改 istio-proxy sidecar 容器的默认资源限制,新值必须大于默认值,才能避免内存不足 (OOM) 事件

  • 一个 Google Cloud 项目只能关联一个网格。

集群要求

GKE

  • 验证是否已在支持的环境中列出了您的集群版本。

  • 您的 GKE 集群必须满足以下要求:

    • 该 GKE 集群必须是标准集群,因为 Autopilot 集群具有网络钩子限制,这些限制不允许为 istio-sidecar-injector 使用 MutatingWebhookConfiguration

    • 具有至少 4 个 vCPU 的机器类型,例如 e2-standard-4。如果集群的机器类型没有至少 4 个 vCPU,请按照将工作负载迁移到不同的机器类型中所述更改机器类型。

    • 最小节点数取决于您的机器类型。Anthos Service Mesh 至少需要 8 个 vCPU。如果机器类型有 4 个 vCPU,则您的集群必须至少有 2 个节点。如果机器类型有 8 个 vCPU,则集群只需要 1 个节点。如果需要添加节点,请参阅调整集群大小

  • Workload Identity 是必需的。如果您的集群未启用 Workload Identity,您可以自行启用(按照“设置集群”部分的第 3 步操作),或在运行 asmcli install 时包含 --enable_all--enable_gcp_components

    建议使用 Workload Identity 来调用 Google API。如 Workload Identity 限制所述,启用 Workload Identity 会更改从工作负载到 Google API 的调用方式。

    每个 Google Cloud 项目只有一个固定的工作负载身份池,即 PROJECT_ID.svc.id.goog。如果您的集群已向队列注册,则工作负载身份池的 PROJECT_ID队列宿主项目。如果您的集群未向队列注册,则工作负载身份池的 PROJECT_ID 是在其中创建集群的项目。如需了解详情,请参阅队列工作负载身份

  • (可选,但建议执行)在发布版本中注册集群。我们建议您在常规发布版本中注册集群,因为其他发布版本可能基于 Anthos Service Mesh 1.10.6 不支持的 GKE 版本。如需了解详情,请参阅支持的环境。如果您拥有静态 GKE 版本,请按照在发布版本中注册现有集群中的说明操作。

  • 若要在专用集群上安装 Anthos Service Mesh,则必须在防火墙中打开端口 15017,以获取用于自动辅助信息文件注入和配置验证的网络钩子正常运行。如需了解详情,请参阅在专用集群上打开端口

  • 对于 Windows Server 工作负载,Istio 不受支持。如果您的集群同时有 Linux 和 Windows Server 节点池,您仍然可以安装 Anthos Service Mesh 并在 Linux 工作负载上使用它。

本地

  • 验证是否已在支持的环境中列出了您的集群版本。

    VMWare

    如需检查集群版本,您可以使用 gkectl 命令行工具。如果您未安装 gkectl,请参阅 GKE on VMware 下载

    gkectl version
    

    Bare metal

    如需检查集群版本,您可以使用 bmctl 命令行工具。如果您未安装 bmctl,请参阅 GDCV for Bare Metal 快速入门

    bmctl version
    
  • 验证您安装 Anthos Service Mesh 的用户集群至少具有 4 个 vCPU、15 GB 内存和 4 个节点。

  • 需要舰队 Workload Identity。GKE on VMware 和 GKE on Bare Metal 会在集群创建时自动注册到项目舰队。自 GKE Enterprise 1.8 起,这些集群类型都会在注册时自动启用舰队 Workload Identity。现有的已注册集群在升级到 GKE Enterprise 1.8 后也会更新为使用舰队 Workload Identity。如需验证集群的状态,请参阅查看已注册的集群

  • 您的用户集群节点需要互联网才能成功完成 Anthos Service Mesh 安装。无法通过 HTTP 代理访问互联网。

后续步骤