sudo apt-add-repository ppa:ansible/ansible
sudo apt-get update
sudo apt-get install ansible
sudo nano /etc/ansible/hosts
Отредактировал файл как:
[Webserver] 192.168.27.1
[servers] host1 ansible_ssh_host: 192.168.27.1 Затем
sudo mkdir /etc/ansible/group_vars
sudo nano /etc/ansible/group_vars/servers
Файл Yaml создается как:
---
ansible_ssh_user: root
Затем:
ansible -m ping all
и ошибка, с которой я столкнулся, это:
ERROR! Attempted to read "/etc/ansible/hosts" as YAML: Syntax Error while loading YAML.
The error appears to have been in '/etc/ansible/hosts': line 46, column 1, but may
be elsewhere in the file depending on the exact syntax problem.
The offending line appears to be:
[Webserver]
192.168.27.1
^ here
Attempted to read "/etc/ansible/hosts" as ini file: /etc/ansible/hosts:50: Expected key=value host variable assignment, got: 192.168.27.1
Пожалуйста, помогите я разрешаю эту проблему.
Выглядит точно так же, как это попытается войти в файл и искать неуместное пробелы в этой строке. Основная причина была для ведущего пространства в файле /usr/local/etc/ansible/hosts, и решение искало такие пробелы и удаляло их.
Это вызвано комментариями с ведущими пробелами в файле инвентаря /usr/local/etc/ansible/hosts. Это новое поведение для этой версии Ansible! Поэтому, если вы привыкли писать что-то подобное в этом файле hosts:[web]
# legacy servers
webserver-[1:2].company.com
Измените его на: [web]
# legacy servers
webserver-[1:2].company.com
или [web]
webserver-[1:2].company.com # legacy servers
Выглядит точно так же, как это попытается войти в файл и искать неуместное пробелы в этой строке. Основная причина была для ведущего пространства в файле /usr/local/etc/ansible/hosts, и решение искало такие пробелы и удаляло их.
Это вызвано комментариями с ведущими пробелами в файле инвентаря /usr/local/etc/ansible/hosts. Это новое поведение для этой версии Ansible! Поэтому, если вы привыкли писать что-то подобное в этом файле hosts:[web]
# legacy servers
webserver-[1:2].company.com
Измените его на: [web]
# legacy servers
webserver-[1:2].company.com
или [web]
webserver-[1:2].company.com # legacy servers