安装和使用ASM CLI

ASM CLI是命令行工具,您可以通过aliyun servicemesh命令操作ASM对外公布的全部API。

背景信息

ASM CLI是命令行工具,属于阿里云命令行工具集的成员。通过统一的aliyun-cli分发包发布最新版工具。

安装和初始化配置CLI

  1. 安装CLI。

    1. 以当前最新版本3.0.214为例,指定CLI版本。

      VERSION=3.0.214
    2. 执行以下命令,下载CLI。

      wget "https://github.com/aliyun/aliyun-cli/releases/download/v${VERSION}/aliyun-cli-linux-${VERSION}-amd64.tgz"
    3. 执行以下命令,解压CLI。

      tar xzvf aliyun-cli-linux-${VERSION}-amd64.tgz
    4. 执行以下命令,安装CLI。

      sudo mv aliyun /usr/local/bin
    5. 执行以下命令,验证CLI是否安装成功。

      aliyun version 

      预期输出:

      3.0.214

      出现此类似以上信息,表明CLI安装成功。

  2. 初始化配置CLI。

    1. 执行以下命令,开始初始化配置CLI。

      aliyun configure
    2. 输入您的阿里云ACCESS_KEY_ID。

      Access Key Id []: {ACCESS_KEY_ID}
    3. 输入您的阿里云ACCESS_KEY_SECRET。

      Access Key Secret []: {ACCESS_KEY_SECRET}
    4. 输入ECS就近的地域。

      Default Region Id []: cn-hangzhou

      表 1. 服务网格地域列表

      地域名称

      地域标识

      Endpoint

      华东1(杭州)

      cn-hangzhou

      https://servicemesh.aliyuncs.com

      华北2(北京)

      cn-beijing

      华东2(上海)

      cn-shanghai

      美国(硅谷)

      us-west-1

      新加坡

      ap-southeast-1

      华南1(深圳)

      cn-shenzhen

      华北3(张家口)

      cn-zhangjiakou

    5. 根据习惯设置CLI语言。

      Default Output Format [json]: json (Only support json)
      Default Language [zh|en] en: en

使用CLI

ASM的全部API请参考API概览,以下将以获取服务网格详情DescribeServiceMeshDetail为例,展示CLI的使用。其中,ServiceMeshId为服务网格实例的ID,请以实际为准。

aliyun servicemesh DescribeServiceMeshDetail --ServiceMeshId c9e8589cc0afa430c80bc1541b6d6xxxx
{
  "RequestId": "fac9c43c-0f78-45a9-b212-b48c9c4fxxxx",
  "ServiceMesh": {
    "Clusters": [
      "c4d810b9cc91e4170958c674419c2xxxx"
    ],
    "Endpoints": {
      "IntranetApiServerEndpoint": "https://192.168.0.xxx:6443",
      "IntranetPilotEndpoint": "192.168.0.xxx:15012",
      "PublicApiServerEndpoint": "https://39.105.207.xxx:6443",
      "PublicPilotEndpoint": "39.105.121.xxx:15012"
    },
    "ServiceMeshInfo": {
      "CreationTime": "2020-08-03T15:39:45+08:00",
      "ErrorMessage": "",
      "Name": "bj",
      "RegionId": "cn-beijing",
      "ServiceMeshId": "c9e8589cc0afa430c80bc1541b6d6xxxx",
      "State": "running",
      "UpdateTime": "2020-09-08T14:20:33+08:00",
      "Version": "v1.6.8.0-g36ddadd7-aliyun"
    },
    "Spec": {
      "LoadBalancer": {
        "ApiServerLoadbalancerId": "lb-2ze3ng35hedvvsnfkxxxx",
        "ApiServerPublicEip": true,
        "PilotPublicEip": true,
        "PilotPublicLoadbalancerId": "lb-2zenjnpcwgm99ecr0xxxx"
      },
      "MeshConfig": {
        "Audit": {
          "Enabled": true,
          "Project": "mesh-log-c9e8589cc0afa430c80bc1541b6d6xxxx"
        },
        "CustomizedZipkin": false,
        "EnableLocalityLB": false,
        "IncludeIPRanges": "*",
        "OPA": {
          "Enabled": false
        },
        "OutboundTrafficPolicy": "ALLOW_ANY",
        "Pilot": {
          "TraceSampling": 100
        },
        "Telemetry": true,
        "Tracing": true
      },
      "Network": {
        "SecurityGroupId": "sg-2zegx3q19bmgefu0xxxx",
        "VSwitches": [
          "vsw-2zergbfy911jjxkiwxxxx"
        ],
        "VpcId": "vpc-2zebfarsa6f57itxfxxxx"
      }
    }
  }
}