Инвентарный файл для нескольких серверов
Существует множество способов, которыми можно сказать Ansible о серверах, но наиболее стандартным и простым является добавление их в основной инвентарный файл Ansible, который находится в /etc/ansible/hosts. Если файл не был создан в предыдущей главе, создайте файл сейчас; Убедитесь, что учетная запись пользователя имеет разрешения на чтение файла.
Добавьте в файл следующий код:
# Lines beginning with a # are comments, and are only included for
# illustration. These comments are overkill for most inventory files.
# Application servers
[app]
192.168.60.4
192.168.60.5
# Database server
[db]
192.168.60.6
# Group 'multi' with all servers
[multi:children]
app
db
# Variables that will be applied to all servers
[multi:vars]
ansible_ssh_user=vagrant
ansible_ssh_private_key_file=~/.vagrant.d/insecure_private_key
Давайте пройдем по этому примеру пошагово:
- Первый блок помещает оба наших сервера приложений в группу "app".
- Второй блок помещает сервер базы данных в группу "db".
- Третий блок сообщает Ansible, что необходимо определить новую группу "multi", с дочерними группами, и мы добавляем в группы "app" и "db".
- Четвертый блок добавляет переменные в мультигруппу, которая будет применяться ко всем серверам в составе multi и children.
В дальнейшем мы будем углубляться в переменные, определения групп, групповую иерархию и другие разделы файлов. На данный момент мы просто хотим, чтобы Ansible знал о наших серверах.
Сохраните обновленный инвентарный файл, а затем проверьте, закончил ли Vagrant создание трех виртуальных машин. Как только Vagrant закончит, мы можем начать управление серверами с Ansible.