通過(guò)OpenAPI創(chuàng)建ACK托管集群
調(diào)用CreateCluster創(chuàng)建一個(gè)ACK托管集群。您可以在創(chuàng)建集群的過(guò)程中,同時(shí)創(chuàng)建單個(gè)或多個(gè)節(jié)點(diǎn)池。
調(diào)試
您可以在OpenAPI Explorer中直接運(yùn)行該接口,免去您計(jì)算簽名的困擾。運(yùn)行成功后,OpenAPI Explorer可以自動(dòng)生成SDK代碼示例。
請(qǐng)求語(yǔ)法
POST /clusters HTTP/1.1
Content-Type:application/json
{
"name" : "String",
"region_id" : "String",
"cluster_type" : "String",
"cluster_spec" : "String",
"kubernetes_version" : "String",
"resource_group_id" : "String",
"vpcid" : "String",
"vswitch_ids" : [ "String" ],
"pod_vswitch_ids" : [ "String" ],
"container_cidr" : "String",
"service_cidr" : "String",
"security_group_id" : "String",
"is_enterprise_security_group" : Boolean,
"node_cidr_mask" : "String",
"snat_entry" : Boolean,
"endpoint_public_access" : Boolean,
"load_balancer_spec" : "String",
"timezone" : "String",
"proxy_mode" : "String",
"enable_rrsa" : Boolean,
"tags" : [ {
"key" : "String",
"value" : "String"
} ],
"cluster_domain" : "String",
"custom_san" : "String",
"service_account_issuer" : "String",
"api_audiences" : "String",
"encryption_provider_key" : "String",
"timeout_mins" : Long,
"disable_rollback" : Boolean,
"deletion_protection" : Boolean,
"addons" : [ {
"name" : "String",
"config" : "String",
"disabled" : Boolean
} ],
"controlplane_log_ttl" : "String",
"controlplane_log_project" : "String",
"controlplane_log_components" : [ "String" ],
"nodepools" : [ {
"auto_scaling" : {
"enable" : Boolean,
"max_instances" : Long,
"min_instances" : Long,
"type" : "String",
"is_bond_eip" : Boolean,
"eip_internet_charge_type" : "String",
"eip_bandwidth" : Long
},
"kubernetes_config" : {
"cms_enabled" : Boolean,
"cpu_policy" : "String",
"labels" : [ {
"key" : "String",
"value" : "String"
} ],
"runtime" : "String",
"runtime_version" : "String",
"taints" : [ {
"key" : "String",
"value" : "String",
"effect" : "String"
} ],
"user_data" : "String"
},
"nodepool_info" : {
"name" : "String",
"resource_group_id" : "String"
},
"scaling_group" : {
"auto_renew" : Boolean,
"auto_renew_period" : Long,
"data_disks" : [ {
"category" : "String",
"size" : Long,
"encrypted" : "String",
"auto_snapshot_policy_id" : "String"
} ],
"image_id" : "String",
"instance_charge_type" : "String",
"instance_types" : [ "String" ],
"key_pair" : "String",
"login_password" : "String",
"period" : Long,
"period_unit" : "String",
"platform" : "String",
"rds_instances" : [ "String" ],
"spot_strategy" : "String",
"spot_price_limit" : [ {
"instance_type" : "String",
"price_limit" : "String"
} ],
"scaling_policy" : "String",
"security_group_id" : "String",
"security_group_ids" : [ "String" ],
"system_disk_category" : "String",
"system_disk_size" : Long,
"tags" : [ {
"key" : "String",
"value" : "String"
} ],
"vswitch_ids" : [ "String" ],
"multi_az_policy" : "String",
"on_demand_base_capacity" : Long,
"on_demand_percentage_above_base_capacity" : Long,
"spot_instance_pools" : Long,
"spot_instance_remedy" : Boolean,
"compensate_with_on_demand" : Boolean,
"internet_charge_type" : "String",
"internet_max_bandwidth_out" : Long
},
"tee_config" : {
"tee_enable" : Boolean
},
"management" : {
"enable" : Boolean,
"auto_repair" : Boolean,
"upgrade_config" : {
"auto_upgrade" : Boolean,
"surge" : Long,
"surge_percentage" : Long,
"max_unavailable" : Long
}
},
"count" : Long
} ]
}
請(qǐng)求參數(shù)
表 1. 請(qǐng)求Body參數(shù)
分類 | 名稱 | 類型 | 是否必選 | 示例值 | 描述 |
基本配置 | name | String | 是 | cluster-demo | 集群名稱。 命名規(guī)則:由數(shù)字、漢字、英文字符、短劃線(-)或下劃線(_)組成,長(zhǎng)度范圍1~63個(gè)字符,且不能以下劃線(_)開(kāi)頭。 |
region_id | String | 是 | cn-beijing | 集群所在的地域ID。 | |
cluster_type | String | 是 | ManagedKubernetes | 集群類型為
| |
cluster_spec | String | 否 | ack.pro.small | 托管集群類型,面向托管集群。取值:
默認(rèn)值: 更多信息,請(qǐng)參見(jiàn)ACK集群Pro版概述。 | |
kubernetes_version | String | 否 | 1.28.9-aliyun.1 | 集群版本,與Kubernetes社區(qū)基線版本保持一致。建議選擇最新版本,若不指定,默認(rèn)使用最新版本。 目前您可以在ACK控制臺(tái)創(chuàng)建兩種最新版本的集群。您可以通過(guò)API創(chuàng)建其他Kubernetes版本集群。關(guān)于ACK支持的Kubernetes版本,請(qǐng)參見(jiàn)Kubernetes版本概覽及機(jī)制。 | |
runtime | Array of runtime | 否 | {"name": "containerd", "version": "1.6.20"} | 容器運(yùn)行時(shí)名稱,ACK支持以下三種容器運(yùn)行時(shí)。
默認(rèn)值: | |
resource_group_id | String | 否 | rg-acfm3mkrure**** | 集群所屬資源組ID,實(shí)現(xiàn)不同資源的隔離。 | |
charge_type | String | 否 | PostPaid | API Server所使用的CLB實(shí)例的付費(fèi)類型,默認(rèn)值為PostPaid。取值:
重要
取值:
默認(rèn)值: | |
period | Long | 否 | 1 | 【該字段已廢棄】 購(gòu)買時(shí)長(zhǎng)。包年包月時(shí)長(zhǎng),當(dāng) 取值范圍:{1, 2, 3, 6, 12, 24, 36, 48, 60}。 默認(rèn)值:1。 重要
| |
period_unit | String | 否 | Month | 【該字段已廢棄】 付費(fèi)周期,當(dāng) 取值: 重要
| |
auto_renew | boolean | 否 | true | 【該字段已廢棄】 是否開(kāi)啟自動(dòng)續(xù)費(fèi),當(dāng)
默認(rèn)值: 重要
| |
auto_renew_period | long | 否 | 1 | 【該字段已廢棄】 自動(dòng)續(xù)費(fèi)周期,當(dāng)選擇預(yù)付費(fèi)和自動(dòng)續(xù)費(fèi)時(shí)才生效。當(dāng) 默認(rèn)值:1。 重要
| |
網(wǎng)絡(luò)參數(shù) | vpcid | String | 是 | vpc-2zeik9h3ahvv2zz95**** | 集群使用的VPC實(shí)例ID。 |
vswitch_ids | Array of String | 是 | ["vsw-2ze48rkq464rsdts1****"] | 交換機(jī)ID。List長(zhǎng)度范圍為[1,5]。 | |
pod_vswitch_ids | Array of String | 否 | ["vsw-2ze97jwri7cei0mpw****"] | 網(wǎng)絡(luò)插件選擇Terway時(shí),您需要為Pod分配IP的虛擬交換機(jī)。每個(gè)Pod虛擬交換機(jī)分別對(duì)應(yīng)一個(gè)Worker節(jié)點(diǎn)的虛擬交換機(jī),Pod虛擬交換機(jī)和Worker節(jié)點(diǎn)的虛擬交換機(jī)的可用區(qū)需保持一致。 重要 Pod虛擬交換機(jī)的網(wǎng)段掩碼建議不超過(guò)19,最大不超過(guò)25,否則集群網(wǎng)絡(luò)可分配的Pod IP地址非常有限,會(huì)影響集群的正常使用。 | |
container_cidr | String | 否 | 172.20.0.0/16 | Pod網(wǎng)絡(luò)地址段,不能和VPC網(wǎng)段沖突。當(dāng)選擇系統(tǒng)自動(dòng)創(chuàng)建VPC時(shí),默認(rèn)使用172.16.0.0/16網(wǎng)段。 重要
| |
service_cidr | String | 是 | 172.21.0.0/20 | Service網(wǎng)絡(luò)地址段,不能和VPC網(wǎng)段及Pod網(wǎng)絡(luò)網(wǎng)段沖突。當(dāng)選擇系統(tǒng)自動(dòng)創(chuàng)建VPC時(shí),默認(rèn)使用172.19.0.0/20網(wǎng)段。 | |
security_group_id | String | 否 | sg-bp1bdue0qc1g7k**** | 使用已有安全組創(chuàng)建集群時(shí)需要指定安全組ID,和 | |
is_enterprise_security_group | Boolean | 否 | true | 自動(dòng)創(chuàng)建企業(yè)級(jí)安全組,當(dāng) 說(shuō)明 使用普通安全組時(shí),集群內(nèi)節(jié)點(diǎn)與Terway Pod數(shù)量之和不能超過(guò)2000。所以創(chuàng)建Terway網(wǎng)絡(luò)類型集群時(shí),建議使用企業(yè)安全組。
默認(rèn)值: | |
node_cidr_mask | String | 否 | 25 | 節(jié)點(diǎn)IP數(shù)量,通過(guò)指定網(wǎng)絡(luò)的CIDR來(lái)確定IP的數(shù)量,只對(duì)Flannel網(wǎng)絡(luò)類型集群生效。 默認(rèn)值: | |
snat_entry | Boolean | 否 | true | 是否為網(wǎng)絡(luò)配置SNAT。
如果您需要訪問(wèn)公網(wǎng),建議配置為true。 默認(rèn)值:false。 說(shuō)明 如果創(chuàng)建集群時(shí)未開(kāi)啟,后續(xù)業(yè)務(wù)需要訪問(wèn)公網(wǎng),可為已有集群開(kāi)啟公網(wǎng)訪問(wèn)能力。 | |
endpoint_public_access | Boolean | 否 | true | 是否開(kāi)啟公網(wǎng)訪問(wèn)。通過(guò)EIP暴露API Server,實(shí)現(xiàn)集群公網(wǎng)訪問(wèn)。
默認(rèn)值: | |
load_balancer_spec | String | 否 | slb.s2.small | API Server負(fù)載均衡規(guī)格,取值:
默認(rèn)值: | |
高級(jí)選項(xiàng) | timezone | String | 否 | Asia/Shanghai | 集群使用的時(shí)區(qū)。更多信息,請(qǐng)參見(jiàn)支持時(shí)區(qū)。 |
proxy_mode | String | 否 | ipvs | kube-proxy代理模式:
默認(rèn)值: | |
enable_rrsa | Boolean | 否 | true | 是否啟用RRSA功能。 | |
tags | Array of tag | 否 | [{"key": "env", "value": "prod"}] | 給集群打tag標(biāo)簽。包含以下信息:
| |
cluster_domain | String | 否 | cluster.local | 集群本地域名。 命名規(guī)則:域名由小數(shù)點(diǎn)(.)分隔的一個(gè)或多個(gè)部分構(gòu)成,每個(gè)部分最長(zhǎng)為63個(gè)字符,可以使用小寫(xiě)字母、數(shù)字和短劃線(-),且首尾必須為小寫(xiě)字母或數(shù)字。 | |
custom_san | String | 否 | cs.aliyun.com | 自定義證書(shū)SAN,多個(gè)IP或域名以英文逗號(hào)(,)分隔。 | |
service_account_issuer | String | 否 | kubernetes.default.svc | ServiceAccount是Pod和集群 關(guān)于 | |
api_audiences | String | 否 | kubernetes.default.svc | ServiceAccount是Pod和集群 關(guān)于 | |
encryption_provider_key | String | 否 | 0fe64791-55eb-4fc7-84c5-c6c7cdca**** | KMS密鑰ID,使用該密鑰對(duì)Secret數(shù)據(jù)進(jìn)行加密。更多詳情,請(qǐng)參見(jiàn)什么是密鑰管理服務(wù)。 說(shuō)明 該功能只在專業(yè)托管版集群(ACK Pro版集群)中生效。 | |
timeout_mins | Long | 否 | 60 | 集群創(chuàng)建超時(shí)時(shí)間,單位分鐘。 默認(rèn)值: | |
disable_rollback | Boolean | 否 | true | 集群創(chuàng)建失敗是否回滾。取值:
默認(rèn)值: | |
deletion_protection | Boolean | 否 | true | 集群刪除保護(hù),防止通過(guò)控制臺(tái)或API誤刪除集群。取值:
默認(rèn)值: | |
組件配置 | addons | Array of addon | 否 | [{"name": "terway-eniip","config": ""}, {"name": "logtail-ds","config": "{\"IngressDashboardEnabled\":\"true\",\"sls_project_name\":\"your_sls_project_name\"}"}, {"name":"nginx-ingress-controller","config":"{\"IngressSlbNetworkType\":\"internet\"}"}] | Kubernetes集群安裝的組件列表,創(chuàng)建集群時(shí)通過(guò)
網(wǎng)絡(luò)組件:必選,包含F(xiàn)lannel和Terway兩種網(wǎng)絡(luò)類型,創(chuàng)建集群時(shí)二選一:
存儲(chǔ)組件:可選,僅支持
日志組件:可選。推薦開(kāi)啟,如果不開(kāi)啟日志服務(wù)時(shí),將無(wú)法使用集群審計(jì)功能。
Ingress組件:可選,ACK專有版集群默認(rèn)安裝Ingress組件
事件中心:可選,默認(rèn)開(kāi)啟。 事件中心提供對(duì)Kubernetes事件的存儲(chǔ)、查詢、告警等能力。Kubernetes事件中心關(guān)聯(lián)的Logstore在90天內(nèi)免費(fèi)。關(guān)于免費(fèi)策略的更多信息,請(qǐng)參見(jiàn)創(chuàng)建并使用K8s事件中心。 開(kāi)啟事件中心:[{"name":"ack-node-problem-detector","config":"{\"sls_project_name\":\"your_sls_project_name\"}"}]。 |
controlplane_log_ttl | String | 否 | 30 | 控制平面組件日志收集周期。取值范圍:1~3000,單位:天。 默認(rèn)值: | |
controlplane_log_project | String | 否 | k8s-log-xxx | 控制面組件日志服務(wù)Project,可以使用已有Project用于日志存儲(chǔ),也可以使用系統(tǒng)自動(dòng)創(chuàng)建Project用戶日志存儲(chǔ)。如果選擇自動(dòng)創(chuàng)建日志服務(wù)Project將會(huì)自動(dòng)創(chuàng)建一個(gè)名稱為k8s-log-{ClusterID}的日志服務(wù)Project。 | |
controlplane_log_components | Array of String | 否 | ["apiserver","kcm","scheduler","ccm"] | 組件名稱列表,指定哪些控制平面的組件日志需要被收集。 默認(rèn)采集API Server、KCM、Scheduler、CCM組件的日志。 | |
節(jié)點(diǎn)池配置 | nodepools | Array of nodepool | 否 | 節(jié)點(diǎn)池的參數(shù)配置。 |
響應(yīng)體語(yǔ)法
HTTP/1.1 200
Content-Type:application/json
{
"cluster_id" : "String",
"request_id" : "String",
"task_id" : "String"
}
響應(yīng)參數(shù)
表 2. 響應(yīng)Body參數(shù)
名稱 | 類型 | 示例值 | 描述 |
cluster_id | String | cb95aa626a47740afbf6aa099b650**** | 集群ID。 |
request_id | String | 687C5BAA-D103-4993-884B-C35E4314A1E1 | 請(qǐng)求ID。 |
task_id | String | T-5a54309c80282e39ea00002f | 任務(wù)ID。 |
創(chuàng)建ACK托管集群示例
請(qǐng)求示例
POST /clusters
<公共請(qǐng)求頭>
{
"name":"ACK托管版", // 集群名稱 #required
"region_id":"cn-zhangjiakou", // 地域ID, #required
"cluster_type":"ManagedKubernetes", // 集群類型 #required
"cluster_spec":"ack.pro.small", // 托管版集群類型。ack.pro.small:ACK Pro版集群;ack.standard:ACK基礎(chǔ)版集群。
"kubernetes_version":"1.28.9-aliyun.1", // 集群版本,只維護(hù)最新的3個(gè)版本。
"resource_group_id":"rg-acfm3mkrure****",
"vpcid":"vpc-8vbh3b9a2f38urhls****", // 集群專有網(wǎng)絡(luò)ID。 #required
"vswitch_ids":[ // 集群虛擬交換機(jī)ID。 #required
"vsw-8vbmoffowsztjaawj****"
],
"pod_vswitch_ids":[ // Terway網(wǎng)絡(luò)類型的集群,需要指定Pod所在的虛擬交換,因?yàn)镻od獨(dú)占一個(gè)機(jī)器IP。
"vsw-8vbo5fwyqiw0bbtlq****"
],
"container_cidr":"172.20.0.0/16", // 集群Pod網(wǎng)段#required, 網(wǎng)絡(luò)模式是terway插件的情況下不必須。
"service_cidr":"172.21.0.0/20", // 集群Service網(wǎng)段。 #required
"security_group_id":"sg-8vb7grbyvlb10j0i****", // 使用已有安全組。和is_enterprise_security_group二選一。
"is_enterprise_security_group":true, // 自動(dòng)創(chuàng)建企業(yè)安全組,和security_group_id二選一。
"node_cidr_mask":"25", // 節(jié)點(diǎn)IP數(shù)量,通過(guò)指定節(jié)點(diǎn)網(wǎng)段的掩碼來(lái)決定。
"snat_entry":true, // 為專有網(wǎng)絡(luò)配置SNAT規(guī)則,以開(kāi)啟集群公網(wǎng)訪問(wèn)。
"endpoint_public_access":true, // 開(kāi)啟公網(wǎng)訪問(wèn)。
"load_balancer_spec":slb.s2.small,
"timezone":"Asia/Shanghai", // 時(shí)區(qū)
"proxy_mode":"ipvs", // kube-proxy代理模式,取值:iptables或者ipvs。
"enable_rrsa":true,
"tags":[ // 集群標(biāo)簽。標(biāo)簽將同時(shí)作用于 ACK集群、ECS實(shí)例和Kubernetes節(jié)點(diǎn)。
{
"key":"tag-k",
"value":"tag-v"
}
],
"cluster_domain":"cluster.local", // 集群本地域名,默認(rèn):cluster.local。
"custom_san":"cs.aliyuncs.com", // 集群自定義證書(shū)SAN。
"service_account_issuer":"kubernetes.default.svc", // 服務(wù)賬戶令牌卷投影。serviceaccount token中的簽發(fā)身份,即token payload中的iss字段。
"api_audiences":"kubernetes.default.svc", // 服務(wù)賬戶令牌卷投影。合法的請(qǐng)求token身份,用于apiserver服務(wù)端認(rèn)證請(qǐng)求token是否合法。
"encryption_provider_key":"8734596c-c0d6-4a63-a76e-fe72c7b0****", // Secret落盤(pán)加密的密鑰ID。
"timeout_mins":60, // 集群創(chuàng)建超時(shí)時(shí)間。
"disable_rollback":true, // 失敗是否回滾。
"deletion_protection":true, // 集群刪除保護(hù)。
"addons":[ // 組件配置
{
"name":"flannel" // 當(dāng)集群網(wǎng)絡(luò)類型是Terway時(shí),設(shè)置為{"name":"terway-eniip"}。
},
{
"name":"csi-plugin"
},
{
"name":"csi-provisioner"
},
{
"name":"logtail-ds",
"config":"{\"IngressDashboardEnabled\":\"true\"}"
},
{
"name":"ack-node-problem-detector",
"config":"{\"sls_project_name\":\"\"}"
},
{
"name":"nginx-ingress-controller", // 組件名稱
"config":"{\"IngressSlbNetworkType\":\"internet\"}", // 組件配置
"disabled": true // 是否禁止默認(rèn)安裝。
},
{
"name":"arms-prometheus"
}
],
"controlplane_log_ttl" : "30",
"controlplane_log_project" : "k8s-log-xxx",
"controlplane_log_components" : ["apiserver","kcm","scheduler"],
"nodepools" : [ {
"auto_scaling" : {
"enable" : true,
"max_instances" : 10,
"min_instances" : 1,
"type" : "cpu"
},
"kubernetes_config" : {
"cms_enabled" : true,
"cpu_policy" : "none",
"labels" : [ {
"key" : "env",
"value" : "prod"
} ],
"runtime" : "containerd",
"runtime_version" : "1.6.20",
"taints" : [ {
"key" : "key",
"value" : "value",
"effect" : "NoSchedule"
} ],
"user_data" : "dGhpcyBpcyBhIGV4YW1wbGU=",
"node_name_mode" : "aliyun.com00055test"
},
"nodepool_info" : {
"name" : "cluster-demo",
"resource_group_id" : "rg-acfmyvw3wjmb****",
"type" : "ess"
},
"scaling_group" : {
"auto_renew" : true,
"auto_renew_period" : 1,
"data_disks" : [ {
"category" : "cloud_ssd",
"size" : 40,
"encrypted" : "true",
"auto_snapshot_policy_id" : "sp-2zej1nogjvovnz4z****",
"performance_level" : "PL1"
} ],
"image_id" : "aliyun_2_1903_x64_20G_alibase_20200529.vhd",
"instance_charge_type" : "PrePaid",
"instance_types" : [ "ecs.d1ne.2xlarge" ],
"key_pair" : "np-key-name",
"login_password" : "Hello1234",
"period" : 1,
"period_unit" : "Month",
"platform" : "AliyunLinux",
"rds_instances" : [ "rds-****" ],
"spot_strategy" : "NoSpot",
"spot_price_limit" : [ {
"instance_type" : "ecs.c6.large",
"price_limit" : "0.39"
} ],
"scaling_policy" : "release",
"security_group_id" : "sg-wz9a8g2mt6x5llu0****",
"security_group_ids" : [ "sg-wz9a8g2mt6x5llu0****" ],
"system_disk_category" : "cloud_efficiency",
"system_disk_size" : 120,
"system_disk_performance_level" : "PL1",
"tags" : [ {
"key" : "node-k-1",
"value" : "node-v-1"
} ],
"vswitch_ids" : [ "vsw-wz9mfnhmssud6eicu****" ],
"multi_az_policy" : "COST_OPTIMIZED",
"on_demand_base_capacity" : 0,
"on_demand_percentage_above_base_capacity" : 20,
"spot_instance_pools" : 5,
"spot_instance_remedy" : false,
"compensate_with_on_demand" : true,
"internet_charge_type" : "PayByTraffic",
"internet_max_bandwidth_out" : 5,
"image_type" : "AliyunLinux",
"deploymentset_id" : "ds-bp1d19mmbsv3jf6xxxxx",
"desired_size" : 0
},
"tee_config" : {
"tee_enable" : true
},
"management" : {
"enable" : false,
"auto_repair" : false,
"upgrade_config" : {
"auto_upgrade" : false,
"surge" : 0,
"surge_percentage" : 0,
"max_unavailable" : 1
}
},
"count" : 1,
"interconnect_mode" : "basic",
"interconnect_config" : {
"cen_id" : "cen-ey9k9nfhz0f*******",
"ccn_id" : "ccn-qm5i0i0q9yi*******",
"ccn_region_id" : "cn-shanghai",
"bandwidth" : 10,
"improved_period" : "1"
},
"max_nodes" : 10
} ]
}
返回示例
XML格式
<cluster_id>cb95aa626a47740afbf6aa099b65****</cluster_id>
<task_id>687C5BAA-D103-4993-884B-C35E4314A1E1</task_id>
<request_id>T-5a54309c80282e39ea00002f</request_id>
JSON格式
{
"cluster_id": "cb95aa626a47740afbf6aa099b65****",
"request_id": "687C5BAA-D103-4993-884B-C35E4314A1E1",
"task_id": "T-5a54309c80282e39ea00002f"
}
錯(cuò)誤碼
訪問(wèn)錯(cuò)誤中心查看更多錯(cuò)誤碼。
開(kāi)發(fā)者資源
阿里云為您提供多種語(yǔ)言的SDK,幫助您快速通過(guò)API集成阿里云的產(chǎn)品和服務(wù),推薦您使用SDK調(diào)用API,已免除您手動(dòng)簽名驗(yàn)證,詳情請(qǐng)參見(jiàn)SDK參考文檔鏈接。
快速檢索,可視化調(diào)試API,在線命令行工具,同步動(dòng)態(tài)生成可執(zhí)行的SDK代碼示例。
阿里云資產(chǎn)管理和配置工具,可通過(guò)命令方式同時(shí)管理多個(gè)阿里云產(chǎn)品和服務(wù),簡(jiǎn)單快捷,是您上云好幫手。