如何使用Ansible列出AWS RDS实例

时间:2017-11-02 09:44:29

标签: amazon-web-services ansible amazon-rds

我正在尝试使用Ansible在我的亚马逊帐户上列出所有RDS实例。

似乎rds标记可以从实例获取facts,但不能从实例列表中获取。{/ p>

我也发现了这个:Finding ansible RDS instances,但是给出的解决方案对我来说不起作用,因为我无法独立跟踪RDS实例,因为它会否定我的脚本。

对于上下文,我写的脚本是为了列出所有AWS资产,如EC2实例,RDS实例,AMI等。

2 个答案:

答案 0 :(得分:0)

不确定为什么关于这个问题的评论和关联的问题都集中在EC2模块上,因为该模块显然是用于EC2管理,而不是RDS管理。

还有RDS module for Ansible。我相信列出您将使用以下所有RDS实例:

- rds:
    command: facts

一般而言,您的目标是“列出所有AWS资产,例如EC2实例,RDS实例,AMI等”。将会遇到许多没有好的Ansible模块的AWS服务。我个人喜欢使用Ansible来管理在EC2实例上运行的操作系统和应用程序,因为似乎Ansible更专注于操作系统/应用程序管理,以及管理类似Terraform的AWS基础架构。

对于简单列出所有当前资源的特定情况,您可能只想编写一个Python脚本,该脚本使用Boto3查询各种资源的所有不同AWS服务。

答案 1 :(得分:0)

正在回答,因为它在搜索中排名很高。

从ansible 2.6开始,如果您需要剧本中的实例信息,则一个答案是使用rds_instance_facts模块。

如果您使用动态清单脚本(ec2.py),则还应该具有ec2.ini。设置rds = True(在某些版本中是默认设置)。如果您没有库存,ec2.ini已记录在文档中,那么值得获得这份文件。