foobar666
foobar666

Reputation: 11

Combine multiple host groups in ansible inventory file

I have an ansible inventory file where I want some particular IPs to be a part of multiple instance groups. Is there any way with this can be achieved.

eg

[grp1]:[grp2]
IP1
IP2

usual way is this, however it's a pain when we need to edit IPs which will be common, and need to be removed/edited in 2 places.

[grp1]
IP1
IP2

[grp2]
IP1
IP2

Upvotes: 0

Views: 1603

Answers (2)

Mike A
Mike A

Reputation: 510

Groups can be part of other groups:

    [grp1]
    IP1
    IP2

    [grp2]
    IP3
    IP4

    [grp3]
    grp1 
    grp2

Upvotes: 0

Konstantin Suvorov
Konstantin Suvorov

Reputation: 68319

Use host aliases and don't use IPs.

front ansible_host=<IP1>
back ansible_host=<IP2>
db ansible_host=<IP3>

[grp1]
web
db

[grp2]
back
db

So you can change ansible_host for an alias and it is used everywhere in your inventory.

Upvotes: 1

Related Questions