【发布时间】:2016-04-06 19:56:46
【问题描述】:
我有多个 aws 帐户,我想通过脚本管理大部分工作。我可以使用 boto 配置文件连接到 ELB、EC2,但是我无法找到与 RDS 一起使用的相同机制。
对于 EC2 连接,我的示例函数如下所示:
def Ec2Conn(reg,profile = 'default'):
ec2conn = ''
try:
ec2conn = boto.ec2.EC2Connection(profile_name=profile, region=boto.ec2.get_region(reg.strip()))
except Exception, e:
boto.log.error("Cannot validate provided AWS credentials: %s" % e)
return(ec2conn)
如果 reg(region) 传递给函数,它将读取,否则它将选择在 aws boto 中设置的默认区域。同样,如果没有为配置文件提供选项,它会从 boto 获取默认配置文件。
但是我无法对 RDS 连接执行相同的操作。
我认为可以用于与 boto 配置文件的 RDS 连接但不幸的是不工作的示例代码:
def RDSConn(reg,profile = 'default'):
rdsconn = ''
try:
rdsconn = boto.rds2.connect_to_region(region=boto.ec2.get_region(reg.strip()), profile_name=profile)
except Exception, e:
boto.log.error("Cannot validate provided AWS credentials: %s" % e)
return(elbconn)
哎呀,这太棒了! :
>>> dir(boto.rds2)
['__builtins__', '__doc__', '__file__', '__name__', '__package__', '__path__', 'connect_to_region', 'get_regions', 'regions']
>>>
Boto rds2 中没有任何配置文件的方法。
我在盒子上运行的 Boto 版本如下:
>>> print boto.Version
2.39.0
遇到同样问题的任何人。任何建议请。
【问题讨论】: