AWS - 如何使用命令行工具

简介:

AWS的所有服务都有图形界面,但是有的时候我们也可以使用命令行来配置服务。具体怎么配置呢,豆子在windows平台上测试了EC2和Auto Scaling这两个服务的命令行工具。


首先,我需要在IAM里面创建一个新的用户,我可不想用自己的master账户来做实验。


登陆IAM界面,创建一个Administrators 组,给予所有的管理权限,然后创建一个新用户Yuan

wKiom1OP-d_QDOTNAAB_vqnhQho781.png

wKioL1OP-bTBoRckAABqSXhOCcw542.png

wKiom1OP-eOiBDcwAAAokI2-YKo004.png


创建用户的时候会自动生成两个密码,保存好,这个是当使用API命令行用来验证身份用的。如果忘记了,那只能重新生成一份了。

wKioL1OP-bexhqDZAABAcnoJMlI066.png


最后还可以配置用户密码和MFA加强安全性。

wKioL1OP-bmCNmRnAABrDzN1kfo450.png



用户设置好了,接下来我需要下载对应的命令行工具


EC2 命令行工具下载

http://developer.amazonwebservices.com/connect/entry.jspa?categoryID=88&externalID=351


Auto Scaling 命令行工具下载

http://aws.amazon.com/developertools/2535


我把这两个压缩文件对应的BIN和Lib都解压到C:\AWS\AWSCLI文件架中,这样显得更整洁一些,当然我也可以把他们放在不同的地方,只要对应的环境变量路径正确就行。

wKioL1OP_Uni_b_aAABbhFWlEZA447.png


下一步,就需要配置环境变量了。


对于EC2工具而言,链接的时候会自动查询4个环境变量,分别是

JAVA_HOME 

EC2_HOME 

AWS_ACCESS_KEY  

AWS_SECRET_KEY 

http://docs.aws.amazon.com/AWSEC2/latest/CommandLineReference/set-up-ec2-cli-linux.html


后面两个变量就是用户创建生成的时候自动生成的2个密码;他们并不是一定要配置成环境变量,也可以每次执行命令的时候通过-O和-W指定,不过这样很麻烦,预先配置之后直接输入命令就行了。


类似的,Auto Scaling 会查询

JAVA_HOME 

AWS_AUTO_SCALING_HOME

AWS_CREDENTIAL_FILE


http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/UsingTheCommandLineTools.html


第三个文件的作用和EC2的后两个变量作用一样,都是用来验证用户的,可以预先把他们写入一个文件,然后通过环境变量指向这个文件就行了。如果不使用这个文件,也可以给IAM用户生成公钥和私钥进行签名验证,有兴趣的童鞋可以看看这里

http://docs.aws.amazon.com/AWSEC2/latest/CommandLineReference/verify-signature.html



具体环境变量的配置方法可以在系统属性里面手动添加,也可以全都写成批处理的DOS命令。记得Path变量也要指向JAVA和命令行工具的BIN 路径。


手动添加

wKioL1OP_eWAUeWYAAA_ii1YufM281.png


脚本文件添加


@echo off

set EC2_HOME=C:\AWS\AWSCLI

set AWS_AUTO_SCALING_HOME=C:\AWS\AWSCLI

set PATH=%PATH%;%EC2_HOME%\bin

set JAVA_HOME=C:\Program Files (x86)\Java\jre7

set  AWS_CREDENTIAL_FILE=C:\AWS\AWSCLI\CREDENTIAL.TXT

"%JAVA_HOME%\bin\java" -version


最后我们来运行看看结果


wKiom1OP_0zj34LYAAAliY4vPJs939.png

wKioL1OP_yCiHkD4AAAcR2k8Qls319.png



工作正常!现在可以用命令行来创建EC2实例和Auto Scaling了。










本文转自 beanxyz 51CTO博客,原文链接:http://blog.51cto.com/beanxyz/1422452,如需转载请自行联系原作者
目录
相关文章
|
Swift
3 Swiftc命令行工具
Swiftc命令行工具
60 0
|
3月前
|
Kubernetes API 开发工具
【Azure Developer】通过SDK(for python)获取Azure服务生命周期信息
需要通过Python SDK获取Azure服务的一些通知信息,如:K8S版本需要更新到指定的版本,Azure服务的维护通知,服务处于不健康状态时的通知,及相关的操作建议等内容。
51 18
|
4月前
|
Shell Go 开发工具
【Azure Developer】Go语言调用Azure SDK如何登录到中国区Azure环境
【Azure Developer】Go语言调用Azure SDK如何登录到中国区Azure环境
|
4月前
|
NoSQL 开发工具 Redis
【Azure 环境】【Azure Developer】使用Python代码获取Azure 中的资源的Metrics定义及数据
【Azure 环境】【Azure Developer】使用Python代码获取Azure 中的资源的Metrics定义及数据
|
7月前
|
Unix Shell Linux
阿里云命令行工具
阿里云命令行工具
64 3
|
7月前
|
JavaScript 前端开发 数据安全/隐私保护
NodeJS 下构建 命令行工具(CLI) 与 交互式命令界面 的实践
NodeJS 下构建 命令行工具(CLI) 与 交互式命令界面 的实践
480 1
|
JavaScript 前端开发 数据安全/隐私保护
NodeJS 下构建 命令行工具 与 交互式命令界面 的实践
NodeJS 下构建命令行工具 与 交互式命令界面 的实践
556 0
NodeJS 下构建 命令行工具 与 交互式命令界面 的实践
|
Kubernetes Shell Go
Cobra 快速入门 - 专为命令行程序而生
Cobra 专为命令行程序而生,是众多命令行工具的最佳选择。
2442 0
|
JavaScript Java API
是时候拥有一个你自己的命令行工具了
本篇博客主要介绍了如何使用commander, inquirer以及chalk从零开始,创建属于自己的命令行工具。