跳转到主要内容

用于管理AWS基础设施的高级工具

项目描述

=====================================
AWSTOOLS - AWS高级工具
=====================================

AWSTOOLS是一个Python包,提供模块和命令来管理
在`Amazon Web Services <http://aws.amazon.com>`_上的基础设施。

Awstools基于一套约定和选择,使得系统
操作尽可能简单。Awstools主要关注管理多个
隔离的社会/网络/移动架构。


主要约定和选择

- 使用Amazon Web Service中的任何一个都比自定义解决方案更好
- 操作系统:Ubuntu LTS或更高版本
- 配置系统:`Puppet <http://puppetlabs.com>`_


目前awstools支持

- `CloudFormation <http://aws.amazon.com/cloudformation>`_

- **ApplicationSettings**(awstools.applications)
通过声明每个*环境*的*池*来描述您的应用程序

- **cfn**:列出、创建、更新、删除、检查
根据ApplicationSettings和云Formation模板管理您的AWS资源
模板

- `EC2 <http://aws.amazon.com/ec2>`_

- **ec2ssh**
以方便的方式连接到单个或多个实例

- **awstools.fabric.populate_roledefs**
使用标记填充Fabric角色,使用EC2实例
fab -R App-Role cmd_run_on_all_app-role-*_instances



安装
============

Python需求
- argh
- boto
- PyYaml


配置
=============

::

您必须有一个有效的boto凭证提供者才能使用awstools。
请参阅`Boto教程 <http://docs.pythonboto.org/en/latest/boto_config_tut.html>`_。

- **配置文件**将按照以下顺序搜索

1. <由--config指定>
2. ./awstools.cfg
3. ~/.awstools.cfg
4. /etc/awstools.cfg

- **应用程序设置文件**将按照以下顺序搜索

1. 由--settings指定
2. 由awstools配置文件指定


测试
=======

使用nose运行测试

::

pip install -r requirements-test.txt
nosetests


示例
========

命令 ec2ssh
--------------

::

$ ec2ssh MyInstanceByTagName
欢迎使用Ubuntu 12.04 LTS (GNU/Linux 3.2.0-23-virtual x86_64)

ubuntu@tb-java-stage:~$


$ ec2ssh MyInstanceByTagName uptime
19:14:03 up 182 days, 4:49, 0 users, load average: 0.08, 0.06, 0.05


$ ec2ssh App-Role-* uptime
----- 命令: uptime
----- 实例(2): App-Role-development,App-Role-production
确认? (Y/n)
----- i-a0b24444: ec2-12-12-12-12.compute-1.amazonaws.com 10.101.101.101
19:21:32 up 52 days, 3:51, 0 users, load average: 0.00, 0.01, 0.05
----- i-ce786666: ec2-23-23-23-23.compute-1.amazonaws.com 10.201.201.201
19:21:32 up 182 days, 4:56, 0 users, load average: 0.08, 0.04, 0.05
----- 完成


$ ec2ssh i-a0b24444 uptime
19:24:28 up 52 days, 3:54, 0 users, load average: 0.00, 0.01, 0.05


$ ec2ssh 10.101.101.101 uptime
19:25:18 up 52 days, 3:55, 0 users, load average: 0.00, 0.01, 0.05


$ ec2ssh App1-*,App2-*,App3-Role-test uptime


配置
-------------

::

[cfn]
settings = ~/cloudformation/applications.yaml
templatedir = ~/cloudformation


应用程序设置
---------------------

::

应用程序:gmail
简称:gm
密钥名称:google-secretkey
live: True
环境
生产
存储
模板:storage.js
可用区:us-east-1a,us-east-1b,us-east-1c
WebServerCapacity: 6
InstanceType: m1.xlarge
前端web
模板:frontweb.js
可用区:us-east-1a,us-east-1b
WebServerCapacity: 4
InstanceType: m1.medium
预发布
存储
模板:storage.js
可用区:us-east-1a,us-east-1b
WebServerCapacity: 2
InstanceType: m1.small
前端web
模板:frontweb.js
可用区:us-east-1a,us-east-1b
WebServerCapacity: 2
InstanceType: m1.small
测试
前端web
模板:frontweb.js
可用区:us-east-1a,us-east-1b
WebServerCapacity: 2

应用程序 *gmail* 有生产、预发布和测试环境。
环境由两个池定义:*存储* 和 *前端web*。
然而在测试中,你需要模拟存储,不需要 *存储* 池。
所有这些设置都将可用于CloudFormation模板。



贡献
==========

想要贡献、报告错误或请求功能吗?开发正在进行中
在Ludia的BitBucket账户

- **报告错误**: https://bitbucket.org/pior/awstools/issues
- **代码分支**: https://bitbucket.org/pior/awstools
- **下载**: http://pypi.python.org/pypi/awstools


致谢
=======

* `Pior Bastida <pior@pbastida.net>`_ 是创始人兼主要作者。


Awstools版本变更记录
======================


0.3.10 (2015-04-30)
-------------------

- 尚无变更。


0.3.9 (2015-04-30)
------------------

- 尚无变更。


0.3.8 (2015-04-23)
------------------

- 尚无变更。


0.3.7 (2013-12-17)
------------------

- 修复读取多个配置文件时的错误优先级顺序


0.3.6 (2013-10-11)
------------------

- 更新作者电子邮件
- cfnas: 添加子命令metrics以控制ASG指标收集


0.3.5 (2013-10-10)
------------------

- ec2ssh: 添加实例私有主机名匹配
- 将自动缩放子命令移动到新的cfnas命令
- ec2ssh: 添加bash完成助手
- Pylint


0.3.4 (2013-07-04)
------------------

- cfn batch-update: 如果用户希望,则失败后继续


0.3.3 (2013-07-04)
------------------

- 向 `cfn update` 命令添加 --force 选项
- 添加 `cfn batch-update` 命令


0.3.2 (2013-06-11)
------------------

- 完成 hgignore
- ec2ssh: 增强拒绝连接到多个实例时的回退机制
- 修复自动缩放更新工具中显示的错误当前_capacity


0.3.1 (2013-03-13)
------------------

- 修复 *cfn setcapacity* 设置为0而不是期望的值


0.3 (2013-03-11)
----------------

- 开始使用 zest.releaser 进行版本控制


0.2.3 (2013-02-01)
------------------

- 在cfn子命令中显示模板描述
- 创建子命令 "cfn activities"

项目详细信息


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

awstools-0.3.10.tar.gz (20.4 kB 查看哈希值)

上传时间

支持