如何使用CLI
华为云命令行工具服务(Koo Command Line Interface,KooCLI,原名HCloud CLI)是为发布在API Explorer 上的云服务API提供的命令行管理工具。您可以通过此工具调用API Explorer中云搜索服务(Cloud Search Service)开放的API,管理和使用您的云搜索服务(Cloud Search Service)资源。关于KooCLI的详细信息,请参见什么是KooCLI。
安装KooCLI
在使用KooCLI前,您需要先安装KooCLI。KooCLI支持Windows、Linux和macOS三种操作系统,请根据您机器所使用的操作系统,安装对应版本的工具。
配置KooCLI初始化
使用KooCLI调用API时,需要获取调用者的身份信息用于认证鉴权。通过配置KooCLI初始化,可以把永久AK/SK信息存储在配置文件中,避免在调用API时频繁输入这些固定信息。
如果您不希望通过配置文件传入认证信息,而是直接在命令中传入认证相关参数,可跳过此步骤,具体操作可参见以无配置方式使用KooCLI。
此处以Windows系统为例介绍如何配置KooCLI的初始化,Linux和MacOS系统的操作类似。在配置初始化前,您需要提前获取AK/SK信息,具体操作请参见新增访问密钥。
- 打开命令行窗口。
- 执行以下命令进行初始化配置。
hcloud configure init
- 根据界面提示输入各参数值。
Access Key ID [required]: //必填,输入AK Secret Access Key [required]: //必填,输入SK,输入内容时系统会匿名化处理 Secret Access Key (again): //必填,再次输入SK,输入内容时系统会匿名化处理 Region: //选填,输入Region
完成后,界面提示“初始化配置成功”。
生成和执行CLI命令
KooCLI支持两种命令生成方式:
- 通过API Explorer快速生成并获取调用API的CLI命令。推荐通过API Explorer获取CLI命令,更方便快捷。
- 通过CLI命令查询API的操作命令和相关参数信息,然后手动拼接调用API的CLI命令,具体操作可参见查看与执行云服务操作命令。
此处以云搜索服务(Cloud Search Service)的查询集群列表API为例,介绍如何从API Explorer生成CLI命令,然后执行CLI命令调用API。
- 在API Explorer 页面,选择要生成CLI命令的API。
- 在中间的参数配置界面中,填写调用API所需的参数。
- 在右侧界面选择“CLI示例”页签,可查看生成的CLI命令。
hcloud CSS ListClustersDetails/v1 --cli-region="cn-north-4" --project_id="0f4bca096d80f3212f31c002eab9931d"
- 复制生成的CLI命令,并粘贴到命令行窗口中执行。
{ "totalSize" : 1, "clusters" : [ { "datastore" : { "type" : "elasticsearch", "version" : "7.10.2", "subVersion" : "7.10.2_24.3.0_0827", "isEosCluster" : false, "supportSecuritymode" : false }, "instances" : [ { "status" : "200", "type" : "ess", "id" : "{INSTANCE_ID}", "name" : "css-8bc5-ess-esn-1-1", "specCode" : "ess.spec-4u8g", "azCode" : "{AZ_CODE}", "volume" : { "type" : "ULTRAHIGH", "size" : 40, "resourceIds" : [ "{RESOURCE_ID}" ] }, "ip" : "192.168.0.122", "resourceId" : "{RESOURCE_ID}", "subnetId" : "{SUBNET_ID}" } ], "publicKibanaResp" : { "eipSize" : 10, "publicKibanaIp" : "100.95.152.28:9200", "bandwidthResourceId" : "18bec13f-5cc1-4631-867f-33505d15be12" }, "elbWhiteList" : { "whiteList" : "", "enableWhiteList" : false }, "updated" : "2023-10-09T02:07:13", "name" : "css-8bc5", "desc" : "csscluster", "snapshotPolicy" : { "backupEnable" : false, "bakPeriod" : "", "bakFrequency" : "", "bakKeepDay" : 1 }, "publicIp" : "100.85.222.202", "created" : "2023-10-09T02:07:13", "id" : "{CLUSTER_ID}", "status" : "200", "endpoint" : "192.168.0.122:9200", "vpcId" : "{VPC_ID}", "subnetId" : "{SUBNET_ID}", "currentSubnetIds" : "{SUBNET_ID}", "securityGroupId" : "{SECURITY_GROUP_ID}", "bandwidthResourceId" : "{BANDWIDTH_RESOURCE_ID}", "bandwidthSize" : 3, "httpsEnable" : true, "authorityEnable" : true, "diskEncrypted" : false, "backupAvailable" : false, "actionProgress" : { }, "actions" : [ ], "enterpriseProjectId" : "0", "tags" : [ ], "period" : true } ] }