是否可以将多个变量分配给ansible中的各个主机?

时间:2015-12-10 18:03:25

标签: python ansible

实施例。

[主要] 192.168.1.1 users =" test1,test2"

此示例不起作用,因为此类型的var需要键值。但无论如何都可以这样做吗?如果是这样,使用的正确语法是什么?

为了更好地了解我想做什么。我有数百个用户需要从数百个不同的服务器中删除。所以我想为每个不同的主机分配一个用户列表。像这样的东西。

host1的 users = {{list}}

或类似的东西?

这可能吗?

1 个答案:

答案 0 :(得分:2)

在python中,您可以使用字典,这些字典本质上是键值对。它们经过优化,可以根据键获取值,但不是相反。因此,在您的情况下,如果您有用户数据列表,并希望有效地将其分配给用户,则可以将密钥设置为用户名,并将值设置为列表。它看起来像这样

users = {"user1" = ["Bill", "42", "Bald"],
         "user2" = ["Sally", "25", "Red"]}

使用类可能更有效,因为您可以引用不同的属性,这些属性本质上是标识该类对象的东西。因此,每个用户可能会有一个属性nameagehair

类是一个很大的主题,因此阅读2.73.5的Python文档或者只是快速进行谷歌搜索

可能会很好