# Ansible — Inventory (one-screen)

## 1) Зачем
**Inventory** — описание хостов, групп и параметров подключения, к которым Ansible применяет команды/плейбуки.

## 2) INI-формат (просто)
```ini
192.168.0.1
192.168.0.2

[web]
192.168.0.3
192.168.0.4
```

Псевдонимы + параметры:
```ini
app ansible_host=ip_server1
web ansible_host=ip_server3 ansible_user=admin ansible_port=22
```

Полезные параметры:
- `ansible_connection` (ssh/winrm/local/docker)
- `ansible_port`
- `ansible_user`
- `ansible_ssh_pass` / `ansible_password`

## 3) Группы групп (children)
```ini
[mail_internal]
mail1.serv

[mail_external]
mail2.serv

[mail_all:children]
mail_internal
mail_external
```

## 4) YAML-формат (структурно)
```yaml
all:
  children:
    webservers:
      hosts:
        web1.example.com:
          ansible_host: 192.168.1.10
          ansible_user: admin
      vars:
        ansible_port: 22
        ansible_python_interpreter: /usr/bin/python3
```

---
**Source:** [[01 Library/02 DevOps/Ansible/Inventory - Ansible|Inventory - Ansible]]
