我的代码:documentation
我想要实现的目标:我的脚本应该动态地使用具有特定标记的主机,并逐个在每个主机上执行上述任务。目前,我正在从elb_facts模块中获取instance-id。
到目前为止我所取得的成就:我的脚本将从elb中取出第一个实例,执行部署任务,添加回elb。 hosts文件当前使用IP进行硬编码
答案 0 :(得分:0)
使用boto api与AWS建立连接并使用过滤器查找所需的实例。然后,您可以递归搜索列表以获取实例,然后搜索实例ID。以下示例请求过滤实例:
filters = dict()
filters["tag:Profile"] = node["profile"]
filters["tag:Environment"] = environment
filters["availability_zone"] = region + node["distribution"][index]["zone"]
filters["tag:ServiceName"] = node['service_name']
instances_aws = aws_connection.get_all_instances(filters=filters)
希望这有帮助