通过阿里云命令行工具 aliyuncli 购买服务器
开始想通过 aliyuncli 的 golang 源码进行编译安装(注:python 版的 aliyuncli 已不再维护),但没成功,详见 通过 golang 源码编译阿里云命令行工具 aliyuncli 出错
后来改为直接下载编译好的 aliyuncli
wget -qO- http://aliyun-cli.oss-cn-hangzhou.aliyuncs.com/aliyun-cli-linux-3.0.0-amd64.tgz | tar xvz -C /usr/local/bin
使用前通过 aliyun configure 命令配置 access key
# aliyun configure
Configuring profile '' in '' authenticate mode...
Access Key Id []: xxx
Access Key Secret []: yyy
Default Region Id []: cn-hangzhou
Default Output Format [json]: json (Only support json))
Default Language [zh|en] en:
Saving profile[] ...Done.
启用自动补全
echo 'complete -C /usr/local/bin/aliyun aliyun' >> .bash_profile
然后使用下面的命令购买按量付费的服务器
aliyun ecs CreateInstance \
--RegionId cn-hangzhou(地域) \
--ZoneId cn-hangzhou-b(可用区) \
--InstanceChargeType PostPaid(按量付费) \
--IoOptimized optimized(IO优化) \
--InstanceType ecs.n4.xlarge(实例规格) \
--ImageId m-xxx(镜像ID) \
--VSwitchId vsw-xxx(VPC交换机ID) \
--InternetChargeType PayByTraffic(公网按使用流量计费) \
--InternetMaxBandwidthOut 1(公网最大带宽) \
--SecurityGroupId sg-xxx(安全组ID) \
--HostName webserver-temp(主机名) \
--InstanceName webserver-temp(实例名称)
执行上面的命令可以完成购买,但目前存在的问题:
1)虽然指定了 InternetChargeType 与 InternetMaxBandwidthOut ,但创建的服务器没有分配公网 IP
2)服务器创建后处于停止状态,不能自动启动
3)缺少知道释放时间的参数
。。。
后来知道了:
1)分配公网IP需要执行 aliyun ecs AllocatePublicIpAddress 命令
2)启动服务器需要执行 aliyun ecs StartInstance 命令
3)设置自动释放时间需要执行 aliyun ecs ModifyInstanceAutoReleaseTime 命令
改进后的 shell 脚本如下
Result=`aliyun ecs CreateInstance \
--RegionId cn-hangzhou(地域) \
--ZoneId cn-hangzhou-b(可用区) \
--InstanceChargeType PostPaid(按量付费) \
--IoOptimized optimized(IO优化) \
--InstanceType ecs.n4.xlarge(实例规格) \
--ImageId m-xxx(镜像ID) \
--VSwitchId vsw-xxx(VPC交换机ID) \
--InternetChargeType PayByTraffic(公网按使用流量计费) \
--InternetMaxBandwidthOut 1(公网最大带宽) \
--SecurityGroupId sg-xxx(安全组ID) \
--HostName webserver-temp(主机名) \
--InstanceName webserver-temp(实例名称)`
InstanceId=`echo "$Result" | grep -Po "(i-[^\"]+)"`
sleep 30s
aliyun ecs AllocatePublicIpAddress --InstanceId $InstanceId
aliyun ecs StartInstance --InstanceId $InstanceId
aliyun ecs ModifyInstanceAutoReleaseTime --InstanceId $InstanceId --AutoReleaseTime $1
实测有效。
通过阿里云命令行工具 aliyuncli 购买服务器的更多相关文章
- 分享阿里云推荐码 IC1L2A,购买服务器可以直接打9折,另附阿里云服务器部署ASP.NET MVC5关键教程
阿里云推荐码为:IC1L2A 阿里云还是不错滴. 以windows server 2008 R2为例,介绍如何从全新的服务器部署MVC5 站点. 新购买的阿里云服务器是没有IIS的,要安装IIS: 控 ...
- [原创]用命令行工具删除TFS2010服务器上的工作区信息
下面的示例显示有关所有计算机上的所有用户已在地址 http://myserver:8080/tfs/DefaultCollection 上的以下团队项目集合中创建的所有工作区的列表. c:\proje ...
- 云存储命令行工具---libs3
ceph 的客户端有很多,有s3cmd.cloudberryExplorer等,今天介绍另一个libs3 一. 安装 Libs3是RGW s3接口的命令行工具,与s3cmd类似,使用C++生成. 1. ...
- 命令行工具解析Crash文件,dSYM文件进行符号化
备份 文/爱掏蜂窝的熊(简书作者)原文链接:http://www.jianshu.com/p/0b6f5148dab8著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”. 序 在日常开发 ...
- 从零开始打造个人专属命令行工具集——yargs完全指南
前言 使用命令行程序对程序员来说很常见,就算是前端工程师或者开发gui的,也需要使用命令行来编译程序或者打包程序 熟练使用命令行工具能极大的提高开发效率,linux自带的命令行工具都非常的有用,但是这 ...
- 微软开放技术发布针对 Mac 和 Linux 的更新版 Azure Node.JS SDK 和命令行工具
发布于 2013-12-04 作者 Eduard Koller 这次为我们使用Linux 的朋友带来了更多关于部署云上虚拟机的消息.今天,微软开放技术有限公司 (MS Open Tech),想与大家分 ...
- OpenStack命令行工具与API
Openstack命令行工具 我们推荐Openstack命令行工具和Openstack的Dashboard两者结合使用.一些用户由于使用过其他云技术背景的,可能会使用EC2兼容的API,相对于我们需要 ...
- GO实现简单(命令行)工具:sftp,文檔压解,RDS备份,RDS备份下载
GO实现简单(命令行)工具:sftp,文檔压解,RDS备份,RDS备份下载 轉載請註明出處:https://www.cnblogs.com/funnyzpc/p/11721978.html 内容提要: ...
- windows安装 阿里云的Fun工具
由于项目使用到了 函数计算,特此了解到了需要安装 阿里云的Fun工具 Fun 是一个用于支持 Serverless 应用部署的工具,能帮助您便捷地管理函数计算.API 网关.日志服务等资源.它通过一个 ...
随机推荐
- 如何修改启动jupyter的文件路径
1.cmd 2.jupyter notebook 工作目录路径 办法二: 1.启动pycharm 2.创建一个ipynb文件 3.运行该文件---在打印结果中找到网址,在网页中打开即可正常显示
- 先从一个 libev 的 demo 入手
最近想研究下 libev 这个网络库,所以先从官方文档一个最简单的 demo 开始,代码如下: //io.c // a single header file is required #include ...
- Android 看源码学 Binder
参考:https://jekton.github.io/2018/04/07/binder-why-RemoteListenerCallback-works/ 参考:https://jekton.gi ...
- Atitit s2018 s4 doc list dvchomepc dvccompc.docx .docx \s2018 s4 doc compc dtS44 \s2018 s4 doc dvcCompc dtS420 \s2018 s4f doc homepc \s2018 s4 doc compc dtS44\(5 封私信 _ 44 条消息)WebSocket 有没有可能取代 AJAX
Atitit s2018 s4 doc list dvchomepc dvccompc.docx .docx \s2018 s4 doc compc dtS44 \s2018 s4 doc dvcCo ...
- cx_Oracle读写clob
cx_Oracle读写clob 读 读到相应字段后,使用read()方法即可:例如读取到clob对象a,想要查看其内容,使用下列代码即可: a.read() 写 参考下列代码: id='123' cl ...
- Android Studio报错Error:Failed to open zip file. Gradle's dependency cache may be corrupt
Android Studio导入项目后,Gradle编译失败,报错如下. Error:Failed to open zip file. Gradle's dependency cache may be ...
- php 慢配置文件
[root@localhost etc]# cat php-fpm.conf[global]pid = /usr/local/php/var/run/php-fpm.piderror_log = /u ...
- [JVM] IDEA集成VisualVM
VisualVM是集成命令行JDK工具和轻量级分析功能的可视化工具. 参考: https://blog.csdn.net/qq_22741461/article/details/80451675 ht ...
- stl综合
区别: List封装了链表,Vector封装了数组, list和vector得最主要的区别在于vector使用连续内存存储的,他支持[]运算符,而list是以链表形式实现的,不支持[]. Vector ...
- Sigmoid函数简介
Sigmoid函数是一个在生物学中常见的S型的函数,也称为S型生长曲线.[1] 中文名 Sigmoid函数 外文名 Sigmoid function 别名 S型生长曲线 Sigmoid函数由下列公式定 ...