1. 接口描述
接口请求域名: tke.tencentcloudapi.com 。
为目标集群安装一个addon
默认接口请求频率限制:20次/秒。
2. 输入参数
以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。
| 参数名称 | 必选 | 类型 | 描述 | 
|---|---|---|---|
| Action | 是 | String | 公共参数,本接口取值:InstallAddon。 | 
| Version | 是 | String | 公共参数,本接口取值:2018-05-25。 | 
| Region | 是 | String | 公共参数,详见产品支持的 地域列表。 | 
| ClusterId | 是 | String | 集群ID(仅支持标准tke集群),请从容器服务控制台集群列表中获取(https://console.cloud.tencent.com/tke2/cluster)。 示例值:cls-qbc3zefo  | 
| AddonName | 是 | String | addon名称,请从容器服务控制台进入集群详情页后,在组件管理页面中获取。 示例值:cbs  | 
| AddonVersion | 否 | String | addon版本(不传默认安装最新版本) 示例值:1.0.0  | 
| RawValues | 否 | String | addon的参数,是一个json格式的base64转码后的字符串(addon参数由DescribeAddonValues获取) 示例值:eyJ0b2xlcmF0aW9ucyI6eyJlZmZlY3QiOiJOb0V4ZWN1dGUifX0=  | 
| DryRun | 否 | Boolean | 是否仅做安装检查,设置为true时仅做检查,不会安装组件。默认值为 false。 示例值:false  | 
3. 输出参数
| 参数名称 | 类型 | 描述 | 
|---|---|---|
| RequestId | String | 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 | 
4. 示例
示例1 安装cbs组件
用户安装cbs组件时支持通过RawValues配置自定义参数,比如设置容忍调度,可以将 {"tolerations":[{"effect":"NoExecute","key":"gpu-not-ready","operator":"Equal","tolerationSeconds":300,"value":"true"},{"key":"ip-not-ready","operator":"Exists"}]} 进行base64编码后放入到 RawValues 参数中。cbs组件支持的自定义配置参数说明如下:
{
  "tolerations": [
    {
      "effect": "string, 效果,例如:NoExecute",
      "key": "string,标签值,例如:gpu-not-ready",
      "operator": "string,操作符,例如:Equal",
      "tolerationSeconds": "int,容忍时间(秒),例如:300",
      "value": "string,标签值,例如:true"
    },
    {
      "key": "string,标签值,例如:ip-not-ready",
      "operator": "string,操作符,例如:Exists"
    }
  ]
}
输入示例
POST / HTTP/1.1
Host: tke.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: InstallAddon
<公共请求参数>
{
    "ClusterId": "cls-qbc3zefo",
    "AddonName": "cbs",
    "RawValues": "eyJ0b2xlcmF0aW9ucyI6W3siZWZmZWN0IjoiTm9FeGVjdXRlIiwia2V5IjoiZ3B1LW5vdC1yZWFkeSIsIm9wZXJhdG9yIjoiRXF1YWwiLCJ0b2xlcmF0aW9uU2Vjb25kcyI6MzAwLCJ2YWx1ZSI6InRydWUifSx7ImtleSI6ImlwLW5vdC1yZWFkeSIsIm9wZXJhdG9yIjoiRXhpc3RzIn1dfQ=="
}
输出示例
{
    "Response": {
        "RequestId": "b583f05e-d4f4-4963-8082-b651605hg432"
    }
}
示例2 安装eniipamd组件
用户安装eniipamd组件时支持通过RawValues配置自定义参数,比如添加安全组,可以将 {"vpcCni":{"securityGroups":{"securityGroups":["sg-qbc3zefo"]}}} 进行base64编码后放入到 RawValues 参数中。eniipamd组件支持的自定义配置参数说明如下:
{
  "clusterId": "string, 集群ID, 例如:cls-qbc3zefo",
  "vpcCni": {
    "vpcId": "string, VPC的ID, 例如:vpc-qbc3zefo",
    "enableVpcCni": "bool, 是否启用VPC CNI, 例如:true",
    "routeEni": {
      "ipMinWarmTarget": "int, 新增节点共享网卡辅助IP的最小预绑定值, 例如:5",
      "ipMaxWarmTarget": "int, 新增节点共享网卡辅助IP的最大预绑定值, 例如:5"
    },
    "ipam": {
      "subnetIds": "array, 用于IP地址分配的Pod子网ID列表, 例如:[\"subnet-qbc3zefo\"]"
    }, 
    "securityGroups": {
      "enableSecurityGroups": "bool, 是否启用安全组, 例如:true",
      "securityGroups": [
        "string, 安全组ID, 例如:sg-qbc3zefo"
      ]
    }
  },
  "agent": {
    "kubeClient": {
      "masterAddr": "string, kubeClient主节点地址, 例如: 169.254.128.54:60002"
    }
  }
}
输入示例
POST / HTTP/1.1
Host: tke.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: InstallAddon
<公共请求参数>
{
    "ClusterId": "cls-qbc3zefo",
    "AddonName": "eniipamd",
    "RawValues": "eyJ2cGNDbmkiOnsic2VjdXJpdHlHcm91cHMiOnsic2VjdXJpdHlHcm91cHMiOlsic2ctMTIzNDU2NzgiXX19fQ=="
}
输出示例
{
    "Response": {
        "RequestId": "b583f05e-d4f4-4963-8082-b651605jh275"
    }
}
示例3 安装tcr组件
用户可以通过 RawValues 参数制定组件需要的配置参数,比如 imagePullSecretsCrs。 tcr 组件支持的配置参数示例如下:
{
    "global": {
        "imagePullSecretsCrs": [
            {
                "name": "string,imagePullSecretsCr 的名称,例如:tcr-qbc3zefo-public",
                "namespaces": "string,免密功能作用范围,例如:* 表示所有命名空间",
                "serviceAccounts": "string,免密功能作用范围,例如:* 表示所有k8s服务账户",
                "type": "string,必须为 docker",
                "dockerUsername": "string,镜像仓库登录用户名",
                "dockerPassword": "string,镜像仓库登录密码",
                "dockerServer": "string,镜像仓库服务器地址"
            }
        ]
    }
}
输入示例
POST / HTTP/1.1
Host: tke.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: InstallAddon
<公共请求参数>
{
    "ClusterId": "cls-qbc3zefo",
    "AddonName": "tcr",
    "RawValues": "eyJnbG9iYWwiOnsiaW1hZ2VQdWxsU2VjcmV0c0NycyI6W3sibmFtZSI6InRjci1kZzI4NGltcS1wdWJsaWMiLCJuYW1lc3BhY2VzIjoiKiIsInNlcnZpY2VBY2NvdW50cyI6IioiLCJ0eXBlIjoiZG9ja2VyIiwiZG9ja2VyVXNlcm5hbWUiOiIxMDAwMTQzNjQ4MjIiLCJkb2NrZXJQYXNzd29yZCI6IjEyMzQ1Njc4IiwiZG9ja2VyU2VydmVyIjoibmljb2thbmctdGNyLWd6LnRlbmNlbnRjbG91ZGNyLmNvbSJ9XX19"
}
输出示例
{
    "Response": {
        "RequestId": "b583f05e-d4f4-4963-8082-b651605ca765"
    }
}
示例4 安装tke-log-agent组件
用户安装tke-log-agent组件时支持通过RawValues配置自定义参数,比如设置启用kafkalistener,可以将 {"kafkalistener":{"enabled":true}} 进行base64编码后放入到 RawValues 参数中。tke-log-agent 组件支持的自定义配置参数说明如下:
{
    "global": {
        "clsHost": "string, cls服务域名,例如:ap-chengdu.cls.tencentyun.com",
        "cluster": {
            "clustertype": "string,集群管理类型,例如:MANAGED_CLUSTER 或 INDEPENDENT_CLUSTER",
            "kubeminor": "string,集群版本,例如:minor 30.0",
            "kubeversion": "string,集群k8s版本,例如:1.30.0",
            "type": "string,集群类型,例如:tke 或 eks"
        },
        "clusterID": "string,集群ID,例如:cls-qbc3zefo",
        "hostNetwork": "bool,是否使用hostNetwork,例如:false",
        "localRegion": "string,集群所在地域,例如:ap-chengdu",
        "registry": "string,镜像仓库,例如:ccr.ccs.tencentyun.com",
        "sources": "string,鉴权方式,例如:norm"
    },
    "kafkalistener": {
        "enabled": "bool,是否启用kafkalistener,例如:true",
    },
    "logAgent": {
        "enabled": "bool,是否启用logAgent,例如:true",
    },
    "loglistener": {
        "enabled": "bool,是否启用loglistener",
    },
    "provisioner": {
        "replicaCount": "int,cls-provisioner副本数,例如:2",
        "sources": "string,cls-provisioner鉴权方式,例如:norm"
    }
}
输入示例
POST / HTTP/1.1
Host: tke.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: InstallAddon
<公共请求参数>
{
    "ClusterId": "cls-e55paxnt",
    "AddonName": "tke-log-agent",
    "RawValues": "eyJrYWZrYWxpc3RlbmVyIjp7ImVuYWJsZWQiOnRydWV9fQ=="
}
输出示例
{
    "Response": {
        "RequestId": "b583f05e-d4f4-4963-8082-b651605ca427"
    }
}
5. 开发者资源
腾讯云 API 平台
腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。
API Inspector
用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。
SDK
云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。
- Tencent Cloud SDK 3.0 for Python: CNB, GitHub, Gitee
 - Tencent Cloud SDK 3.0 for Java: CNB, GitHub, Gitee
 - Tencent Cloud SDK 3.0 for PHP: CNB, GitHub, Gitee
 - Tencent Cloud SDK 3.0 for Go: CNB, GitHub, Gitee
 - Tencent Cloud SDK 3.0 for Node.js: CNB, GitHub, Gitee
 - Tencent Cloud SDK 3.0 for .NET: CNB, GitHub, Gitee
 - Tencent Cloud SDK 3.0 for C++: CNB, GitHub, Gitee
 - Tencent Cloud SDK 3.0 for Ruby: CNB, GitHub, Gitee
 
命令行工具
6. 错误码
以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。
| 错误码 | 描述 | 
|---|---|
| UnknownParameter | 未知参数错误。 |