Grisha
мыш кродеться..
ь чувствует себя не на своем месте)
Denis 災 nobody
это мем
Denis 災 nobody
simplemice.eth
=/
Sun
да без проблем. Я го не знаю пока, так что даже поспорить не могу. (Я и в питон-то так-себе умею, если честно)
Sun
я пока что терраформ+анзиблю танцую
Sheridan
Комрады, а существует ли какой нотифи на плейбук в целом? Нужно чтобы таск выполнялся только если что нибудь стало changed. "что нибудь" - много, в каждый таск notify не понадобавляеш...
Sheridan
Вроде так и будет нотифай when variable.changed.
нету variable есть плейбук. плейбук чтототм меняет. тасков много (да и плейбуков несколько). Хочу добавить таск в конец, который выполнится только если плейбук что нибудь changed
Sheridan
може у него переменная какая предопределенная есть?
Yury
Можешь попробовать объединить все таски в блок и добавить нотифай на блок как вариант))
Timur
ну так то да, но не хочется перелопачивать остальное...
Вы тоже хотите странного. Хендлер может триггериться любым произвольным набором тасок. Кроме вас, никто не может знать, какой именно набор тасков нужно отслеживать на предмет изменений. Соответственно, ничего лучше, чем явная нотификация хендлера во всех тасках, придумать не получится
Vadim
я пока что терраформ+анзиблю танцую
Кстати, не пробовали их скрестить? В терраформе есть ансибловский провайдер, интересно узнать ощущения испытавших это
Sun
Кстати, не пробовали их скрестить? В терраформе есть ансибловский провайдер, интересно узнать ощущения испытавших это
Мне пока кажется, что лишнее это. Их надо кушать раздельно, как первое и десерт. Тф поднимает инфраструктуру, ансибля - развертывает.
Eduard
Подскажите действительно рабочий модуль для управления виртуалками через ансибл. KVM не устраивает из-за отсутсвия стэйтов, opennebula не рабочий. Стоит браться за проксмокс?
simplemice.eth
проксмос это хорошо
Eduard
проксмос это хорошо
Не спорю, а модуль то работает?
Vladimir
Кстати, не пробовали их скрестить? В терраформе есть ансибловский провайдер, интересно узнать ощущения испытавших это
Я наоборот сейчас делаю - гитлабовский скрипт дергает плейбуки анзибла, а там используется модуль для работы с терраформом.
Vladimir
Пайплайн готовлю
Vladimir
И не изврат ли - гитлабом раскатывать?
CI/CD же. Автоматизации хочу.
Vladimir
Для моих задач это как из пушки по воробьям, оверкилл.
Vladimir
Я просто хочу и однозначно. Даже от модного докера и прочих кубернетисов отказался, лишнее это в данном случае.
Nklya
поехали по новой)
Eduard
Что насчёт virt_module, virt_net_module и virt_pool_module?
Больно без готового клауд-инита :( Но спасибо, гляну
Eduard
А что такого делает терраформ, чего не может ansible?
Клауд-инит, и у терраформа рабочий провайдер под квм. Я про вызов чефа сразу после создания тачек) для ансибло не нарыл :(
Nklya
Через нулл ресурс ранить разве что
Vladimir
поехали по новой)
Не поведусь)
Eduard
Плотно на проксмоксе, чем именно управлять хочется?
Ансиблом управлять виртуалками. Из Х железок раскатывать единую сеть + kvm виртуалки, дальше накатывать их по ролям
Volodymyr
Ансиблом управлять виртуалками. Из Х железок раскатывать единую сеть + kvm виртуалки, дальше накатывать их по ролям
Нехер делать https://docs.ansible.com/ansible/latest/modules/proxmox_module.html Но мы правда lxc пользуем, но вполне думаю по той же схеме можно и виртуалки крутить
Asten
Проще свой модуль написать тогда уж
ᴅⁱᵐⁱᴅʳ0ˡ
пипл привет, подскажите новичку, состояние state каким значением может быть
ᴅⁱᵐⁱᴅʳ0ˡ
?
Vadim
самые частые - это present и absent, но в каждом модуле могут быть свои
Tadeusz
В доке модуля ж описывается
⌬ Дмитрий ⌬
Приветствую всех! С Праздниками наступившими и наступающими. У меня возник такой вопрос, прошу совета - как поправить делаю роль - установки openvpn клиента, и необходимо на клиента из шаблона передать ключи (пользователя CA и т.д.) шаблон имеет вид # {{ansible_managed}} client nobind dev tun key-direction 1 remote-cert-tls server remote {{openvpn_client_cfg.serverip}} {{openvpn_client_cfg.port}} {{openvpn_client_cfg.proto}} <key> {{ openvpn_client_cfg.key }} </key> .... так вот значение key передаю из defaults\main.yml: --- # defaults file for openvpn-client openvpn_client_cfg: key: | -----BEGIN PRIVATE KEY----- -----END PRIVATE KEY----- и при запуске плейбука получаю ошибку на этапе создания конфига "msg": "AnsibleUndefinedVariable: 'dict object' has no attribute 'key' так вот собственно вопрос: где я ошибся или как можно создать конфиг по другому чтоб внутри клиентского конфига были ключи CA cert и т.д. в виде содержимого этих файлов, заключенные в соответствующие теги
𝔹𝕠𝕣𝕚𝕤
Приветствую всех! С Праздниками наступившими и наступающими. У меня возник такой вопрос, прошу совета - как поправить делаю роль - установки openvpn клиента, и необходимо на клиента из шаблона передать ключи (пользователя CA и т.д.) шаблон имеет вид # {{ansible_managed}} client nobind dev tun key-direction 1 remote-cert-tls server remote {{openvpn_client_cfg.serverip}} {{openvpn_client_cfg.port}} {{openvpn_client_cfg.proto}} <key> {{ openvpn_client_cfg.key }} </key> .... так вот значение key передаю из defaults\main.yml: --- # defaults file for openvpn-client openvpn_client_cfg: key: | -----BEGIN PRIVATE KEY----- -----END PRIVATE KEY----- и при запуске плейбука получаю ошибку на этапе создания конфига "msg": "AnsibleUndefinedVariable: 'dict object' has no attribute 'key' так вот собственно вопрос: где я ошибся или как можно создать конфиг по другому чтоб внутри клиентского конфига были ключи CA cert и т.д. в виде содержимого этих файлов, заключенные в соответствующие теги
Ансибл заменяет переменные при подгрузке разных файлов. Если у вас в group_vars/host_vars есть переменная openvpn_client_cfg, то она полностью заменит одноименную из defaults/main.yml Тут вариант либо делать отдельные переменные вида openvpn_client_cfg_key, openvpn_client_cfg_proto и т.п. (это вроде как правильным подходом считается) либо включать в конфиге (ansible.cfg) слияние словарей (но это неправильный подход, ведущий к куче геморроя потом)
⌬ Дмитрий ⌬
Ок, теперь немного понятно становится Попутный вопрос: правильно ли я использую добавление содержимого файла как переменную? key: | Содержание
𝔹𝕠𝕣𝕚𝕤
в целом это нормальная практика
𝔹𝕠𝕣𝕚𝕤
Разве что слишком большие файлы не стоит так держать. Лучше в папочке files и путём copy переносить на сервера
𝔹𝕠𝕣𝕚𝕤
Можно, но для этого они должны иметь разные имена
inqfen
В ansible.cfg
inqfen
Точнее в правилах замены словарей выставить merge, тогда он будет их не заменять, а сливать
inqfen
Соответственно тогда словарь не будет заменяться, а будут дописываться ключи
Nklya
Это уже выше упоминалось как плохая практика\
Oleg
Привет. возможноли использование пробелов в именах групп в inventory?
citius
если и возможно, то лучше так не делать. а также не называть группы кириллицей.
citius
потом задолбаешься эти пробелы эскейпить при каждом удобном случае
Oleg
dynamic inventory из заббикса. там есть группы с пробелами в именах. я даже для примера не могу заэскейпить
citius
фигово, чо. и в заббиксе тоже лучше было так не делать.
Nklya
Есть куча скриптов на гитхабе для этого
Oleg
взял https://github.com/burgosz/ansible-zabbix-inventory пилю для своих нужд: https://github.com/blzzua/ansible-zabbix-inventory
Nklya
Как вариант можно попатчить скрипты чтобы пробелы заменялись на _
Timur
Как вариант можно попатчить скрипты чтобы пробелы заменялись на _
Да, так и нужно делать, если такое встречается
Timur
В именах групп для ансибла пробелов быть не должно
Timur
См. доки ансибла
Timur
Avoid spaces, hyphens, and preceding numbers(use floor_19, not 19th_floor) in your group names. Group names are case sensitive.
Denis
Всем привет, кто может скинуть пару примеров как устанавливать чарты helm через ансибл, спасибо
Denis
с примером что в доке у меня не заладилось))
simplemice.eth
тоесть в гугле заблочили всеже ?
simplemice.eth
и на гитхабе все удалили
simplemice.eth
это пичально йа щитаю
Denis
не нашел, если ты более опытный гуглер, порадую меня плиз
simplemice.eth
simplemice.eth
дальше сам
simplemice.eth
попробуй освоить поиск по гитхабу