Size: a a a

2021 March 05

TG

Timur Gadiev in Ansible
Казанский
Она ожидаемо сработает, но тогда теряется всё удобство
А вообще не использовать hostvars не пробовали?
источник

К

Казанский in Ansible
Timur Gadiev
А вообще не использовать hostvars не пробовали?
Пока не представляю, как. Это надо в group_vars выносить, получается.
источник

L

Lamobot in Ansible
Тут чего-то нафлудили правильными практиками.
Давайте вопрос задам.
Вот есть n серваков, с двумя интерфейсами. К примеру у каждого прописана в host_vars переменная lan_ip, в которой лежит ip лан интерфейса.
На них накатывается какой-то сервис, у которого интерфейс на который биндится задается через переменную service__interface.
Нормально ли в group_vars для хостов этого сервиса прописать service__interface: '{{ lan_ip }}' ???
источник

TG

Timur Gadiev in Ansible
Казанский
Пока не представляю, как. Это надо в group_vars выносить, получается.
Как вариант, да. Если очень нужна логика работы с хостами, лучше выносите это на уровень темплейта или в плей. Только там доступны все скопы переменных с любого уровня.
источник

YZ

Yerzhan Zhiyentayev in Ansible
Lamobot
Тут чего-то нафлудили правильными практиками.
Давайте вопрос задам.
Вот есть n серваков, с двумя интерфейсами. К примеру у каждого прописана в host_vars переменная lan_ip, в которой лежит ip лан интерфейса.
На них накатывается какой-то сервис, у которого интерфейс на который биндится задается через переменную service__interface.
Нормально ли в group_vars для хостов этого сервиса прописать service__interface: '{{ lan_ip }}' ???
Да
источник

TG

Timur Gadiev in Ansible
Попытка вызова одного уровня переменных из другого, минуя плей, - заведомый антипаттерн.
источник

TG

Timur Gadiev in Ansible
Lamobot
Тут чего-то нафлудили правильными практиками.
Давайте вопрос задам.
Вот есть n серваков, с двумя интерфейсами. К примеру у каждого прописана в host_vars переменная lan_ip, в которой лежит ip лан интерфейса.
На них накатывается какой-то сервис, у которого интерфейс на который биндится задается через переменную service__interface.
Нормально ли в group_vars для хостов этого сервиса прописать service__interface: '{{ lan_ip }}' ???
service__interface задается только в одном месте?
источник

К

Казанский in Ansible
Timur Gadiev
Попытка вызова одного уровня переменных из другого, минуя плей, - заведомый антипаттерн.
И всё-таки не понятно, почему нет раскрытия переменной хотя бы в ошибку
источник

TG

Timur Gadiev in Ansible
Дмитрий Айткулов
Ребят подскажите плиз -  запускаю playbook (ansible=2.7.18  python=2.7.5.)
на kvm (ubuntu 20 ansible=2.7.18 python=3.8.5)
задача запустить vm
virt:
   name: "vm"
   state: "running"
 
в ответ получаю "msg": "The libvirt module is not importable. Check the requirements."
поставил пакет python3-libvirt/focal,now 6.1.0-1 amd64 [installed]
но проблема не решилась. Где затуп не пойму?! Заранее спасибо
Как вы там, в 2018?
источник

TG

Timur Gadiev in Ansible
Казанский
И всё-таки не понятно, почему нет раскрытия переменной хотя бы в ошибку
А какая должна быть ошибка?
источник

TG

Timur Gadiev in Ansible
Вы задали переменную на уровне группы. Она в виде текста пошла в hostvars
источник

TG

Timur Gadiev in Ansible
Потому что когда отрабатывает группа, hostvars еще нет обычно.
источник

TG

Timur Gadiev in Ansible
groups don’t really survive outside of inventory and host matching
источник

ДА

Дмитрий Айткулов... in Ansible
Timur Gadiev
Как вы там, в 2018?
страдаем
источник

TG

Timur Gadiev in Ansible
Ничего, через годик еще не так страдать начнете 😁
источник

ДА

Дмитрий Айткулов... in Ansible
Timur Gadiev
Ничего, через годик еще не так страдать начнете 😁
а по делу никаких предложений не будет?
источник

К

Казанский in Ansible
Timur Gadiev
А какая должна быть ошибка?
Undefined переменной в словаре hostvars
источник

TG

Timur Gadiev in Ansible
Дмитрий Айткулов
а по делу никаких предложений не будет?
По делу - используйте актуальные версии софта и питоновского окружения.
источник

YZ

Yerzhan Zhiyentayev in Ansible
Дмитрий Айткулов
Ребят подскажите плиз -  запускаю playbook (ansible=2.7.18  python=2.7.5.)
на kvm (ubuntu 20 ansible=2.7.18 python=3.8.5)
задача запустить vm
virt:
   name: "vm"
   state: "running"
 
в ответ получаю "msg": "The libvirt module is not importable. Check the requirements."
поставил пакет python3-libvirt/focal,now 6.1.0-1 amd64 [installed]
но проблема не решилась. Где затуп не пойму?! Заранее спасибо
а ты его куда поставил?
источник

К

Казанский in Ansible
Тут конечно это, может, похоже на траекторию пули, которая рикошетит из угла в угол, и не знаешь, откуда она вылетит
источник