The Ansible inventory consists of definitely hosts.
These are DNS names or IP addresses.
And another thing we can do is use variables to
change the logical name of those.
So we can actually have server names with very unintuitive
long standardized host names in DNS,
but then reference those hosts by a much more user‑friendly name.
So there's aliasing support is what I'm trying to say.
And of course,
you're going to want to group these hosts together based on environment,
as I said before, based on job role or function,
etc.
Groups enable you to target multiple servers with specific playbooks.
Pretty obvious.
We're going to see a lot of variable use.
Specifically, if you've heard of Jinja, the templating language,
it's part of Python ecosystem.
Well,
Jinja is what gives Ansible the ability to use some programming‑type
structures like looping, conditional logic, and, yes, variables that
are just basically key value pairs.
Then we can surface those variables in different contexts in
Ansible. You can set variables at the host level,
the group level, or globally on the entire control node or
frankly across your entire fleet of managed nodes.