asmcli 简介

asmcli 是 Google 提供的工具,可用于安装或升级 Cloud Service Mesh。如果允许,asmcli 将按如下方式配置项目和集群:

  • 授予您 Google Cloud 项目所需的 Identity and Access Management (IAM) 权限。
  • 在 Google Cloud 项目上启用所需的 Google API。
  • 在集群上设置用于标识网格的标签。
  • 创建一个允许数据层面组件(例如边车代理)安全地访问项目的数据和资源的服务账号。
  • 如果尚未注册集群,请注册集群

只需在运行 asmcli 时添加 --enable_all 标志,以允许它配置您的项目和集群。如需详细了解 asmcli 选项和标志,请参阅 asmcli 参考文档

接下来,asmcli 会使用您的项目和集群信息配置 YAML 文件。安装 Cloud Service Mesh 控制平面需要这些配置文件。

如果您刚接触 Cloud Service Mesh 和 Istio,请直接跳至支持的平台。下一部分旨在帮助现有 Cloud Service Mesh 升级到 1.18。

改用 asmcli

asmcli 取代了 istioctl installinstall_asm。您仍然可以在 Cloud Service Mesh 1.11 中使用旧版工具,但这些工具即将被弃用,并且 Cloud Service Mesh 1.12 及更高版本将不再支持这些工具。请更新您的脚本和工具以使用 asmcli

在 Cloud Service Mesh 1.11 及更高版本中,所有集群都必须注册到舰队。如需了解详情,请参阅舰队要求

install_asm 转换

如果您熟悉 install_asm,则 asmcli 与之类似,但存在以下显著差异:

  • 您可以使用 asmcli install 进行新的安装和升级。没有 install_asm--mode 选项。当您运行 asmcli install 时,它会检查集群上是否有现有的控制平面。如果没有控制平面,asmcli 将安装 Cloud Service Mesh。如果集群已有控制平面(Cloud Service Mesh 控制平面或开源 Istio 控制平面):

    • 如果现有控制平面上的修订版本标签与新控制平面的修订版本标签不匹配,asmcli 会执行Canary 版升级

    • 如果控制平面修订版本标签相同,则 asmcli 将执行就地升级。

  • 大多数asmcli选项和标志的行为与install_asm表现一致。

istioctl install 转换

如果您熟悉 istioctl install(如果您通常会使用 -f 命令行参数传递 IstioOperator YAML 文件来配置控制平面,那么您可以使用 --custom_overlay 选项将文件传递给 asmcli。在 Cloud Service Mesh 文档中,我们将这些文件称为叠加层文件。

支持的平台

支持的平台列表中的 Cloud Service Mesh 安装可以使用 asmcli 配置或升级。

不过,并非所有功能都可在 Google Cloud 外部的平台上使用。如需了解详情,请参阅集群内控制层面支持的功能

后续步骤