
# 获取集群kubeconfig - CreateClusterKubeconfig
#### 功能介绍
获取集群kubeconfig
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-ucs/ucs_api_0026.html)。
#### URI
POST /v1/clusters/{clusterid}/kubeconfig
表1路径参数 
| 参数        | 是否必选 | 参数类型   | 描述   |
|:---|:---|:---|:---|
| clusterid | 是    | String | 集群id |
   
#### 请求参数
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                              |
|:---|:---|:---|:---|
| X-Auth-Token | 否    | String | 身份认证信息，调用接口的认证方式分为Token和AK/SK两种，如果您使用的Token方式，此参数为必填，请填写Token的值 |
   
#### 响应参数
**状态码：201**
表3响应Body参数 
| 参数              | 参数类型                                                                               | 描述                         |
|:---|:---|:---|
| kind            | String                                                                             | API类型，固定值"Config"，该值不可修改   |
| apiVersion      | String                                                                             | API版本，固定值"v1"，该值不可修改       |
| clusters        | Array of [NamedCluster] objects   | 集群列表                       |
| users           | Array of [NamedAuthInfo] objects | 存放了指定用户的一些证书信息和ClientKey信息 |
| contexts        | Array of [NamedContext] objects   | 上下文列表                      |
| current-context | String                                                                             | 当前上下文                      |
   
 表4NamedCluster 
| 参数      | 参数类型                                                                 | 描述   |
|:---|:---|:---|
| name    | String                                                               | 集群名称 |
| cluster | [ClusterCert] object | 集群信息 |
   
 表5ClusterCert 
| 参数                         | 参数类型    | 描述       |
|:---|:---|:---|
| server                     | String  | 服务器地址    |
| certificate-authority-data | String  | 证书授权数据   |
| insecure-skip-tls-verify   | Boolean | 不校验服务端证书 |
   
 表6NamedAuthInfo 
| 参数   | 参数类型                                                           | 描述                         |
|:---|:---|:---|
| name | String                                                         | 用户名                        |
| user | [AuthInfo] object | 存放了指定用户的一些证书信息和ClientKey信息 |
   
 表7AuthInfo 
| 参数                      | 参数类型   | 描述                     |
|:---|:---|:---|
| client-certificate-data | String | 客户端证书                  |
| client-key-data         | String | 包含来自TLS客户端密钥文件的PEM编码数据 |
| token                   | String | 身份验证令牌                 |
   
 表8NamedContext 
| 参数      | 参数类型                                                         | 描述     |
|:---|:---|:---|
| name    | String                                                       | 上下文的名称 |
| context | [Context] object | 上下文信息  |
   
 表9Context 
| 参数      | 参数类型   | 描述           |
|:---|:---|:---|
| cluster | String | 上下文cluster信息 |
| user    | String | 上下文user信息    |
   
**状态码：400**
表10响应Body参数 
| 参数 | 参数类型   | 描述 |
|:---|:---|:---|
| -  | String | -  |
   
**状态码：404**
表11响应Body参数 
| 参数 | 参数类型   | 描述 |
|:---|:---|:---|
| -  | String | -  |
   
**状态码：500**
表12响应Body参数 
| 参数 | 参数类型   | 描述 |
|:---|:---|:---|
| -  | String | -  |
   
#### 请求示例
获取指定集群的kubeconfig
```
POST https://ucs.myhuaweicloud.com/v1/clusters/{clusterid}/kubeconfig
```
#### 响应示例
**状态码：201**
获取到指定集群的kubeconfig
```
{
  "kind" : "Config",
  "apiVersion" : "v1",
  "clusters" : [ {
    "name" : "internalCluster",
    "cluster" : {
      "server" : "https://192.168.0.18:5443",
      "certificate-authority-data" : "*****"
    }
  }, {
    "name" : "externalCluster",
    "cluster" : {
      "server" : "https://100.93.8.56:5443",
      "insecure-skip-tls-verify" : true
    }
  }, {
    "name" : "externalClusterTLSVerify",
    "cluster" : {
      "server" : "https://100.93.8.56:5443",
      "certificate-authority-data" : "******"
    }
  } ],
  "users" : [ {
    "name" : "user",
    "user" : {
      "client-certificate-data" : "******",
      "client-key-data" : "******"
    }
  } ],
  "contexts" : [ {
    "name" : "internal",
    "context" : {
      "cluster" : "internalCluster",
      "user" : "user"
    }
  }, {
    "name" : "external",
    "context" : {
      "cluster" : "externalCluster",
      "user" : "user"
    }
  }, {
    "name" : "externalTLSVerify",
    "context" : {
      "cluster" : "externalClusterTLSVerify",
      "user" : "user"
    }
  } ],
  "current-context" : "external"
}
```
#### 状态码
| 状态码 | 描述                 |
|:---|:---|
| 201 | 获取到指定集群的kubeconfig |
| 400 | 客户端请求错误，服务器无法执行请求  |
| 404 | 资源不存在              |
| 500 | 服务器内部错误            |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-ucs/ErrorCode.html)。
