我正在尝试使用boto的自动缩放模块。我建立了一个API连接,并将所有组都放在默认区域(us-east-1)。
conn = AutoScaleConnection(ACCESS_KEY,SECRET_KEY)
print conn.get_all_groups()
现在我需要在eu-west-1区域创建一个连接,但我总是出错。
conn = AutoScaleConnection(ACCESS_KEY,SECRET_KEY)
autoscale = boto.ec2.autoscale.connect_to_region('eu-west-1')
错误:
boto.exception.NoAuthHandlerFound:没有处理程序准备好进行身份验证。检查了1名处理程序。 ['HmacAuthV4Handler']检查您的凭据
如果我尝试这样做:
autoscale = boto.ec2.autoscale.connect_to_region('eu-west-1',ACCESS_KEY,SECRET_KEY)
错误:
TypeError:connect_to_region()只取1个参数(给定3个)
答案 0 :(得分:6)
您必须将其他参数作为关键字参数传递,例如:
boto.ec2.autoscale.connect_to_region('us-west-2', aws_access_key_id=ACCESS_KEY, aws_secret_access_key=SECRET_KEY)
或者,您可以将您的凭据放在boto配置文件(~/.boto
)或环境变量中,boto会找到它们。