<弱爆了, 骚年> 你还在用控制台管理你的云服务器么?

 

这年头, 无论是创业者仍是已经成熟的大企业, 不上云彷佛已经没法面对父老乡亲. 不过随着实例的愈来愈多, 平常监控和维护已经成为各家的负担:html

什么? 你只用一台服务器?python

你的目光牢牢一直停留在一台服务器? 那忽略我, 看不见我....linux

当实例愈来愈多, 咱们迫切须要一种更好的方式来管理本身的云资源. 各家的控制台虽然作的愈来愈好, 但始终不便于操控全部的资源. 若是是大的团队, 更加没法忍受直接控制台操做. 特别是你们都在linux环境下作运维管理. 运维更喜欢用脚本的方式来作这些事情, 好比写定时任务, 作监控, 作报表, 鼠标党始终不是真正的运维.shell

目前了解到的云厂商, AWS和阿里云是有本身的命令行工具支持的. AWS毋庸置疑是业界老大. 阿里云目前是国内的老大, 虽然跟AWS有必定的差距.编程

由于AWS云服务器大部分布置在国外, 因此团队并无大规模使用. 目前仍是以阿里云为主.json

最近开始使用阿里云的命令行工具:windows

两个地方能下载到:api

一个是云市场(免费的)服务器

http://market.aliyun.com/products/55530001/cmgj000314.html?spm=5176.900004.4.2.4x2AVv运维

一个是官网:

http://develop.aliyun.com/command?spm=5176.7114037.201.78.r1qf0A

其实阿里云云市场有几个命令行工具, 可是都是支持单一产品, 好比单纯支持ECS, 或者SLS之类的. 而我目前用的这个是aliyuncli, 也就是将来要支持全部产品的.

 

拿ECS来举例, 看的出来, aliyuncli工具和open api是一一对应的关系, 至少是想作成这样的趋势:

 

工具亮点:

1. 支持自动补全, 这一招应该是跟着aws学习的. 不过对于工具的易用性上来讲, 是真的不过, 针对linux这种全命令行交互的方式来讲, 自动补全是最好的功能, 避免较长的命令出现输入错误之类的问题.

2. 相比较单一的产皮, aliyuncli 集成的更多的产品, 特别是对于ECS SLB RDS 这三大件, 支持作的比较好. 不用一个接着一个下载了...

3. 大大简化了使用者开发SDK的耗时, 安装后直接内嵌到系统命令中(linux和windows都是如此), 这样能够直接在脚本中调用命令, 进行处理. 作运维的都知道, open api是最常被使用的东西, 而SDK通常是对open api的封装.可是对于SDK来讲, 不管是python的仍是Java的都须要进行复杂的二次开发才能使用. 而aliyuncli这种命令行工具, 实际上是对SDK的封装, 至关于他帮助你开发好了一套管理工具(固然是基本的调用), 而后运维人员只须要进行简单的二次开发, 好比用shell 写几个简单的命令就可使用了. 平常启停资源或者是查看资源状态都是能够的. 

 

基本用法:

以ECS举例

1.  配置一下key和secret, 执行aliyuncli configure , 而后输入本身的key和secret(在控制台建立)

2. 在线帮助功能:

$ aliyuncli ecs help <-- 查看某个产品支持的操做

 

$ aliyuncli ecs StartInstance --InstanceId XXXX <-- 启动某个实例

$ aliyuncli ecs StopInstance --InstanceId XXXX <-- 中止某个实例

$ aliyuncli ecs DescribeInstanceAttribute --InstanceId XXXX <--查看某个实例的属性

--output table <-- 表格输出, 便于查看

--output json  <-- json 格式输出, 便于编程

--output text  <-- text 格式, 没看出啥好处

 

有兴趣的开发者能够适用一下看看. 后续会推出咱们团队在实际开发中使用的各类运维脚本, 供你们参考. 

相关文章
相关标签/搜索