+86 13541016684Mon. - Fri. 10:00-22:00

aws cli管理aws云资源

aws cli管理aws云资源

aws cli管理aws云资源

aws cli 是AWS 服务的统一管理工具,其基于python开发,是在boto基础上的增强和封装 。其提供了我们一种类似于操作linux命令一样的方式操作aws 的全系统产品资源。本篇就结合aws cli 的安装、示例、及官方手册相关的东西做一个整个和打包。

一、aws cli 的安装

安装方式分为 pip 自动安装 或 源码包安装,pip 安装相对简单:

  1. # sudo pip install awscli

源码包安装方式是将aws cli 包下载并解压后,进入其目录通过install 完成安装,其在github的托管页面为:https://github.com/aws/aws-cli ,下载好源码包后,可以通过下面的方式进行安装:

  1. # cd <path_to_awscli>
  2. # python setup.py install

有新版本需要做升级操作时,也可以通过下面的方式进行升级:

  1. # pip install –upgrade awscli

二、aws cli 主机环境变量

可以在任一台能连接外网的主机上安装完aws cli 包,并且在该上配置好环境变量,就可以操作线上账号下的所有机器资源了。环境变量的配置也很简单 ,主要有三项,如下:

  1. # vim ~/.aws/config
  2. [default]
  3. aws_access_key_id=<default access key>
  4. aws_secret_access_key=<default secret key>
  5. region=apsoutheast1

注:

1、在windows下的配置文件路径为%UserProfile%.awsconfig 。

2、在环境变量中还可以配置其他参数,或多个区域实例,具体可以参看github上的帮助文档。

三、使用

默认情况下aws命令接受的输入和输出格式数据格式都是json格式,不过也可以通过参数,指定输出的为table表格式或text文件格式,具体可以使 用aws help查看帮助手册。默认aws cli 的包文件存放路径为 /usr/local/lib/python2.7/dist-packages/awscli  ,也可以进该目录下的examples 查看帮助。

以ec2下的两个用法为例

简单用法:

  1. # aws ec2 describe-regions
  2. {
  3. “Regions”: [
  4. {
  5. “Endpoint”: “ec2.eu-west-1.amazonaws.com”,
  6. “RegionName”: “eu-west-1″
  7. },
  8. {
  9. “Endpoint”: “ec2.sa-east-1.amazonaws.com”,
  10. “RegionName”: “sa-east-1″
  11. },
  12. {
  13. “Endpoint”: “ec2.us-east-1.amazonaws.com”,
  14. “RegionName”: “us-east-1″
  15. },
  16. {
  17. “Endpoint”: “ec2.ap-northeast-1.amazonaws.com”,
  18. “RegionName”: “ap-northeast-1″
  19. },
  20. {
  21. “Endpoint”: “ec2.us-west-2.amazonaws.com”,
  22. “RegionName”: “us-west-2″
  23. },
  24. {
  25. “Endpoint”: “ec2.us-west-1.amazonaws.com”,
  26. “RegionName”: “us-west-1″
  27. },
  28. {
  29. “Endpoint”: “ec2.ap-southeast-1.amazonaws.com”,
  30. “RegionName”: “ap-southeast-1″
  31. },
  32. {
  33. “Endpoint”: “ec2.ap-southeast-2.amazonaws.com”,
  34. “RegionName”: “ap-southeast-2″
  35. }
  36. ]
  37. }

复杂用法:

  1. # aws ec2 describe-tags –filters “Name=key,Values=Name” –output=table
  2. —————————————————————————–
  3. | DescribeTags |
  4. +—————————————————————————+
  5. || Tags ||
  6. |+——+————–+—————–+———————————+|
  7. || Key | ResourceId | ResourceType | Value ||
  8. |+——+————–+—————–+———————————+|
  9. || Name| ia092e7f6 | instance | AMZSINSpringBoard25513 ||
  10. || Name| i680bbe40 | instance | AMZSINEve220 ||
  11. || Name| i983360cf | instance | VPN ||
  12. || Name| id3360084 | instance | BS ||
  13. || Name| i5e613208 | instance | UA ||
  14. || Name| ia3d6088b | instance | AMZSINFacebookWallE010 ||
  15. || Name| i02391d54 | instance | AMZSINVPCGateway255254 ||
  16. || Name| i908a3cb8 | instance | AMZSINDeploy25540 ||
  17. || Name| i317ad719 | instance | AMZSINLBSMaster254201 ||
  18. || Name| ic454ecec | instance | AMZSINMobileContent121 ||
  19. || Name| iefe329c7 | instance | AMZSINTest255203 ||
  20. || Name| i312aa619 | instance | AMZSINIPS510 ||
  21. || Name| i1725ab41 | instance | BS1 ||
  22. || Name| i6cb5ef3a | instance | BS3 ||
  23. |+——+————–+—————–+———————————+|

其他命令也较多,如 aws iam list-users 查看用户信息。由于命令比较多,这里就不再一一列举。官方的pdf手册我已上传到百度云盘

中文用户指面

英文命令手册