
# 创建联邦网络连接并下载联邦kubeconfig - CreateFederationCert
#### 功能介绍
舰队开通联邦后，调用此接口，创建vpcep终端节点，连接到联邦apiserver，并下载联邦apiserver的kubeconfig
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-ucs/ucs_api_0026.html)。
#### URI
POST /v1/clustergroups/{clustergroupid}/cert
表1路径参数 
| 参数             | 是否必选 | 参数类型   | 描述   |
|:---|:---|:---|:---|
| clustergroupid | 是    | String | 舰队ID |
   
#### 请求参数
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                              |
|:---|:---|:---|:---|
| X-Auth-Token | 否    | String | 身份认证信息，调用接口的认证方式分为Token和AK/SK两种，如果您使用的Token方式，此参数为必填，请填写Token的值 |
| Content-Type | 是    | String | 消息体的类型（格式），仅支持application/json                                  |
   
表3请求Body参数 
| 参数        | 是否必选 | 参数类型    | 描述                   |
|:---|:---|:---|:---|
| projectID | 是    | String  | 项目id                 |
| vpcID     | 是    | String  | VPC id，必须属于上述项目      |
| subnetID  | 是    | String  | 子网id，必须属于上述vpc       |
| duration  | 是    | Integer | kubeconfig证书有效期，单位为天 |
   
#### 响应参数
**状态码：201**
表4响应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                                                                          | 当前上下文                      |
   
 表5NamedCluster 
| 参数      | 参数类型                                                              | 描述   |
|:---|:---|:---|
| name    | String                                                            | 集群名称 |
| cluster | [ClusterCert] object | 集群信息 |
   
 表6ClusterCert 
| 参数                         | 参数类型    | 描述       |
|:---|:---|:---|
| server                     | String  | 服务器地址    |
| certificate-authority-data | String  | 证书授权数据   |
| insecure-skip-tls-verify   | Boolean | 不校验服务端证书 |
   
 表7NamedAuthInfo 
| 参数   | 参数类型                                                        | 描述                         |
|:---|:---|:---|
| name | String                                                      | 用户名                        |
| user | [AuthInfo] object | 存放了指定用户的一些证书信息和ClientKey信息 |
   
 表8AuthInfo 
| 参数                      | 参数类型   | 描述                     |
|:---|:---|:---|
| client-certificate-data | String | 客户端证书                  |
| client-key-data         | String | 包含来自TLS客户端密钥文件的PEM编码数据 |
| token                   | String | 身份验证令牌                 |
   
 表9NamedContext 
| 参数      | 参数类型                                                      | 描述     |
|:---|:---|:---|
| name    | String                                                    | 上下文的名称 |
| context | [Context] object | 上下文信息  |
   
 表10Context 
| 参数      | 参数类型   | 描述           |
|:---|:---|:---|
| cluster | String | 上下文cluster信息 |
| user    | String | 上下文user信息    |
   
#### 请求示例
创建联邦网络连接并下载联邦kubeconfig
```
POST https://ucs.myhuaweicloud.com/v1/clustergroups/{clustergroupid}/cert
{
  "projectID" : "08d44be1ef00d22e2f6fc0061f54a2f1",
  "vpcID" : "11c9fe72-5a90-4295-bcfe-774726fb9066",
  "subnetID" : "0de91d89-1e06-4e24-b371-35d5d3d3779b",
  "duration" : 30
}
```
#### 响应示例
**状态码：201**
kubeconfig文件
```
{
  "kind" : "Config",
  "apiVersion" : "v1",
  "clusters" : [ {
    "name" : "cluster-demo",
    "cluster" : {
      "server" : "https://ip:port",
      "certificate-authority-data" : ""
    }
  } ],
  "users" : [ {
    "name" : "user",
    "user" : {
      "client-certificate-data" : "",
      "client-key-data" : "",
      "token" : ""
    }
  } ],
  "contexts" : [ {
    "name" : "demo",
    "context" : {
      "cluster" : "cluster-demo",
      "user" : "user"
    }
  } ],
  "current-context" : "demo"
}
```
#### 状态码
| 状态码 | 描述           |
|:---|:---|
| 201 | kubeconfig文件 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-ucs/ErrorCode.html)。
