Oleg Y.
Ubuntu 20.04 LTS
onehell@oniguruma ~ $ apt -s install ansible | grep python
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
ieee-data python3-argcomplete python3-distutils python3-dnspython
python3-jinja2 python3-jmespath python3-kerberos python3-lib2to3
python3-libcloud python3-lockfile python3-netaddr python3-ntlm-auth
python3-requests-kerberos python3-requests-ntlm python3-selinux
python3-winrm python3-xmltodict
cowsay sshpass python-jinja2-doc python-lockfile-doc ipython3
python-netaddr-docs
ansible ieee-data python3-argcomplete python3-distutils python3-dnspython
python3-jinja2 python3-jmespath python3-kerberos python3-lib2to3
python3-libcloud python3-lockfile python3-netaddr python3-ntlm-auth
python3-requests-kerberos python3-requests-ntlm python3-selinux
python3-winrm python3-xmltodict
Vadim
о че пора на убунту 20 переходить?
Oleg Y.
почему бы и нет...
Отделение Bereke Bank
Отделение Bereke Bank
В виртуаленв в смысле
Max
3.9.9 ? вы из будущего?
звучит как шутка о том, что питон2 протухает, да не может протухнуть и что его выкидывают, выкидывают. да не могут выкинуть. что даже через N лет ансибл тянет питон2 по зависимостям =D
Sergey
Sergey
Sergey
Sergey
(третий раз повторять не буду, если что)
Max
эээммм... я совсем о другом говорил, но ладно. коль так строго всё
#Rλatan
чем Ansible отличается от Terraform?
Павел
#Rλatan
https://bit.ly/3cvyzZ5
https://lmgtfy.com/?q=%D0%BF%D0%BE%D0%B8%D1%89%D0%B8+%D1%81%D0%B0%D0%BC+%D0%B2+%D0%B8%D0%BD%D1%82%D0%B5%D1%80%D0%BD%D0%B5%D1%82%D0%B5
Lev
Lev
łibfitź.r14.a
Господа, только знакомлюсь с ансиблом, не могу понять host vars.
На данный момент поднимаю несколько вмок вагрантом, провижн через ансибл, хочу в "главном" плейбуке подключать другие в зависимости от хоста, который сейчас провижнится. Хостов немного, поэтому я придумал навесить каждому из них флаг и делать что-то. типа
- include: controller.yml
when: is_controller
По задумке is_controller возьмётся из host vars для этого хоста. Но как правильно определить и обратиться к этой переменной - не понимаю. Подскажите, пожалуйста
Sergey
- hosts: <host1>
tasks:
- include: host1_tasks.yml
- hosts: <host2>
tasks:
- include: host2_tasks.yml
Sergey
не надо переписывать ансибл на ансибле
Sergey
Ты хочешь в роль засунуть работу, которую Ansible и так за тебя спокойно делает «искаропки». Зачем?
Aleksey
łibfitź.r14.a
Туплю, сэр ¯\_(ツ)_/¯
Sergey
Туплю, сэр ¯\_(ツ)_/¯
Ты сказал :-)
Сопоставлять хосты/группы хостов и таски - базовое умение Ansible. Используй его примерно так, как я написал выше - и будет тебе счастье+скорость написания плейбука.
Aleksey
ох круто было бы иметь hash_behaviour = fail
Sergey
Aleksey
если вдруг приходится что то мержить упади
Aleksey
и тестов понаписано и соломки подложено где только можно а всё равно. в каком то месте выскочил replace и всё сломал
Отделение Bereke Bank
Поделитесь опытом - кто как обновляет ОС ансиблом? Интересует центось
С пакетами, специфичными для определенной роли все понятно (нужная версия в variable). А как быть с остальной кипой пакетов? Начиная от ядра, заканчивая всякими util-linux.
Держать километровый список с версиями - имхо такое себе
Aleksey
Отделение Bereke Bank
packer
packer же создаст тебе темплейт ВМ, который ты не натянешь на уже работающий инстанс
Aleksey
выбросить имеющийся инстанс заменить на новый рабочий инстанс
Отделение Bereke Bank
не всегда это возможно)
Vlad
Vitaliy
Всем ночи доброй. Подскажет кто, есть в ансибле лист, вложенный. Типа такого
hosts:
- name: 123
ip:
ipv4: 123.123.123.123
подскажет кто, как в лупе получить ipv4?
есть такая штука
"{{lookup('subelements', hosts, ‘name’, {'skip_missing': True})}}"
но у нее ограничение - глубина максимум 2. Т.е. корень и еще один элемент. Дальше не работает.
не хочется плодить loop_var и include_tasks. Может есть способ вложенный лист распарсить одним лупом?
Vitaliy
Вот почти реальный пример:
hosts:
- name: serv
hards: WD
mother: Intel
ipmi:
- ipv4:
- internal:
- 192.168.1.1
- 192.168.1.2
- 192.168.1.3
- 192.168.1.4
- 192.168.1.5
- external:
- 8.9.9.1
- 8.9.9.2
- 8.9.9.3
так вот. Реально ли в одной таске получить допустим {{hosts.ipmi.ipv4.internal}}
Serg
Lex
Lamobot
Vitaliy
Vitaliy
Deniss
товарищи
Deniss
lineinfile:
path: /var/lib/pgsql/11/data/postgresql.conf
regexp: '#listen_addresses = 'localhost' '
line: listen_address = '*'
Deniss
как сделать что бы 'localhost' ' читал и не ругался на двойные ' '
Deniss
tupanul
Deniss
merci
Dmitry
Dmitry
Dmitry
https://docs.ansible.com/ansible/latest/modules/apt_module.html
Dmitry
Dmitry
В примерах даже есть
Dmitry
Блин, с телефона паста ломает форматирование
Vitaliy
ну и 4 - на тебе почти готовое под центось
- name: upgrade packages
yum:
name: *
state: latest
update_cache: yes
Vitaliy
Vitaliy
Не боишься?
Ну и чего бояться, если допустим сервер новый?
Отделение Bereke Bank
Я видимо не совсем понятно объяснил)
Dmitry
Dmitry
Искать проблемы и виноватых я не собираюсь
Dmitry
Serg
все коллекции, которые выпилены из ansible-base и будут в 2.10 в ACD: https://github.com/ansible-community/ansible-build-data/blob/master/2.10/acd.in
то есть придут вместе с "pip install ansible" по идее
Serg
все что были и в 2.9
Sergey
Справедливости ради - некоторые всё же закомментированы.
Игорь
Всем привет, почитал стати про развертывания VM на ESXI через ansible, во всех статьях почти идет развертывание из templates , а возможно ли развернуть VM из iso ??? т.е написать плейбук чтоб он создавал пустую ВМ , туда запихивал iso и проводил инсталяцию с заданными параметрами.... поделитесь опытом или ссылкой...
Grek 🇺🇦
Можно, но надо чтоб iso умел в unattended install
Игорь
Grek 🇺🇦
Почитайте чат выше, пару дней назад поднималась эта тема
Игорь
Deniss
guys
Deniss
ммм, может есть у кого пример как построен initdb для postgresql
Deniss
command: /usr/pgsql-11/bin/postgresql-11-setup initdb