【转】腾讯云 TCCLI 实践分享

原文来自:腾讯云计算产品团队

原文地址:https://cloud.tencent.com/developer/article/1158013

转载原因:CLI被喷无数,竟然大神写了这么完美的文章


腾讯云命令行工具(TCCLI)是管理腾讯云资源的统一工具。使用腾讯云命令行工具,您可以快速调用腾讯云 API 来管理您的腾讯云资源。您还可以基于腾讯云的命令行工具来做自动化和脚本处理,以更多样的方式进行组合和重用。

本文将结合实际用户场景需求,提供相关 TCCLI 的实践例子,希望能帮助大家更快速掌握 TCCLI 的用法。安装、配置 TCCLI 的详细步骤请参考官网命令行工具的介绍,本文就不再重复了。

关于 API 的选用,本文继续以创建 CVM 为例,因为该 API 较为复杂,输入参考涉及到的数据类型也较为齐全。

输入参数

其实 TCCLI 的使用也是挺简单的,对于输入参数的语法是: --参数名称 参数值

String

String

## 用法示例,注意不要加引号将镜像ID引起来,参数和参数值直接有一个空格,别漏了哈
--ImageId img-8toqc6s3

Integer

Integer

## 用法示例,注意不要加引号,参数和参数值直接有一个空格,别漏了哈
--InstanceCount 1

Boolean

由于创建 CVM 的API 中输入参数没有 Boolean 类型,那我这里选择关闭实例的 API 来做示例。

Boolean

## 用法示例,注意不要加引号,而且是小写的true或者false。
--ForceStop true

Array of String

Array of String

## 用法示例,注意不要漏了外面的单引号
--SecurityGroupIds '["sg-is82khqv"]'

Array of Object

Array of Object

DataDisk数据结构

## 用法示例,注意不要漏了外面的单引号
--DataDisks '[{"DiskType":"LOCAL_BASIC","DiskSize":50},{"DiskType":"CLOUD_BASIC","DiskSize":500}]'

Object(实例1)

Object

Placement数据结构

## 用法示例,注意不要漏了外面的单引号,
--Placement '{"Zone":"ap-beijing-3","ProjectId":1048443,"HostIds":["host-cy8swiou"]}'

Object(实例2)

Object

InstanceMarketOptionsRequest数据结构

SpotMarketOptions数据结构

## 用法示例,注意不要漏了外面的单引号
--InstanceMarketOptions '{"MarketType":"spot", "SpotOptions":{"MaxPrice":"0.15","SpotInstanceType":"one-time"}}'

Filters

由于创建 CVM 的API 中输入参数没有 Filters,那我这里选择查看实例列表的 API 来做示例。

补充需要提醒大家的是,注意windows和linux操作系统的区别,在拼接字符串的时候windows下可能需要使用转义符。上面的例子也是如此哈,要注意windows下的转义哈。

linux 示例代码:

tccli cvm DescribeInstances  --Filters '[{"Name":"private-ip-address","Values":["172.16.0.12"]}]'

windows 示例代码:

tccli cvm DescribeInstances  --Filters "[{\"Name\":\"private-ip-address\",\"Values\":[\"172.16.0.12\"]}]"

UserData

UserData

该参数需要以 base64 方式编码,支持的最大数据大小为 16KB。关于获取此参数的详细介绍,请参阅Windows首次启动实例时运行命令Linux首次启动实例时运行命令的介绍。

## 请不要加引号
--UserData IyEvYmluL2Jhc2gKIyMgSW5zdGFsbCB0aGUgcGFja2FnZXMKZWNobyAtZSAiMXFhekBXU1giIHwgcGFzc3dkCg==

完整例子

tccli cvm RunInstances --InstanceChargeType SPOTPAID --Placement '{"Zone":"ap-beijing-3"}' --DataDisks '{"DiskType":"LOCAL_BASIC","DiskSize":50},{"DiskType":"CLOUD_BASIC","DiskSize":500}' --InstanceType S2.MEDIUM4 --ImageId img-8toqc6s3 --SystemDisk '{"DiskType":"CLOUD_BASIC", "DiskSize":50}' --InternetAccessible '{"InternetChargeType":"TRAFFIC_POSTPAID_BY_HOUR","InternetMaxBandwidthOut":10,"PublicIpAssigned":true}' --InstanceCount 1 --InstanceName TCCLI-TEST --SecurityGroupIds '"sg-is82khqv"' --HostName TCCLI-HOST-NAME1 --VirtualPrivateCloud '{"VpcId":"vpc-faob6vpi", "SubnetId":"subnet-mrmr3047"}' --InstanceMarketOptions '{"MarketType":"spot", "SpotOptions":{"MaxPrice":"0.15","SpotInstanceType":"one-time"}}' --UserData IyEvYmluL2Jhc2gKIyMgSW5zdGFsbCB0aGUgcGFja2FnZXMKZWNobyAtZSAiMXFhekBXU1giIHwgcGFzc3dkCg==


广告时间:

腾讯云API代码生成工具:

地址1:http://www.apihelper.cn/

地址2:http://www.apicoder.cn/

腾讯云API官方交流群:711269805

原文链接:https://cloud.tencent.com/developer/article/1158013

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏移动开发的那些事儿

BlockCanary源码解析

如上代码中的loop()方法是Looper中的,我们的目的是监测主线程的卡顿问题,因为UI更新界面都是在主线程中进行的,所以在主线程中做耗时操作可能会造成界面卡...

17120
来自专栏技术小黑屋

记一场 Android 技术答疑

之前在Stuq的Android课程中有幸分享了一些关于优化的问题,后期又处理了一些来自网友的问题,这里简单以文字形式做个整理.

14120
来自专栏向治洪

Android面试之高级篇

结合自己之前去很多大公司的面试经历和自己面别人的一些题,这里做一些总结,Android面试中常见的面试题。 1,Android的Handler运行机制     ...

31090
来自专栏Golang语言社区

morestack与goroutine pool

o语言的goroutine初始栈大小只有2K,如果运行过程中调用链比较长,超过的这个大小的时候,栈会自动地扩张。这个时候会调用到一个函数runtime.more...

60360
来自专栏圣杰的专栏

Asp.net mvc 知多少(二)

本系列主要翻译自《ASP.NET MVC Interview Questions and Answers 》- By Shailendra Chauhan,想...

23180
来自专栏坚毅的PHP

[node.js]开放平台接口调用测试

遇到的问题:Node.js JSON parsing error,syntax error unexpect end of input 测试代码 //测试/st...

45060
来自专栏Android相关

Android7.0中的ResourceNotFoundException

随着Android N的出现,适配7.0的问题也成为了各大产品头疼的问题。而最近在我们的平台上面收到了7.0的Crash。具体的栈如下:

32450
来自专栏Android研究院

彻底理解OkHttp - OkHttp 源码解析及OkHttp的设计思想

在OKhttp 源码解析之前,我们必须先要了解http的相关基础知识,任何的网络请求都离不开http。

66020
来自专栏Android常用基础

AndFix的使用分析

最近发现热修复比较火,很多文章也做了介绍。所以自己也简单的学习下。因为自己在实际项目中并没有用到。所以为了防止忘记,写成博客做成笔记,同时也帮助一些没有接触过的...

28220
来自专栏Phoenix的Android之旅

观察者模式--DataBinding的原理和坑

上一次我们介绍了DataBinding的应用,不过只在应用层面描述了下,没有做深入分析。 关于DataBinding的实现原理,它的根本思想是观察者模式。 这篇...

34220

扫码关注云+社区

领取腾讯云代金券