我使用 boto v2.46.1 查询 AWS API 以列出 ELB 实例。
us-east-1
区域有一个经典负载均衡器。
然而,我所有的尝试都只是产生一个空列表。我试过:
在 Python shell 中直接访问:
>>> from boto.ec2 import elb >>> conn = elb.connect_to_region('us-east-1', aws_access_key_id="...", aws_secret_access_key="...") >>> conn.get_all_load_balancers() []
通过
aws
命令行工具(也在底层使用boto
)通过 Ansible 的
ec2_elb_facts
模块(问题首先出现的地方)
我确定,
- 我使用了正确的区域。
- 我可以使用具有管理员权限的 API 用户查看任何内容。
有什么明显的事情是我错过的吗?为什么在这个相当简单的设置中找不到我的负载均衡器?
最佳答案
对我来说效果很好!
我做了以下事情:
- 创建了经典负载均衡器
- 使用 AWS Command-Line Interface (CLI) 进行测试
aws elb describe-load-balancers
命令 - 它列出了我的负载均衡器 - 运行您的代码,它返回
[LoadBalancer:stackoverflow]
检查您是否可以使用 AWS CLI 查看它。如果您创建了应用程序负载均衡器,则它只会使用 elbv2
API 显示。
关于amazon-web-services - 从 AWS API 查询负载均衡器时 boto 显示空列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44499322/